spectools 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. data/CHANGELOG.txt +1 -0
  2. data/Manifest.txt +80 -0
  3. data/README.txt +33 -0
  4. data/README.vnmsh.txt +39 -0
  5. data/Rakefile +42 -0
  6. data/TODO +5 -0
  7. data/lib/spectools.rb +588 -0
  8. data/lib/spectools/version.rb +9 -0
  9. data/lib/vnmsh.rb +1930 -0
  10. data/test/data/connect.success +8 -0
  11. data/test/data/create.alarm +2 -0
  12. data/test/data/create.association +1 -0
  13. data/test/data/create.model +1 -0
  14. data/test/data/create.model.ip +1 -0
  15. data/test/data/destroy.alarm +1 -0
  16. data/test/data/destroy.association +1 -0
  17. data/test/data/destroy.model +9 -0
  18. data/test/data/seek +2 -0
  19. data/test/data/seek.-s +17 -0
  20. data/test/data/show.alarms +10 -0
  21. data/test/data/show.alarms-a +11 -0
  22. data/test/data/show.alarms-a-x +22 -0
  23. data/test/data/show.alarms-x +20 -0
  24. data/test/data/show.alarms.mh +1 -0
  25. data/test/data/show.associations +160 -0
  26. data/test/data/show.attributes +909 -0
  27. data/test/data/show.attributes.attr +2 -0
  28. data/test/data/show.attributes.attriid +2 -0
  29. data/test/data/show.attributes.attrname +6 -0
  30. data/test/data/show.attributes.attrr +14 -0
  31. data/test/data/show.attributes.enum +2 -0
  32. data/test/data/show.attributes.flags +16 -0
  33. data/test/data/show.attributes.mth +242 -0
  34. data/test/data/show.attributes.mth.attrr +12 -0
  35. data/test/data/show.children +47 -0
  36. data/test/data/show.children.rel +14 -0
  37. data/test/data/show.devices +21 -0
  38. data/test/data/show.enumerations +142383 -0
  39. data/test/data/show.enumerations.attr +4 -0
  40. data/test/data/show.enumerations.mth +149 -0
  41. data/test/data/show.events +2001 -0
  42. data/test/data/show.events-a +10001 -0
  43. data/test/data/show.events-n5 +6 -0
  44. data/test/data/show.events-x-n5 +21 -0
  45. data/test/data/show.inheritance +12 -0
  46. data/test/data/show.landscapes +3 -0
  47. data/test/data/show.models +2252 -0
  48. data/test/data/show.models.mhr +18 -0
  49. data/test/data/show.models.mname +4 -0
  50. data/test/data/show.models.mth +4 -0
  51. data/test/data/show.parents +6 -0
  52. data/test/data/show.relations +151 -0
  53. data/test/data/show.rules +5838 -0
  54. data/test/data/show.types +4210 -0
  55. data/test/data/show.types.flags +3137 -0
  56. data/test/data/show.types.mthr +55 -0
  57. data/test/data/show.types.mtname +2 -0
  58. data/test/data/show.watch +9 -0
  59. data/test/data/test.reconnect +1 -0
  60. data/test/data/update.alarm +1 -0
  61. data/test/data/update.model +3 -0
  62. data/test/test_helper.rb +2 -0
  63. data/test/test_spectools.rb +403 -0
  64. data/test/test_vnmsh.rb +1537 -0
  65. data/test/testcmds/ack +1 -0
  66. data/test/testcmds/connect +32 -0
  67. data/test/testcmds/create +34 -0
  68. data/test/testcmds/destroy +36 -0
  69. data/test/testcmds/disconnect +7 -0
  70. data/test/testcmds/seek +18 -0
  71. data/test/testcmds/show +243 -0
  72. data/test/testcmds/update +12 -0
  73. data/test/vnmsh/ack +1 -0
  74. data/test/vnmsh/connect +5 -0
  75. data/test/vnmsh/create +1 -0
  76. data/test/vnmsh/destroy +1 -0
  77. data/test/vnmsh/disconnect +1 -0
  78. data/test/vnmsh/seek +3 -0
  79. data/test/vnmsh/show +1 -0
  80. data/test/vnmsh/update +1 -0
  81. metadata +134 -0
@@ -0,0 +1 @@
1
+ #!/usr/bin/ruby
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/ruby
2
+
3
+
4
+ if ARGV[0] == 'testhost' || ARGV[0].nil?
5
+ File.open(ENV['TESTDATA'] + '/connect.success') do |file|
6
+ $stderr.puts file.readlines
7
+ end
8
+ end
9
+
10
+ if ARGV[0] == 'connected'
11
+ $stderr.puts 'connect: already connected to testhost since Tue Apr 17 13:52:07 2007'
12
+ end
13
+
14
+ errors = [ 'connect: cannot open resource file ./.vnmshrc',
15
+ 'connect: can only connect to SpectroSERVERs in testhost landscape map - other users(s) already connected',
16
+ 'connect: ERROR: No such SPECTRUM user as testuser',
17
+ 'connect: testhost not responding or not permitting access',
18
+ 'connect: 0x400000: invalid landscape handle',
19
+ 'connect: incompatible SpectroSERVER 8.0.0.001',
20
+ 'connect: invalid testvalue for CLISESSID',
21
+ 'connect: vairable CLISESSID not set'
22
+ ]
23
+
24
+ if ARGV[0] =~ /error(\d)/
25
+ error = $1
26
+ (0..7).each do |i|
27
+ if error.to_i == i
28
+ $stderr.puts errors[i]
29
+ end
30
+ end
31
+ end
32
+
@@ -0,0 +1,34 @@
1
+ #!/usr/bin/ruby
2
+ def return_output(infile)
3
+ File.open(ENV['TESTDATA'] + infile) do |file|
4
+ puts file.readlines
5
+ end
6
+ end
7
+
8
+ if ARGV[0] == 'model'
9
+ if ARGV[1] == 'ip=192.168.1.1'
10
+ return_output('/create.model.ip')
11
+ elsif ARGV[1] == 'mth=0x3dc0001'
12
+ return_output('/create.model')
13
+ end
14
+ end
15
+
16
+ if ARGV[0] == 'association'
17
+ if ARGV[1] == 'rel=Collects' && ARGV[2] == 'lmh=0x40b736' && ARGV[3] == 'rmh=0x40b7d3'
18
+ return_output('/create.association')
19
+ end
20
+ end
21
+
22
+ if ARGV[0] == 'alarm'
23
+ args = ARGV
24
+ if args[1] == '-nr'
25
+ args.delete_at(1)
26
+ end
27
+ if args[1] == 'sev=CRITICAL' &&
28
+ args[2] == 'cause=0x48fffc5' &&
29
+ args[3] == 'mh=0x40b7d3'
30
+ return_output('/create.alarm')
31
+ end
32
+ end
33
+
34
+
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/ruby
2
+
3
+ require 'tmpdir'
4
+
5
+ def return_output(infile)
6
+ File.open(ENV['TESTDATA'] + infile) do |file|
7
+ puts file.readlines
8
+ end
9
+ end
10
+
11
+ if ARGV[0] == 'model' && ARGV[1] == '-n'
12
+ if ARGV[2] == 'mh=0x40b42b'
13
+ return_output('destroy.model')
14
+ elsif ARGV[2] == 'mh=bogus'
15
+ $stderr.puts 'destroy: bogus: invalid model handle'
16
+ end
17
+ end
18
+
19
+ if ARGV[0] == 'association' && ARGV[1] == '-n'
20
+ if ARGV[2] == 'rel=Connects_to'
21
+ return_output('destroy.association')
22
+ elsif ARGV[2] == 'rel=bogus'
23
+ $stderr.puts 'destroy association: incomplete command or syntax'
24
+ end
25
+ end
26
+
27
+ if ARGV[0] == 'alarm' && ARGV[1] == '-n'
28
+ if ARGV[2] == 'aid=7888881'
29
+ return_output('destroy.alarm')
30
+ elsif ARGV[2] == 'aid=bogus'
31
+ $stderr.puts 'destroy alarm: aid=bogus: invalid alarm ID'
32
+ end
33
+ end
34
+
35
+
36
+
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/ruby
2
+
3
+ if ARGV[0].nil?
4
+ $stderr.puts 'disconnect: successful from testhost - connected for 1 hours, 1 minutes'
5
+ else
6
+ $stderr.puts 'disconnect: not connected to the CLI Local Server'
7
+ end
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/ruby
2
+
3
+ require 'tmpdir'
4
+
5
+ def return_output(infile)
6
+ File.open(ENV['TESTDATA'] + infile) do |file|
7
+ puts file.readlines
8
+ end
9
+ end
10
+
11
+
12
+ if ARGV[0] =~ /attr=0x1006e/ || (ARGV[0] == '-i' && ARGV[1] =~ /attr=0x1006e/)
13
+ return_output('seek')
14
+ end
15
+
16
+ if ARGV[0] == '-s' && (ARGV[1] =~ /attr=0x1006e/ || ARGV[2] =~ /attr=0x1006e/)
17
+ return_output('seek.-s')
18
+ end
@@ -0,0 +1,243 @@
1
+ #!/usr/bin/ruby
2
+
3
+ require 'tmpdir'
4
+
5
+ def return_output(infile)
6
+ File.open(ENV['TESTDATA'] + infile) do |file|
7
+ puts file.readlines
8
+ end
9
+ end
10
+
11
+ def return_model_error
12
+ $stderr.puts 'show: bogus: invalid model handle'
13
+ exit(1)
14
+ end
15
+
16
+ def return_landscape_error
17
+ $stderr.puts 'show: bogus: invalid landscape handle'
18
+ exit(1)
19
+ end
20
+
21
+ def return_no_current_model
22
+ $stderr.puts 'show: no current model defined'
23
+ exit(1)
24
+ end
25
+
26
+ if ARGV[0] == 'alarms'
27
+ if ARGV[1].nil? || ARGV[1] == 'lh=0x400000'
28
+ return_output('/show.alarms')
29
+ elsif ARGV[1] == '-a'
30
+ return_output('/show.alarms-a')
31
+ elsif ARGV[1] == '-x'
32
+ return_output('/show.alarms-x')
33
+ elsif (ARGV[1] == '-x' && ARGV[2] == '-a') || (ARGV[2] == '-x' && ARGV[1] == '-a')
34
+ return_output('/show.alarms-a-x')
35
+ elsif (ARGV[1] == 'mh=0x400005c7')
36
+ return_output('show.alarms.mh')
37
+ elsif (ARGV[1] == 'mh=bogus')
38
+ return_model_error
39
+ elsif (ARGV[1] == 'lh=bogus')
40
+ return_landscape_error
41
+ end
42
+
43
+ elsif ARGV[0] == 'models'
44
+ if ARGV[1].nil? || ARGV[1] == 'lh=0x400000'
45
+ return_output('/show.models')
46
+ elsif ARGV[1] == 'mth=0x13d0018'
47
+ return_output('/show.models.mth')
48
+ elsif ARGV[1] =~ /mname/
49
+ return_output('/show.models.mname')
50
+ elsif ARGV[1] == 'mhr=0x40000000-0x40000010'
51
+ return_output('/show.models.mhr')
52
+ elsif ARGV[1] == 'mh=bogus'
53
+ return_model_error
54
+ elsif ARGV[1] == 'lh=bogus'
55
+ return_landscape_error
56
+ end
57
+
58
+ elsif ARGV[0] == 'devices'
59
+ if ARGV[1].nil? || ARGV[1] == 'lh=0x400000'
60
+ return_output('/show.devices')
61
+ elsif ARGV[1] == 'lh=bogus'
62
+ return_landscape_error
63
+ end
64
+
65
+ elsif ARGV[0] == 'types'
66
+ if ARGV[1].nil? || ARGV[1] == 'lh=0x400000'
67
+ return_output('/show.types')
68
+ elsif ARGV[1] == 'mthr=0x13d0000-0x13d00ff'
69
+ return_output('/show.types.mthr')
70
+ elsif ARGV[1] == 'mtname=IcsLicenseMgr'
71
+ return_output('/show.types.mtname')
72
+ elsif ARGV[1] == 'flags=D'
73
+ return_output('/show.types.flags')
74
+ elsif ARGV[1] == 'lh=bogus'
75
+ return_landscape_error
76
+ end
77
+
78
+ elsif ARGV[0] == 'relations'
79
+ if ARGV[1].nil? || ARGV[1] == 'lh=0x400000'
80
+ return_output('/show.relations')
81
+ elsif ARGV[1] == 'lh=bogus'
82
+ return_landscape_error
83
+ end
84
+
85
+ elsif ARGV[0] == 'associations'
86
+ if ARGV[1].nil? || ARGV[1] == 'mh=bogus'
87
+ return_model_error
88
+ elsif ARGV[1] == 'mh=0x400005c7'
89
+ return_output('/show.associations')
90
+ end
91
+
92
+ elsif ARGV[0] == 'parents'
93
+ if ARGV[1].nil?
94
+ return_no_current_model
95
+ elsif ARGV[1] == 'rel=bogus'
96
+ $stderr.puts 'show: bogus: invalid relation'
97
+ elsif ARGV[1] == 'mh=bogus'
98
+ return_model_error
99
+ #TODO: Get test data for this command
100
+ elsif (ARGV[1] == 'rel=Collects' && ARGV[2] == 'mh=0x4000004b') || ARGV[1] == 'mh=0x4000004b'
101
+ return_output('/show.parents')
102
+ end
103
+
104
+ elsif ARGV[0] == 'children'
105
+ if ARGV[1].nil?
106
+ return_no_current_model
107
+ elsif ARGV[1] == 'rel=bogus'
108
+ $stderr.puts 'show: bogus: invalid relation'
109
+ elsif ARGV[1] == 'mh=bogus'
110
+ return_model_error
111
+ elsif ARGV[1] == 'mh=0x400005cb'
112
+ return_output('/show.children')
113
+ elsif ARGV[1] == 'rel=PossPrimApp' && ARGV[2] == 'mh=0x400005cb'
114
+ return_output('/show.children.rel')
115
+ end
116
+
117
+ elsif ARGV[0] == 'events'
118
+ if ARGV[1].nil? || ARGV[1] == 'lh=0x400000' || ARGV[1] == 'mh=0x400000'
119
+ return_output('/show.events')
120
+ elsif ARGV[1] == '-a'
121
+ return_output('/show.events-a')
122
+ elsif ARGV[1] == '-n' && ARGV[2] == '5'
123
+ return_output('/show.events-n5')
124
+ elsif ARGV[1] == '-x'
125
+ return_output('/show.events-x-n5')
126
+ elsif ARGV[1] == 'mh=bogus'
127
+ return_model_error
128
+ elsif ARGV[1] == 'lh=bogus'
129
+ return_landscape_error
130
+ end
131
+
132
+ elsif ARGV[0] == 'inheritance'
133
+ if ARGV[1].nil?
134
+ $stderr.puts 'show inheritance: invalid number of arguments'
135
+ elsif ARGV[1] == 'mth=0x13d000d' && (ARGV[2].nil? || ARGV[2] == 'lh=0x400000')
136
+ return_output('/show.inheritance')
137
+ elsif ARGV[1] == 'mth=bogus'
138
+ $stderr.puts('show inheritance: bogus: invalid model type handle')
139
+ elsif ARGV[1] == 'mth=0x13d000d' && ARGV[2] == 'lh=bogus'
140
+ return_landscape_error
141
+ end
142
+
143
+ elsif ARGV[0] == 'rules'
144
+ if ARGV[1].nil?
145
+ $stderr.puts 'show rules: invalid number of arguments'
146
+ elsif ARGV[1] == 'rel=Collects' && (ARGV[2].nil? || ARGV[2] == 'lh=0x400000')
147
+ return_output('/show.rules')
148
+ elsif ARGV[1] == 'rel=bogus'
149
+ $stderr.puts('show rules: bogus: invalid relation')
150
+ elsif ARGV[1] == 'rel=Collects' && ARGV[2] == 'lh=bogus'
151
+ return_landscape_error
152
+ end
153
+
154
+ elsif ARGV[0] == 'enumerations'
155
+ if ARGV[1].nil? || ARGV[1] == 'lh=0x400000'
156
+ return_output('/show.enumerations')
157
+ elsif ARGV[1] == 'attr=0x13d031e'
158
+ return_output('/show.enumerations.attr')
159
+ elsif ARGV[1] == 'mth=0x13d0018'
160
+ return_output('/show.enumerations.mth')
161
+ elsif ARGV[1] == 'mth=bogus'
162
+ $stderr.puts 'show enumerations: bogus: invalid model type handle'
163
+ elsif ARGV[1] == 'lh=bogus'
164
+ return_landscape_error
165
+ elsif ARGV[1] == 'attr=bogus'
166
+ $stderr.puts 'show enumerations: bogus: invalid attribute'
167
+ end
168
+
169
+ elsif ARGV[0] == 'watch'
170
+ if ARGV[1].nil?
171
+ return_no_current_model
172
+ elsif ARGV[1] == 'mh=0x4000004b'
173
+ return_output('/show.watch')
174
+ elsif ARGV[1] == 'mh=bogus'
175
+ return_model_error
176
+ end
177
+
178
+ elsif ARGV[0] == 'attributes'
179
+ if ARGV[1].nil?
180
+ return_no_current_model
181
+ elsif ARGV[1] == 'mh=0x400005c7'
182
+ return_output('/show.attributes')
183
+ elsif ARGV[2] == 'mh=0x400005c7' || ARGV[3] == 'mh=0x4000017b'
184
+ if ARGV[1] == 'attr=0x10030'
185
+ return_output('/show.attributes.attr')
186
+ elsif ARGV[1] == 'attrname=Condition'
187
+ return_output('/show.attributes.attrname')
188
+ elsif ARGV[1] == 'attrr=0x10000-0x10010'
189
+ return_output('/show.attributes.attrr')
190
+ elsif ARGV[1] == '-e' || ARGV[2] == 'attr=0x13d0315'
191
+ return_output('/show.attributes.enum')
192
+ elsif ARGV[1] == 'attr=0x12a53,iid=192.2.20.2'
193
+ return_output('/show.attributes.attriid')
194
+ elsif ARGV[1] == 'attr=0x1000a,iid=12345'
195
+ $stderr.puts 'show attributes: 0x1000a: non list attribute'
196
+ elsif ARGV[1] == 'attr=bogus'
197
+ $stderr.puts 'show attributes: bogus: invalid attribute id'
198
+ elsif ARGV[1] == 'attr=0x12bfa,iid=bogus'
199
+ $stderr.puts 'show attributes: bogus: invalid instance id'
200
+ end
201
+ elsif ARGV[1] == 'mth=0x13d0018'
202
+ if ARGV[2] == 'attrname=Condition'
203
+ return_output('/show.attributes.attrname')
204
+ elsif ARGV[2] == 'attrr=0x10000-0x10010'
205
+ return_output('/show.attributes.mth.attrr')
206
+ elsif ARGV[2] == 'flags=O'
207
+ return_output('/show.attributes.flags')
208
+ elsif ARGV[2] == 'lh=bogus'
209
+ return_landscape_error
210
+ else
211
+ return_output('/show.attributes.mth')
212
+ end
213
+ elsif ARGV[1] == 'mth=bogus'
214
+ $stderr.puts('show attributes: bogus: invalid model type handle')
215
+ elsif ARGV[1] == 'mh=bogus'
216
+ return_model_error
217
+ end
218
+
219
+ elsif ARGV[0] == 'landscapes'
220
+ return_output('/show.landscapes')
221
+
222
+
223
+
224
+ elsif ARGV[0] == 'test'
225
+ puts 'Test Succeeded'
226
+
227
+ elsif ARGV[0] == 'reconnect'
228
+ unless File.exists?(Dir.tmpdir + '/test.reconnect')
229
+ semaphore = File.new(Dir.tmpdir + '/test.reconnect', 'w')
230
+ semaphore.puts "reconnect"
231
+ semaphore.close
232
+ $stderr.puts 'Please connect first'
233
+ exit(1)
234
+ else
235
+ puts 'Test Succeeded'
236
+ File.delete(Dir.tmpdir + '/test.reconnect')
237
+ end
238
+ elsif ARGV[0] == 'noreconnect'
239
+ $stderr.puts 'Please connect first'
240
+ exit(1)
241
+ end
242
+
243
+
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/ruby
2
+
3
+ def return_output(infile)
4
+ File.open(ENV['TESTDATA'] + infile) do |file|
5
+ puts file.readlines
6
+ end
7
+ end
8
+
9
+ if ARGV[0] == 'mh=0x40b737' && ARGV[2] == 'attr=0x1006e,val=NewModel' && ARGV[1] == 'attr=0x12c06,val=222'
10
+ return_output('/update.model')
11
+ end
12
+
@@ -0,0 +1 @@
1
+ #!/usr/bin/ruby
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/ruby
2
+
3
+ File.open('./data/connect.success') do |file|
4
+ $stderr.puts file.readlines
5
+ end
@@ -0,0 +1 @@
1
+ #!/usr/bin/ruby
@@ -0,0 +1 @@
1
+ #!/usr/bin/destroy
@@ -0,0 +1 @@
1
+ #!/usr/bin/ruby
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/ruby
2
+
3
+
@@ -0,0 +1 @@
1
+ #!/usr/bin/ruby
@@ -0,0 +1 @@
1
+ #!/usr/bin/ruby
metadata ADDED
@@ -0,0 +1,134 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: spectools
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Donavan Pantke
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-03-27 00:00:00 -04:00
13
+ default_executable:
14
+ dependencies: []
15
+
16
+ description: A utility suite for CA's SPECTRUM Network Fault Manager
17
+ email: spectools-general@rubyforge.org
18
+ executables: []
19
+
20
+ extensions: []
21
+
22
+ extra_rdoc_files: []
23
+
24
+ files:
25
+ - TODO
26
+ - CHANGELOG.txt
27
+ - Manifest.txt
28
+ - README.txt
29
+ - README.vnmsh.txt
30
+ - Rakefile
31
+ - lib/spectools.rb
32
+ - lib/spectools/version.rb
33
+ - lib/vnmsh.rb
34
+ - test/data/connect.success
35
+ - test/data/create.alarm
36
+ - test/data/create.association
37
+ - test/data/create.model
38
+ - test/data/create.model.ip
39
+ - test/data/destroy.alarm
40
+ - test/data/destroy.association
41
+ - test/data/destroy.model
42
+ - test/data/seek
43
+ - test/data/seek.-s
44
+ - test/data/show.alarms
45
+ - test/data/show.alarms-a
46
+ - test/data/show.alarms-a-x
47
+ - test/data/show.alarms-x
48
+ - test/data/show.alarms.mh
49
+ - test/data/show.associations
50
+ - test/data/show.attributes
51
+ - test/data/show.attributes.attr
52
+ - test/data/show.attributes.attriid
53
+ - test/data/show.attributes.attrname
54
+ - test/data/show.attributes.attrr
55
+ - test/data/show.attributes.enum
56
+ - test/data/show.attributes.flags
57
+ - test/data/show.attributes.mth
58
+ - test/data/show.attributes.mth.attrr
59
+ - test/data/show.children
60
+ - test/data/show.children.rel
61
+ - test/data/show.devices
62
+ - test/data/show.enumerations
63
+ - test/data/show.enumerations.attr
64
+ - test/data/show.enumerations.mth
65
+ - test/data/show.events
66
+ - test/data/show.events-a
67
+ - test/data/show.events-n5
68
+ - test/data/show.events-x-n5
69
+ - test/data/show.inheritance
70
+ - test/data/show.landscapes
71
+ - test/data/show.models
72
+ - test/data/show.models.mhr
73
+ - test/data/show.models.mname
74
+ - test/data/show.models.mth
75
+ - test/data/show.parents
76
+ - test/data/show.relations
77
+ - test/data/show.rules
78
+ - test/data/show.types
79
+ - test/data/show.types.flags
80
+ - test/data/show.types.mthr
81
+ - test/data/show.types.mtname
82
+ - test/data/show.watch
83
+ - test/data/test.reconnect
84
+ - test/data/update.alarm
85
+ - test/data/update.model
86
+ - test/test_helper.rb
87
+ - test/test_spectools.rb
88
+ - test/test_vnmsh.rb
89
+ - test/testcmds/ack
90
+ - test/testcmds/connect
91
+ - test/testcmds/create
92
+ - test/testcmds/destroy
93
+ - test/testcmds/disconnect
94
+ - test/testcmds/seek
95
+ - test/testcmds/show
96
+ - test/testcmds/update
97
+ - test/vnmsh/ack
98
+ - test/vnmsh/connect
99
+ - test/vnmsh/create
100
+ - test/vnmsh/destroy
101
+ - test/vnmsh/disconnect
102
+ - test/vnmsh/seek
103
+ - test/vnmsh/show
104
+ - test/vnmsh/update
105
+ has_rdoc: true
106
+ homepage: http://spectools.rubyforge.org
107
+ post_install_message:
108
+ rdoc_options: []
109
+
110
+ require_paths:
111
+ - lib
112
+ required_ruby_version: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: "0"
117
+ version:
118
+ required_rubygems_version: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: "0"
123
+ version:
124
+ requirements: []
125
+
126
+ rubyforge_project: spectools
127
+ rubygems_version: 1.0.1
128
+ signing_key:
129
+ specification_version: 2
130
+ summary: A utility suite for CA's SPECTRUM Network Fault Manager
131
+ test_files:
132
+ - test/test_spectools.rb
133
+ - test/test_vnmsh.rb
134
+ - test/test_helper.rb