* test/win32ole/test_win32ole.rb (test_s_codepage_changed,
test_s_locale_set, test_s_locale_change): skip test if Japanese locale is not installed. [ruby-core:23806] * test/win32ole/test_win32ole_variant.rb (test_conversion_str2cy): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
1c75d58165
commit
6d7ddc3b29
@ -1,3 +1,12 @@
|
|||||||
|
Thu Jul 16 20:58:18 2009 Masaki Suketa <masaki.suketa@nifty.ne.jp>
|
||||||
|
|
||||||
|
* test/win32ole/test_win32ole.rb (test_s_codepage_changed,
|
||||||
|
test_s_locale_set, test_s_locale_change): skip test if Japanese
|
||||||
|
locale is not installed. [ruby-core:23806]
|
||||||
|
|
||||||
|
* test/win32ole/test_win32ole_variant.rb (test_conversion_str2cy):
|
||||||
|
dito.
|
||||||
|
|
||||||
Thu Jul 16 19:02:28 2009 NAKAMURA Usaku <usa@ruby-lang.org>
|
Thu Jul 16 19:02:28 2009 NAKAMURA Usaku <usa@ruby-lang.org>
|
||||||
|
|
||||||
* ext/socket/lib/socket.rb (Socket.tcp_server_sockets_port0): servers
|
* ext/socket/lib/socket.rb (Socket.tcp_server_sockets_port0): servers
|
||||||
|
@ -344,8 +344,11 @@ if defined?(WIN32OLE)
|
|||||||
|
|
||||||
WIN32OLE.codepage = cp
|
WIN32OLE.codepage = cp
|
||||||
file = fso.opentextfile(fname, 2, true)
|
file = fso.opentextfile(fname, 2, true)
|
||||||
|
begin
|
||||||
file.write [0x3042].pack("U*").force_encoding("UTF-8")
|
file.write [0x3042].pack("U*").force_encoding("UTF-8")
|
||||||
|
ensure
|
||||||
file.close
|
file.close
|
||||||
|
end
|
||||||
str = ""
|
str = ""
|
||||||
open(fname, "r:ascii-8bit") {|ifs|
|
open(fname, "r:ascii-8bit") {|ifs|
|
||||||
str = ifs.read
|
str = ifs.read
|
||||||
@ -360,8 +363,11 @@ if defined?(WIN32OLE)
|
|||||||
if (WIN32OLE.codepage == 20932)
|
if (WIN32OLE.codepage == 20932)
|
||||||
WIN32OLE.codepage = cp
|
WIN32OLE.codepage = cp
|
||||||
file = fso.opentextfile(fname, 2, true)
|
file = fso.opentextfile(fname, 2, true)
|
||||||
|
begin
|
||||||
file.write [164, 162].pack("c*").force_encoding("EUC-JP")
|
file.write [164, 162].pack("c*").force_encoding("EUC-JP")
|
||||||
|
ensure
|
||||||
file.close
|
file.close
|
||||||
|
end
|
||||||
open(fname, "r:ascii-8bit") {|ifs|
|
open(fname, "r:ascii-8bit") {|ifs|
|
||||||
str = ifs.read
|
str = ifs.read
|
||||||
}
|
}
|
||||||
@ -397,8 +403,13 @@ if defined?(WIN32OLE)
|
|||||||
end
|
end
|
||||||
|
|
||||||
def test_s_locale_set
|
def test_s_locale_set
|
||||||
|
begin
|
||||||
begin
|
begin
|
||||||
WIN32OLE.locale = 1041
|
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
|
||||||
assert_equal(1041, WIN32OLE.locale)
|
assert_equal(1041, WIN32OLE.locale)
|
||||||
WIN32OLE.locale = WIN32OLE::LOCALE_SYSTEM_DEFAULT
|
WIN32OLE.locale = WIN32OLE::LOCALE_SYSTEM_DEFAULT
|
||||||
assert_raise(WIN32OLERuntimeError) {
|
assert_raise(WIN32OLERuntimeError) {
|
||||||
@ -411,17 +422,31 @@ if defined?(WIN32OLE)
|
|||||||
end
|
end
|
||||||
|
|
||||||
def test_s_locale_change
|
def test_s_locale_change
|
||||||
|
begin
|
||||||
begin
|
begin
|
||||||
WIN32OLE.locale = 0x0411
|
WIN32OLE.locale = 0x0411
|
||||||
|
rescue WIN32OLERuntimeError
|
||||||
|
end
|
||||||
|
if WIN32OLE.locale == 0x0411
|
||||||
obj = WIN32OLE_VARIANT.new("\\100,000", WIN32OLE::VARIANT::VT_CY)
|
obj = WIN32OLE_VARIANT.new("\\100,000", WIN32OLE::VARIANT::VT_CY)
|
||||||
assert_equal("100000", obj.value)
|
assert_equal("100000", obj.value)
|
||||||
assert_raise(WIN32OLERuntimeError) {
|
assert_raise(WIN32OLERuntimeError) {
|
||||||
obj = WIN32OLE_VARIANT.new("$100.000", WIN32OLE::VARIANT::VT_CY)
|
obj = WIN32OLE_VARIANT.new("$100.000", WIN32OLE::VARIANT::VT_CY)
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
STDERR.puts("\n#{__FILE__}:#{__LINE__}:#{self.class.name}.test_s_locale_change is skipped(Japanese locale is not installed)")
|
||||||
|
end
|
||||||
|
|
||||||
|
begin
|
||||||
WIN32OLE.locale = 1033
|
WIN32OLE.locale = 1033
|
||||||
|
rescue WIN32OLERuntimeError
|
||||||
|
end
|
||||||
|
if WIN32OLE.locale == 1033
|
||||||
obj = WIN32OLE_VARIANT.new("$100,000", WIN32OLE::VARIANT::VT_CY)
|
obj = WIN32OLE_VARIANT.new("$100,000", WIN32OLE::VARIANT::VT_CY)
|
||||||
assert_equal("100000", obj.value)
|
assert_equal("100000", obj.value)
|
||||||
|
else
|
||||||
|
STDERR.puts("\n#{__FILE__}:#{__LINE__}:#{self.class.name}.test_s_locale_change is skipped(US English locale is not installed)")
|
||||||
|
end
|
||||||
ensure
|
ensure
|
||||||
WIN32OLE.locale = WIN32OLE::LOCALE_SYSTEM_DEFAULT
|
WIN32OLE.locale = WIN32OLE::LOCALE_SYSTEM_DEFAULT
|
||||||
end
|
end
|
||||||
|
@ -383,10 +383,16 @@ if defined?(WIN32OLE_VARIANT)
|
|||||||
end
|
end
|
||||||
|
|
||||||
def test_conversion_str2cy
|
def test_conversion_str2cy
|
||||||
|
begin
|
||||||
begin
|
begin
|
||||||
WIN32OLE.locale = 0x0411 # set locale Japanese
|
WIN32OLE.locale = 0x0411 # set locale Japanese
|
||||||
|
rescue WIN32OLERuntimeError
|
||||||
|
STDERR.puts("\n#{__FILE__}:#{__LINE__}:#{self.class.name}.test_conversion_str2cy is skipped(Japanese locale is not installed)")
|
||||||
|
end
|
||||||
|
if WIN32OLE.locale == 0x0411
|
||||||
obj = WIN32OLE_VARIANT.new("\\10,000", WIN32OLE::VARIANT::VT_CY)
|
obj = WIN32OLE_VARIANT.new("\\10,000", WIN32OLE::VARIANT::VT_CY)
|
||||||
assert_equal("10000", obj.value)
|
assert_equal("10000", obj.value)
|
||||||
|
end
|
||||||
ensure
|
ensure
|
||||||
WIN32OLE.locale = WIN32OLE::LOCALE_SYSTEM_DEFAULT
|
WIN32OLE.locale = WIN32OLE::LOCALE_SYSTEM_DEFAULT
|
||||||
end
|
end
|
||||||
|
Loading…
x
Reference in New Issue
Block a user