windows-pr 1.1.3 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. data/CHANGES +15 -0
  2. data/MANIFEST +65 -65
  3. data/README +149 -149
  4. data/Rakefile +37 -52
  5. data/doc/conversion_guide.txt +37 -37
  6. data/lib/windows/clipboard.rb +2 -0
  7. data/lib/windows/com.rb +2 -0
  8. data/lib/windows/com/accessibility.rb +12 -10
  9. data/lib/windows/com/automation.rb +149 -147
  10. data/lib/windows/com/variant.rb +24 -22
  11. data/lib/windows/console.rb +114 -112
  12. data/lib/windows/debug.rb +35 -33
  13. data/lib/windows/device_io.rb +248 -246
  14. data/lib/windows/directory.rb +2 -0
  15. data/lib/windows/error.rb +2 -0
  16. data/lib/windows/eventlog.rb +2 -0
  17. data/lib/windows/file.rb +264 -262
  18. data/lib/windows/file_mapping.rb +25 -23
  19. data/lib/windows/filesystem.rb +2 -0
  20. data/lib/windows/gdi/bitmap.rb +65 -63
  21. data/lib/windows/gdi/device_context.rb +46 -44
  22. data/lib/windows/gdi/metafile.rb +40 -38
  23. data/lib/windows/gdi/painting_drawing.rb +115 -113
  24. data/lib/windows/handle.rb +2 -0
  25. data/lib/windows/library.rb +2 -0
  26. data/lib/windows/limits.rb +34 -31
  27. data/lib/windows/mailslot.rb +2 -0
  28. data/lib/windows/memory.rb +2 -0
  29. data/lib/windows/msvcrt/buffer.rb +75 -73
  30. data/lib/windows/msvcrt/directory.rb +31 -29
  31. data/lib/windows/msvcrt/file.rb +47 -45
  32. data/lib/windows/msvcrt/io.rb +62 -60
  33. data/lib/windows/msvcrt/string.rb +2 -0
  34. data/lib/windows/msvcrt/time.rb +169 -167
  35. data/lib/windows/national.rb +580 -578
  36. data/lib/windows/network/management.rb +525 -523
  37. data/lib/windows/network/snmp.rb +92 -90
  38. data/lib/windows/network/winsock.rb +128 -126
  39. data/lib/windows/nio.rb +2 -0
  40. data/lib/windows/ntfs/winternl.rb +96 -82
  41. data/lib/windows/path.rb +143 -141
  42. data/lib/windows/pipe.rb +42 -40
  43. data/lib/windows/process.rb +2 -0
  44. data/lib/windows/registry.rb +171 -126
  45. data/lib/windows/security.rb +479 -477
  46. data/lib/windows/security/authentication.rb +32 -30
  47. data/lib/windows/service.rb +142 -140
  48. data/lib/windows/shell.rb +171 -169
  49. data/lib/windows/socket.rb +86 -0
  50. data/lib/windows/sound.rb +39 -37
  51. data/lib/windows/synchronize.rb +133 -131
  52. data/lib/windows/system_info.rb +4 -2
  53. data/lib/windows/thread.rb +2 -0
  54. data/lib/windows/time.rb +48 -46
  55. data/lib/windows/tool_helper.rb +36 -34
  56. data/lib/windows/unicode.rb +2 -0
  57. data/lib/windows/volume.rb +61 -59
  58. data/lib/windows/window.rb +81 -79
  59. data/lib/windows/window/classes.rb +59 -57
  60. data/lib/windows/window/dialog.rb +91 -89
  61. data/lib/windows/window/menu.rb +102 -100
  62. data/lib/windows/window/message.rb +297 -295
  63. data/lib/windows/window/properties.rb +20 -18
  64. data/lib/windows/window/timer.rb +19 -17
  65. data/lib/windows/wsa.rb +102 -0
  66. data/test/tc_clipboard.rb +41 -41
  67. data/test/tc_com.rb +32 -32
  68. data/test/tc_com_automation.rb +15 -15
  69. data/test/tc_console.rb +108 -108
  70. data/test/tc_debug.rb +48 -48
  71. data/test/tc_device_io.rb +29 -29
  72. data/test/tc_directory.rb +25 -25
  73. data/test/tc_error.rb +38 -50
  74. data/test/tc_eventlog.rb +58 -58
  75. data/test/tc_file.rb +67 -67
  76. data/test/tc_file_mapping.rb +38 -38
  77. data/test/tc_filesystem.rb +27 -27
  78. data/test/tc_gdi_bitmap.rb +25 -25
  79. data/test/tc_gdi_metafile.rb +23 -23
  80. data/test/tc_handle.rb +36 -36
  81. data/test/tc_library.rb +37 -37
  82. data/test/tc_limits.rb +34 -34
  83. data/test/tc_mailslot.rb +22 -22
  84. data/test/tc_memory.rb +44 -44
  85. data/test/tc_msvcrt_buffer.rb +59 -68
  86. data/test/tc_msvcrt_directory.rb +96 -98
  87. data/test/tc_msvcrt_file.rb +80 -80
  88. data/test/tc_msvcrt_io.rb +48 -48
  89. data/test/tc_msvcrt_string.rb +94 -93
  90. data/test/tc_msvcrt_time.rb +19 -29
  91. data/test/tc_national.rb +38 -38
  92. data/test/tc_network_management.rb +32 -32
  93. data/test/tc_network_snmp.rb +31 -31
  94. data/test/tc_network_winsock.rb +34 -34
  95. data/test/tc_nio.rb +32 -32
  96. data/test/tc_ntfs_winternl.rb +33 -18
  97. data/test/tc_path.rb +90 -90
  98. data/test/tc_pipe.rb +53 -53
  99. data/test/tc_process.rb +24 -24
  100. data/test/tc_registry.rb +29 -29
  101. data/test/tc_security.rb +104 -104
  102. data/test/tc_security_authentication.rb +34 -34
  103. data/test/tc_service.rb +57 -57
  104. data/test/tc_shell.rb +34 -34
  105. data/test/tc_socket.rb +20 -0
  106. data/test/tc_sound.rb +37 -37
  107. data/test/tc_synchronize.rb +75 -75
  108. data/test/tc_system_info.rb +33 -43
  109. data/test/tc_thread.rb +29 -29
  110. data/test/tc_time.rb +32 -32
  111. data/test/tc_tool_helper.rb +29 -29
  112. data/test/tc_unicode.rb +62 -62
  113. data/test/tc_volume.rb +47 -47
  114. data/test/tc_window.rb +45 -45
  115. data/test/tc_window_classes.rb +33 -33
  116. data/test/tc_window_dialog.rb +33 -33
  117. data/test/tc_window_menu.rb +29 -29
  118. data/test/tc_window_message.rb +33 -33
  119. data/test/tc_window_properties.rb +29 -29
  120. data/test/tc_window_timer.rb +29 -29
  121. data/test/tc_wsa.rb +19 -0
  122. data/windows-pr.gemspec +1 -1
  123. metadata +13 -7
data/test/tc_mailslot.rb CHANGED
@@ -1,22 +1,22 @@
1
- #####################################################################
2
- # tc_mailslot.rb
3
- #
4
- # Test case for the Windows::Mailslot module.
5
- #####################################################################
6
- require 'windows/mailslot'
7
- require 'test/unit'
8
-
9
- class TC_Windows_Mailslot < Test::Unit::TestCase
10
- include Windows::Mailslot
11
-
12
- def test_constants
13
- assert_equal(0xFFFFFFFF, MAILSLOT_WAIT_FOREVER)
14
- assert_equal(0xFFFFFFFF, MAILSLOT_NO_MESSAGE)
15
- end
16
-
17
- def test_methods
18
- assert_respond_to(self, :CreateMailslot)
19
- assert_respond_to(self, :GetMailslotInfo)
20
- assert_respond_to(self, :SetMailslotInfo)
21
- end
22
- end
1
+ #####################################################################
2
+ # tc_mailslot.rb
3
+ #
4
+ # Test case for the Windows::Mailslot module.
5
+ #####################################################################
6
+ require 'windows/mailslot'
7
+ require 'test/unit'
8
+
9
+ class TC_Windows_Mailslot < Test::Unit::TestCase
10
+ include Windows::Mailslot
11
+
12
+ def test_constants
13
+ assert_equal(0xFFFFFFFF, MAILSLOT_WAIT_FOREVER)
14
+ assert_equal(0xFFFFFFFF, MAILSLOT_NO_MESSAGE)
15
+ end
16
+
17
+ def test_methods
18
+ assert_respond_to(self, :CreateMailslot)
19
+ assert_respond_to(self, :GetMailslotInfo)
20
+ assert_respond_to(self, :SetMailslotInfo)
21
+ end
22
+ end
data/test/tc_memory.rb CHANGED
@@ -1,44 +1,44 @@
1
- #####################################################################
2
- # tc_memory.rb
3
- #
4
- # Test case for the Windows::Memory module.
5
- #####################################################################
6
- require 'windows/memory'
7
- require 'test/unit'
8
-
9
- class MemoryFoo
10
- include Windows::Memory
11
- end
12
-
13
- class TC_Windows_Memory < Test::Unit::TestCase
14
- def setup
15
- @foo = MemoryFoo.new
16
- @path = "C:\\"
17
- end
18
-
19
- def test_numeric_constants
20
- assert_not_nil(MemoryFoo::GHND)
21
- assert_not_nil(MemoryFoo::GMEM_FIXED)
22
- assert_not_nil(MemoryFoo::GMEM_MOVABLE)
23
- assert_not_nil(MemoryFoo::GMEM_ZEROINIT)
24
- assert_not_nil(MemoryFoo::GPTR)
25
- end
26
-
27
- def test_method_constants
28
- assert_not_nil(MemoryFoo::GlobalAlloc)
29
- assert_not_nil(MemoryFoo::GlobalFlags)
30
- assert_not_nil(MemoryFoo::GlobalFree)
31
- assert_not_nil(MemoryFoo::GlobalHandle)
32
- assert_not_nil(MemoryFoo::GlobalLock)
33
- assert_not_nil(MemoryFoo::GlobalMemoryStatus)
34
- assert_not_nil(MemoryFoo::GlobalMemoryStatusEx)
35
- assert_not_nil(MemoryFoo::GlobalReAlloc)
36
- assert_not_nil(MemoryFoo::GlobalSize)
37
- assert_not_nil(MemoryFoo::GlobalUnlock)
38
- end
39
-
40
- def teardown
41
- @foo = nil
42
- @path = nil
43
- end
44
- end
1
+ #####################################################################
2
+ # tc_memory.rb
3
+ #
4
+ # Test case for the Windows::Memory module.
5
+ #####################################################################
6
+ require 'windows/memory'
7
+ require 'test/unit'
8
+
9
+ class MemoryFoo
10
+ include Windows::Memory
11
+ end
12
+
13
+ class TC_Windows_Memory < Test::Unit::TestCase
14
+ def setup
15
+ @foo = MemoryFoo.new
16
+ @path = "C:\\"
17
+ end
18
+
19
+ def test_numeric_constants
20
+ assert_not_nil(MemoryFoo::GHND)
21
+ assert_not_nil(MemoryFoo::GMEM_FIXED)
22
+ assert_not_nil(MemoryFoo::GMEM_MOVABLE)
23
+ assert_not_nil(MemoryFoo::GMEM_ZEROINIT)
24
+ assert_not_nil(MemoryFoo::GPTR)
25
+ end
26
+
27
+ def test_method_constants
28
+ assert_not_nil(MemoryFoo::GlobalAlloc)
29
+ assert_not_nil(MemoryFoo::GlobalFlags)
30
+ assert_not_nil(MemoryFoo::GlobalFree)
31
+ assert_not_nil(MemoryFoo::GlobalHandle)
32
+ assert_not_nil(MemoryFoo::GlobalLock)
33
+ assert_not_nil(MemoryFoo::GlobalMemoryStatus)
34
+ assert_not_nil(MemoryFoo::GlobalMemoryStatusEx)
35
+ assert_not_nil(MemoryFoo::GlobalReAlloc)
36
+ assert_not_nil(MemoryFoo::GlobalSize)
37
+ assert_not_nil(MemoryFoo::GlobalUnlock)
38
+ end
39
+
40
+ def teardown
41
+ @foo = nil
42
+ @path = nil
43
+ end
44
+ end
@@ -1,68 +1,59 @@
1
- #####################################################################
2
- # tc_msvcrt_buffer.rb
3
- #
4
- # Test case for the Windows::MSVCRT::Buffer module.
5
- #####################################################################
6
- require "windows/msvcrt/buffer"
7
- require "test/unit"
8
-
9
- class BufferFoo
10
- include Windows::MSVCRT::Buffer
11
- end
12
-
13
- class TC_Windows_MSVCRT_Buffer < Test::Unit::TestCase
14
- def setup
15
- @foo = BufferFoo.new
16
- end
17
-
18
- def test_method_constants
19
- assert_not_nil(BufferFoo::Memcpy)
20
- assert_not_nil(BufferFoo::MemcpyPLL)
21
- assert_not_nil(BufferFoo::MemcpyLPL)
22
- assert_not_nil(BufferFoo::MemcpyLLL)
23
- assert_not_nil(BufferFoo::MemcpyPPL)
24
- assert_not_nil(BufferFoo::Memccpy)
25
- assert_not_nil(BufferFoo::Memchr)
26
- assert_not_nil(BufferFoo::Memcmp)
27
- assert_not_nil(BufferFoo::Memicmp)
28
- assert_not_nil(BufferFoo::Memmove)
29
- assert_not_nil(BufferFoo::Memset)
30
- assert_not_nil(BufferFoo::Swab)
31
- end
32
-
33
- def test_memcpy
34
- assert_respond_to(@foo, :memcpy)
35
- end
36
-
37
- def test_memccpy
38
- assert_respond_to(@foo, :memccpy)
39
- end
40
-
41
- def test_memchr
42
- assert_respond_to(@foo, :memchr)
43
- end
44
-
45
- def test_memcmp
46
- assert_respond_to(@foo, :memcmp)
47
- end
48
-
49
- def test_memicmp
50
- assert_respond_to(@foo, :memicmp)
51
- end
52
-
53
- def test_memmove
54
- assert_respond_to(@foo, :memmove)
55
- end
56
-
57
- def test_memset
58
- assert_respond_to(@foo, :memset)
59
- end
60
-
61
- def test_swab
62
- assert_respond_to(@foo, :swab)
63
- end
64
-
65
- def teardown
66
- @foo = nil
67
- end
68
- end
1
+ #####################################################################
2
+ # tc_msvcrt_buffer.rb
3
+ #
4
+ # Test case for the Windows::MSVCRT::Buffer module.
5
+ #####################################################################
6
+ require 'rubygems'
7
+ require 'windows/msvcrt/buffer'
8
+ require 'test/unit'
9
+
10
+ class TC_Windows_MSVCRT_Buffer < Test::Unit::TestCase
11
+ include Windows::MSVCRT::Buffer
12
+
13
+ def test_method_constants
14
+ assert_not_nil(Memcpy)
15
+ assert_not_nil(MemcpyPLL)
16
+ assert_not_nil(MemcpyLPL)
17
+ assert_not_nil(MemcpyLLL)
18
+ assert_not_nil(MemcpyPPL)
19
+ assert_not_nil(Memccpy)
20
+ assert_not_nil(Memchr)
21
+ assert_not_nil(Memcmp)
22
+ assert_not_nil(Memicmp)
23
+ assert_not_nil(Memmove)
24
+ assert_not_nil(Memset)
25
+ assert_not_nil(Swab)
26
+ end
27
+
28
+ def test_memcpy
29
+ assert(private_methods.include?("memcpy"))
30
+ end
31
+
32
+ def test_memccpy
33
+ assert(private_methods.include?("memccpy"))
34
+ end
35
+
36
+ def test_memchr
37
+ assert(private_methods.include?("memchr"))
38
+ end
39
+
40
+ def test_memcmp
41
+ assert(private_methods.include?("memcmp"))
42
+ end
43
+
44
+ def test_memicmp
45
+ assert(private_methods.include?("memicmp"))
46
+ end
47
+
48
+ def test_memmove
49
+ assert(private_methods.include?("memmove"))
50
+ end
51
+
52
+ def test_memset
53
+ assert(private_methods.include?("memset"))
54
+ end
55
+
56
+ def test_swab
57
+ assert(private_methods.include?("swab"))
58
+ end
59
+ end
@@ -1,98 +1,96 @@
1
- #####################################################################
2
- # tc_msvcrt_directory.rb
3
- #
4
- # Test case for the Windows::MSVCRT::File module.
5
- #####################################################################
6
- require 'windows/msvcrt/directory'
7
- require 'fileutils'
8
- require 'test/unit'
9
-
10
- class TC_Windows_MSVCRT_Directory < Test::Unit::TestCase
11
- include Windows::MSVCRT::Directory
12
-
13
- def setup
14
- @pwd = Dir.pwd
15
- @dir = 'delete_me'
16
- @buf = 0.chr * 260
17
- end
18
-
19
- def test_method_constants
20
- assert_not_nil(Chdir)
21
- assert_not_nil(Wchdir)
22
- assert_not_nil(Chdrive)
23
- assert_not_nil(Getcwd)
24
- assert_not_nil(Wgetcwd)
25
- assert_not_nil(Getdcwd)
26
- assert_not_nil(Getdiskfree)
27
- assert_not_nil(Getdrive)
28
- assert_not_nil(Getdrives)
29
- assert_not_nil(Mkdir)
30
- assert_not_nil(Wmkdir)
31
- assert_not_nil(Rmdir)
32
- assert_not_nil(Wrmdir)
33
- assert_not_nil(Searchenv)
34
- assert_not_nil(Wsearchenv)
35
- end
36
-
37
- def test_chdir
38
- assert_respond_to(self, :chdir)
39
- assert_nothing_raised{ chdir('..') }
40
- assert_equal(File.dirname(@pwd), Dir.pwd)
41
- end
42
-
43
- def test_wchdir
44
- assert_respond_to(self, :wchdir)
45
- assert_nothing_raised{ wchdir("C:\\") }
46
- end
47
-
48
- def test_chdrive
49
- assert_respond_to(self, :chdrive)
50
- end
51
-
52
- def test_getcwd
53
- assert_respond_to(self, :getcwd)
54
- end
55
-
56
- def test_wgetcwd
57
- assert_respond_to(self, :wgetcwd)
58
- end
59
-
60
- def test_getdcwd
61
- assert_respond_to(self, :getdcwd)
62
- end
63
-
64
- def test_wgetdcwd
65
- assert_respond_to(self, :wgetdcwd)
66
- end
67
-
68
- def test_mkdir
69
- assert_respond_to(self, :mkdir)
70
- assert_nothing_raised{ mkdir(@dir) }
71
- assert_equal(true, File.exists?(@dir))
72
- end
73
-
74
- def test_rmdir
75
- Dir.mkdir(@dir) unless File.exists?(@dir)
76
- assert_respond_to(self, :rmdir)
77
- assert_nothing_raised{ rmdir(@dir) }
78
- assert_equal(false, File.exists?(@dir))
79
- end
80
-
81
- def test_searchenv
82
- possible = [
83
- "c:\\winnt\\system32\\notepad.exe",
84
- "c:\\windows\\system32\\notepad.exe",
85
- "c:\\windows\\notepad.exe"
86
- ]
87
- assert_respond_to(self, :searchenv)
88
- assert_nothing_raised{ searchenv("notepad.exe", "PATH", @buf) }
89
- assert_equal(true, possible.include?(@buf.strip.downcase))
90
- end
91
-
92
- def teardown
93
- FileUtils.rm_f(@dir) if File.exists?(@dir)
94
- @pwd = nil
95
- @dir = nil
96
- @buf = 0
97
- end
98
- end
1
+ #####################################################################
2
+ # tc_msvcrt_directory.rb
3
+ #
4
+ # Test case for the Windows::MSVCRT::File module.
5
+ #####################################################################
6
+ require 'windows/msvcrt/directory'
7
+ require 'fileutils'
8
+ require 'test/unit'
9
+
10
+ class TC_Windows_MSVCRT_Directory < Test::Unit::TestCase
11
+ include Windows::MSVCRT::Directory
12
+
13
+ def setup
14
+ @pwd = Dir.pwd
15
+ @dir = 'delete_me'
16
+ @buf = 0.chr * 260
17
+ end
18
+
19
+ def test_method_constants
20
+ assert_not_nil(Chdir)
21
+ assert_not_nil(Wchdir)
22
+ assert_not_nil(Chdrive)
23
+ assert_not_nil(Getcwd)
24
+ assert_not_nil(Wgetcwd)
25
+ assert_not_nil(Getdcwd)
26
+ assert_not_nil(Getdiskfree)
27
+ assert_not_nil(Getdrive)
28
+ assert_not_nil(Getdrives)
29
+ assert_not_nil(Mkdir)
30
+ assert_not_nil(Wmkdir)
31
+ assert_not_nil(Rmdir)
32
+ assert_not_nil(Wrmdir)
33
+ assert_not_nil(Searchenv)
34
+ assert_not_nil(Wsearchenv)
35
+ end
36
+
37
+ def test_chdir
38
+ assert_nothing_raised{ chdir('..') }
39
+ assert_equal(File.dirname(@pwd), Dir.pwd)
40
+ end
41
+
42
+ def test_wchdir
43
+ assert_nothing_raised{ wchdir("C:\\") }
44
+ end
45
+
46
+ def test_chdrive
47
+ assert(self.respond_to?(:chdrive, true))
48
+ end
49
+
50
+ def test_getcwd
51
+ assert(self.respond_to?(:getcwd, true))
52
+ end
53
+
54
+ def test_wgetcwd
55
+ assert(self.respond_to?(:wgetcwd, true))
56
+ end
57
+
58
+ def test_getdcwd
59
+ assert(self.respond_to?(:getdcwd, true))
60
+ end
61
+
62
+ def test_wgetdcwd
63
+ assert(self.respond_to?(:wgetdcwd, true))
64
+ end
65
+
66
+ def test_mkdir
67
+ assert(self.respond_to?(:mkdir, true))
68
+ assert_nothing_raised{ mkdir(@dir) }
69
+ assert_equal(true, File.exists?(@dir))
70
+ end
71
+
72
+ def test_rmdir
73
+ Dir.mkdir(@dir) unless File.exists?(@dir)
74
+ assert(self.respond_to?(:rmdir, true))
75
+ assert_nothing_raised{ rmdir(@dir) }
76
+ assert_equal(false, File.exists?(@dir))
77
+ end
78
+
79
+ def test_searchenv
80
+ possible = [
81
+ "c:\\winnt\\system32\\notepad.exe",
82
+ "c:\\windows\\system32\\notepad.exe",
83
+ "c:\\windows\\notepad.exe"
84
+ ]
85
+ assert(self.respond_to?(:searchenv, true))
86
+ assert_nothing_raised{ searchenv("notepad.exe", "PATH", @buf) }
87
+ assert_equal(true, possible.include?(@buf.strip.downcase))
88
+ end
89
+
90
+ def teardown
91
+ FileUtils.rm_f(@dir) if File.exists?(@dir)
92
+ @pwd = nil
93
+ @dir = nil
94
+ @buf = 0
95
+ end
96
+ end