summaryrefslogtreecommitdiff
path: root/spec/ruby/library/win32ole/win32ole/locale_spec.rb
blob: 78ede4375a2b94514c03098b8ab726e79fd9c133 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
require_relative "../../../spec_helper"
platform_is :windows do
  require_relative '../fixtures/classes'

  describe "WIN32OLE.locale" do
    it "gets locale" do
      WIN32OLE.locale.should == WIN32OLE::LOCALE_SYSTEM_DEFAULT
    end
  end

  describe "WIN32OLE.locale=" do
    it "sets locale to Japanese, if available" do
      begin
        begin
          WIN32OLE.locale = 1041
        rescue WIN32OLERuntimeError
          STDERR.puts("\n#{__FILE__}:#{__LINE__}:#{self.class.name}.test_s_locale_set is skipped(Japanese locale is not installed)")
          return
        end

        WIN32OLE.locale.should == 1041
        WIN32OLE.locale = WIN32OLE::LOCALE_SYSTEM_DEFAULT
        -> { WIN32OLE.locale = 111 }.should raise_error WIN32OLERuntimeError
        WIN32OLE.locale.should == WIN32OLE::LOCALE_SYSTEM_DEFAULT
      ensure
        WIN32OLE.locale.should == WIN32OLE::LOCALE_SYSTEM_DEFAULT
      end
    end
  end
end