win32ole-pp 0.0.1

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.
data/test/helper.rb ADDED
@@ -0,0 +1,16 @@
1
+ require 'pp'
2
+ require 'test/unit'
3
+ require File.dirname(__FILE__) + '/../lib/win32ole_pp'
4
+
5
+ module WIN32OLE_PPTestHelper
6
+ def re(str)
7
+ str = str.gsub(/0x[[:xdigit:]]+/, "0x[[:xdigit:]]+")
8
+ /\A#{str}\z/
9
+ end
10
+
11
+ def pp_s(obj)
12
+ r = ""
13
+ PP.pp(obj, r)
14
+ r
15
+ end
16
+ end
@@ -0,0 +1,19 @@
1
+ require File.dirname(__FILE__) + '/helper.rb'
2
+
3
+ class TestVersion < Test::Unit::TestCase
4
+
5
+ def test_version
6
+ assert_kind_of(String, WIN32OLE_PP::VERSION::STRING)
7
+ assert_kind_of(Integer, WIN32OLE_PP::VERSION::MAJOR)
8
+ assert_kind_of(Integer, WIN32OLE_PP::VERSION::MINOR)
9
+ assert_kind_of(Integer, WIN32OLE_PP::VERSION::TINY)
10
+
11
+ assert_match(/\d+\.\d+\.\d+/, WIN32OLE_PP::VERSION::STRING)
12
+ assert_equal(WIN32OLE_PP::VERSION::STRING, [
13
+ WIN32OLE_PP::VERSION::MAJOR,
14
+ WIN32OLE_PP::VERSION::MINOR,
15
+ WIN32OLE_PP::VERSION::TINY,
16
+ ].join('.'))
17
+ end
18
+
19
+ end
@@ -0,0 +1,54 @@
1
+ require File.dirname(__FILE__) + '/helper.rb'
2
+
3
+ class TestWin32ole < Test::Unit::TestCase
4
+ include ::WIN32OLE_PPTestHelper
5
+
6
+ def setup
7
+ @drive = Dir.pwd[/\A([a-z]):/i, 1]
8
+ @fs = WIN32OLE.new("Scripting.FileSystemObject")
9
+ end
10
+
11
+ def test_to_s_original
12
+ assert_match(/#<WIN32OLE:0x[[:xdigit:]]+>/, @fs.to_s_original)
13
+ assert_match(/#<WIN32OLE:0x[[:xdigit:]]+>/, @fs.Drives.to_s_original)
14
+ assert_match(/#<WIN32OLE:0x[[:xdigit:]]+>/, @fs.Drives.Item(@drive).to_s_original)
15
+ end
16
+
17
+ def test_to_s
18
+ assert_match(/#<WIN32OLE:0x[[:xdigit:]]+: IFileSystem\d+>/, @fs.to_s)
19
+ assert_match(/#<WIN32OLE:0x[[:xdigit:]]+: IDriveCollection>/, @fs.Drives.to_s)
20
+ assert_match(/#<WIN32OLE:0x[[:xdigit:]]+: IDrive>/, @fs.Drives.Item(@drive).to_s)
21
+ end
22
+
23
+ def test_pp
24
+ assert_match(re(<<-EXPECTED), pp_s(@fs))
25
+ #<WIN32OLE:0x14c9fd6: IFileSystem[0-9]
26
+ Drives=#<WIN32OLE:0x14c99aa: IDriveCollection>>
27
+ EXPECTED
28
+ end
29
+
30
+ def test_pp2
31
+ assert_match(re(<<-EXPECTED), pp_s(@fs.Drives))
32
+ #<WIN32OLE:0x14bda38: IDriveCollection Count=[0-9]+, _NewEnum=nil>
33
+ EXPECTED
34
+ end
35
+
36
+ def test_pp3
37
+ assert_match(re(<<-EXPECTED), pp_s(@fs.Drives.Item(@drive)))
38
+ #<WIN32OLE:0x17ceb46: IDrive
39
+ AvailableSpace=.*?,
40
+ DriveLetter=.*?,
41
+ DriveType=.*?,
42
+ FileSystem=.*?,
43
+ FreeSpace=.*?,
44
+ IsReady=.*?,
45
+ Path=.*?,
46
+ RootFolder=.*?,
47
+ SerialNumber=.*?,
48
+ ShareName=.*?,
49
+ TotalSize=.*?,
50
+ VolumeName=.*?>
51
+ EXPECTED
52
+ end
53
+
54
+ end
@@ -0,0 +1,28 @@
1
+ require File.dirname(__FILE__) + '/helper.rb'
2
+
3
+ class TestWin32oleEvent < Test::Unit::TestCase
4
+ include ::WIN32OLE_PPTestHelper
5
+
6
+ def setup
7
+ @ie = WIN32OLE.new('InternetExplorer.Application')
8
+ @event = WIN32OLE_EVENT.new(@ie, 'DWebBrowserEvents')
9
+ end
10
+
11
+ def test_to_s_original
12
+ assert_match(re("#<WIN32OLE_EVENT:0x2960ad0>"),
13
+ @event.to_s_original)
14
+ end
15
+
16
+ def test_to_s
17
+ assert_match(re("#<WIN32OLE_EVENT:0x14b0568: IWebBrowser2\\.DWebBrowserEvents>"),
18
+ @event.to_s)
19
+ end
20
+
21
+ def test_pp
22
+ assert_match(re(<<-EXPECTED), pp_s(@event))
23
+ #<WIN32OLE_EVENT:0x14b0568: DWebBrowserEvents
24
+ ole_class="IWebBrowser2",
25
+ event_interface="DWebBrowserEvents">
26
+ EXPECTED
27
+ end
28
+ end
@@ -0,0 +1,84 @@
1
+ require File.dirname(__FILE__) + '/helper.rb'
2
+
3
+ class TestWin32oleMethod < Test::Unit::TestCase
4
+ include ::WIN32OLE_PPTestHelper
5
+
6
+ def setup
7
+ @drive = Dir.pwd[/\A([a-z]):/i, 1]
8
+ @fs = WIN32OLE.new("Scripting.FileSystemObject")
9
+ @method_drives = @fs.ole_method("Drives")
10
+ @method_create_folder = @fs.ole_method("CreateFolder")
11
+ @method_delete_folder = @fs.ole_method("DeleteFolder")
12
+ end
13
+
14
+ def test_to_s_original
15
+ assert_equal("Drives", @method_drives.to_s_original)
16
+ assert_equal("CreateFolder", @method_create_folder.to_s_original)
17
+ assert_equal("DeleteFolder", @method_delete_folder.to_s_original)
18
+ end
19
+
20
+ def test_to_s
21
+ assert_match(re("#<WIN32OLE_METHOD:0x14c73da: IDriveCollection Drives\\(\\)>"),
22
+ @method_drives.to_s)
23
+ assert_match(re("#<WIN32OLE_METHOD:0x14c72f4: IFolder CreateFolder\\(\\[in\\] BSTR Path\\)>"),
24
+ @method_create_folder.to_s)
25
+ assert_match(re("#<WIN32OLE_METHOD:0x14c6cd2: VOID DeleteFolder\\(\\[in\\] BSTR FolderSpec, \\[in, optional\\] BOOL Force\\)>"),
26
+ @method_delete_folder.to_s)
27
+ end
28
+
29
+ def test_pp
30
+ assert_match(re(<<-EXPECTED), pp_s(@method_drives))
31
+ #<WIN32OLE_METHOD:0x14c742a: Drives
32
+ dispid=.*?,
33
+ event\\?=.*?,
34
+ event_interface=.*?,
35
+ helpcontext=.*?,
36
+ helpfile=.*?,
37
+ helpstring=.*?,
38
+ invkind=.*?,
39
+ invoke_kind=.*?,
40
+ name=.*?,
41
+ offset_vtbl=.*?,
42
+ params=.*?,
43
+ return_type=.*?,
44
+ return_type_detail=.*?,
45
+ return_vtype=.*?,
46
+ size_opt_params=.*?,
47
+ size_params=.*?,
48
+ visible\\?=.*?>
49
+ EXPECTED
50
+ end
51
+
52
+ def test_pp2
53
+ assert_match(re(<<-EXPECTED), pp_s(@method_create_folder))
54
+ #<WIN32OLE_METHOD:0x14c72f4: CreateFolder
55
+ dispid=.*?,
56
+ event\\?=.*?,
57
+ event_interface=.*?,
58
+ helpcontext=.*?,
59
+ helpfile=.*?,
60
+ helpstring=.*?,
61
+ invkind=.*?,
62
+ invoke_kind=.*?,
63
+ name=.*?,
64
+ offset_vtbl=.*?,
65
+ params.*?
66
+ \\[#<WIN32OLE_PARAM:0x14c4a9a: Path
67
+ default=.*?,
68
+ input\\?=.*?,
69
+ name=.*?,
70
+ ole_type=.*?,
71
+ ole_type_detail=.*?,
72
+ optional\\?=.*?,
73
+ output\\?=.*?,
74
+ retval\\?=.*?>\\],
75
+ return_type=.*?,
76
+ return_type_detail=.*?,
77
+ return_vtype=.*?,
78
+ size_opt_params=.*?,
79
+ size_params=.*?,
80
+ visible\\?=.*?>
81
+ EXPECTED
82
+ end
83
+
84
+ end
@@ -0,0 +1,65 @@
1
+ require File.dirname(__FILE__) + '/helper.rb'
2
+
3
+ class TestWin32oleParam < Test::Unit::TestCase
4
+ include ::WIN32OLE_PPTestHelper
5
+
6
+ def setup
7
+ @drive = Dir.pwd[/\A([a-z]):/i, 1]
8
+ @fs = WIN32OLE.new("Scripting.FileSystemObject")
9
+ @param_create_folder = @fs.ole_method("CreateFolder").params
10
+ @param_delete_folder = @fs.ole_method("DeleteFolder").params
11
+ end
12
+
13
+ def test_to_s_original
14
+ assert_equal("Path", @param_create_folder[0].to_s_original)
15
+ assert_equal("FolderSpec", @param_delete_folder[0].to_s_original)
16
+ assert_equal("Force", @param_delete_folder[1].to_s_original)
17
+ end
18
+
19
+ def test_to_s
20
+ assert_match(re("#<WIN32OLE_PARAM:0x14c1b4c: \\[in\\] BSTR Path>"),
21
+ @param_create_folder[0].to_s)
22
+ assert_match(re("#<WIN32OLE_PARAM:0x14bd45c: \\[in\\] BSTR FolderSpec>"),
23
+ @param_delete_folder[0].to_s)
24
+ assert_match(re("#<WIN32OLE_PARAM:0x14bd448: \\[in, optional\\] BOOL Force>"),
25
+ @param_delete_folder[1].to_s)
26
+ end
27
+
28
+ def test_pp
29
+ assert_match(re(<<-EXPECTED), pp_s(@param_create_folder))
30
+ \\[#<WIN32OLE_PARAM:0x14bd290: Path
31
+ default=.*?,
32
+ input\\?=.*?,
33
+ name=.*?,
34
+ ole_type=.*?,
35
+ ole_type_detail=.*?,
36
+ optional\\?=.*?,
37
+ output\\?=.*?,
38
+ retval\\?=.*?>\\]
39
+ EXPECTED
40
+ end
41
+
42
+ def test_pp2
43
+ assert_match(re(<<-EXPECTED), pp_s(@param_delete_folder))
44
+ \\[#<WIN32OLE_PARAM:0x14bd22c: FolderSpec
45
+ default=.*?,
46
+ input\\?=.*?,
47
+ name=.*?,
48
+ ole_type=.*?,
49
+ ole_type_detail=.*?,
50
+ optional\\?=.*?,
51
+ output\\?=.*?,
52
+ retval\\?=.*?>,
53
+ #<WIN32OLE_PARAM:0x14bd218: Force
54
+ default=.*?,
55
+ input\\?=.*?,
56
+ name=.*?,
57
+ ole_type=.*?,
58
+ ole_type_detail=.*?,
59
+ optional\\?=.*?,
60
+ output\\?=.*?,
61
+ retval\\?=.*?>\\]
62
+ EXPECTED
63
+ end
64
+
65
+ end
@@ -0,0 +1,57 @@
1
+ require File.dirname(__FILE__) + '/helper.rb'
2
+
3
+ class TestWin32oleType < Test::Unit::TestCase
4
+ include ::WIN32OLE_PPTestHelper
5
+
6
+ def setup
7
+ types = WIN32OLE_TYPE.ole_classes("Microsoft Script Control 1.0")
8
+ types.extend(Enumerable)
9
+ @script_control = types.find{|e| e.name =~ /Constants/ }
10
+ end
11
+
12
+ def test_to_s_original
13
+ assert_equal("ScriptControlConstants", @script_control.to_s_original)
14
+ end
15
+
16
+ def test_to_s
17
+ assert_match(re("#<WIN32OLE_TYPE:0x14b6e2c: ScriptControlConstants>"),
18
+ @script_control.to_s)
19
+ end
20
+
21
+ def test_pp
22
+ assert_match(re(<<-EXPECTED), pp_s(@script_control))
23
+ #<WIN32OLE_TYPE:0x14b6e2c: ScriptControlConstants
24
+ guid=.*?,
25
+ helpcontext=.*?,
26
+ helpfile=.*?,
27
+ helpstring=.*?,
28
+ major_version=.*?,
29
+ minor_version=.*?,
30
+ name=.*?,
31
+ ole_methods=.*?,
32
+ ole_type=.*?,
33
+ progid=.*?,
34
+ src_type=.*?,
35
+ typekind=.*?,
36
+ variables=
37
+ \\[#<WIN32OLE_VARIABLE:0x14b69d6: GlobalModule
38
+ name=.*?,
39
+ ole_type=.*?,
40
+ ole_type_detail=.*?,
41
+ value=.*?,
42
+ variable_kind=.*?,
43
+ varkind=.*?,
44
+ visible\\?=.*?,
45
+ #<WIN32OLE_VARIABLE:0x14b69c2: NoTimeout
46
+ name=.*?,
47
+ ole_type=.*?,
48
+ ole_type_detail=.*?,
49
+ value=.*?,
50
+ variable_kind=.*?,
51
+ varkind=.*?,
52
+ visible\\?=.*?>\\],
53
+ visible\\?=.*?>
54
+ EXPECTED
55
+ end
56
+
57
+ end
@@ -0,0 +1,46 @@
1
+ require File.dirname(__FILE__) + '/helper.rb'
2
+
3
+ class TestWin32oleVariable < Test::Unit::TestCase
4
+ include ::WIN32OLE_PPTestHelper
5
+
6
+ def setup
7
+ types = WIN32OLE_TYPE.ole_classes("Microsoft Script Control 1.0")
8
+ types.extend(Enumerable)
9
+ script_control = types.find{|e| e.name =~ /Constants/ }
10
+ @vars = script_control.variables
11
+ end
12
+
13
+ def test_to_s_original
14
+ assert_equal("GlobalModule", @vars[0].to_s_original)
15
+ assert_equal("NoTimeout", @vars[1].to_s_original)
16
+ end
17
+
18
+ def test_to_s
19
+ assert_match(re("#<WIN32OLE_VARIABLE:0x14b34a2: GlobalModule=\"Global\">"),
20
+ @vars[0].to_s)
21
+ assert_match(re("#<WIN32OLE_VARIABLE:0x14b34a2: NoTimeout=-1>"),
22
+ @vars[1].to_s)
23
+ end
24
+
25
+ def test_pp
26
+ assert_match(re(<<-EXPECTED), pp_s(@vars))
27
+ \\[#<WIN32OLE_VARIABLE:0x14b34a2: GlobalModule
28
+ name=.*?,
29
+ ole_type=.*?,
30
+ ole_type_detail=.*?,
31
+ value=.*?,
32
+ variable_kind=.*?,
33
+ varkind=.*?,
34
+ visible\\?=.*?,
35
+ #<WIN32OLE_VARIABLE:0x14b3484: NoTimeout
36
+ name=.*?,
37
+ ole_type=.*?,
38
+ ole_type_detail=.*?,
39
+ value=.*?,
40
+ variable_kind=.*?,
41
+ varkind=.*?,
42
+ visible\\?=.*?>\\]
43
+ EXPECTED
44
+ end
45
+
46
+ end
metadata ADDED
@@ -0,0 +1,87 @@
1
+ --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.9.0
3
+ specification_version: 1
4
+ name: win32ole-pp
5
+ version: !ruby/object:Gem::Version
6
+ version: 0.0.1
7
+ date: 2007-02-12 00:00:00 +09:00
8
+ summary: pretty printer for WIN32OLE
9
+ require_paths:
10
+ - lib
11
+ email: miyamuko@gmail.com
12
+ homepage: http://win32ole-pp.rubyforge.org/
13
+ rubyforge_project: win32ole-pp
14
+ description: "win32ole_pp - provide pretty printer for WIN32OLE and smart #to_s."
15
+ autorequire:
16
+ default_executable:
17
+ bindir: bin
18
+ has_rdoc: true
19
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
20
+ requirements:
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
24
+ version:
25
+ platform: ruby
26
+ signing_key:
27
+ cert_chain:
28
+ post_install_message:
29
+ authors:
30
+ - MIYAMUKO Katsuyuki
31
+ files:
32
+ - CHANGELOG.txt
33
+ - History.txt
34
+ - Manifest.txt
35
+ - README.txt
36
+ - Rakefile
37
+ - examples/test.rb
38
+ - lib/win32ole_pp.rb
39
+ - lib/win32ole_pp/extentions.rb
40
+ - lib/win32ole_pp/extentions/common.rb
41
+ - lib/win32ole_pp/extentions/win32ole.rb
42
+ - lib/win32ole_pp/extentions/win32ole_event.rb
43
+ - lib/win32ole_pp/extentions/win32ole_method.rb
44
+ - lib/win32ole_pp/extentions/win32ole_param.rb
45
+ - lib/win32ole_pp/extentions/win32ole_type.rb
46
+ - lib/win32ole_pp/extentions/win32ole_variable.rb
47
+ - lib/win32ole_pp/init.rb
48
+ - lib/win32ole_pp/pp.rb
49
+ - lib/win32ole_pp/to_s.rb
50
+ - lib/win32ole_pp/version.rb
51
+ - setup.rb
52
+ - test/helper.rb
53
+ - test/test_version.rb
54
+ - test/test_win32ole.rb
55
+ - test/test_win32ole_event.rb
56
+ - test/test_win32ole_method.rb
57
+ - test/test_win32ole_param.rb
58
+ - test/test_win32ole_type.rb
59
+ - test/test_win32ole_variable.rb
60
+ test_files:
61
+ - test/test_version.rb
62
+ - test/test_win32ole.rb
63
+ - test/test_win32ole_event.rb
64
+ - test/test_win32ole_method.rb
65
+ - test/test_win32ole_param.rb
66
+ - test/test_win32ole_type.rb
67
+ - test/test_win32ole_variable.rb
68
+ rdoc_options: []
69
+
70
+ extra_rdoc_files: []
71
+
72
+ executables: []
73
+
74
+ extensions: []
75
+
76
+ requirements: []
77
+
78
+ dependencies:
79
+ - !ruby/object:Gem::Dependency
80
+ name: hoe
81
+ version_requirement:
82
+ version_requirements: !ruby/object:Gem::Version::Requirement
83
+ requirements:
84
+ - - ">="
85
+ - !ruby/object:Gem::Version
86
+ version: 1.1.7
87
+ version: