cukesparse 2.0.4 → 2.0.5

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: eacd97baa5155165f634e646ab71abaf507b6e80
4
- data.tar.gz: 5ab515477c7f676445efd57eefb4ce1c7b021f82
3
+ metadata.gz: 5c90d215f8fb5a25a8ac4d3118c9f5fa051cb82a
4
+ data.tar.gz: 3859761458f24dac7158f86e8c1dfdfee201227a
5
5
  SHA512:
6
- metadata.gz: 2f35009d8818d279c0cd30dece295e13c1f1bc0d590adc6363f6bb2fcacbc894d2dff7f773c3ed3600b1f82a4e6110427362167984826130c9cea7f885d98438
7
- data.tar.gz: 6f6376404ddaa18861c0e57441c31fb1a128d3b784ac125c8135cc3e689c12ff5ae62d4612811f02650ea46c1413db04df8ef29299b9eb97fb1a30a0b62e55c4
6
+ metadata.gz: dc10ea17d2ee538d8471837fad7aa77842f9733abcd8de6241328b557236b43fe85d740ac146730618d7699670ff67b6f48bc2ceca7d93ec7e31f167d90dd927
7
+ data.tar.gz: 34781891aa0413c0b4148c2cb9d6289e6d39413a9399f658443823eed6be423d603c729fc92cde7014cebb01a5f37ba08ed6fe4942d596eca81976e94d6c76ae
data/.travis.yml CHANGED
@@ -3,4 +3,4 @@ rvm:
3
3
  - 2.0.0
4
4
  - 1.9.3
5
5
 
6
- script: bundle exec rspec spec/cukesparse_spec.rb
6
+ script: bundle exec rspec
data/LICENCE.md ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2013 Jonathan Chrisp
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md CHANGED
@@ -1,3 +1,4 @@
1
+ [![Gem Version](https://badge.fury.io/rb/cukesparse.png)](http://badge.fury.io/rb/cukesparse)
1
2
  [![Build Status](https://travis-ci.org/jonathanchrisp/cukesparse.png?branch=master)](https://travis-ci.org/jonathanchrisp/cukesparse)
2
3
  [![Dependency Status](https://gemnasium.com/jonathanchrisp/cukesparse.png)](https://gemnasium.com/jonathanchrisp/cukesparse)
3
4
  [![Coverage Status](https://coveralls.io/repos/jonathanchrisp/cukesparse/badge.png?branch=master)](https://coveralls.io/r/jonathanchrisp/cukesparse)
@@ -141,7 +142,7 @@ You would get the following returned in the console:
141
142
  ## Tests
142
143
  There are a number of unit tests which are included as part of this project which are run by rspec. Please run:
143
144
 
144
- rspec spec/cukesparse_spec.rb
145
+ rspec spec/
145
146
 
146
147
  ## Feedback
147
148
  I would be more than happy to recieve feedback, please email me at: jonathan.chrisp@gmail.com
data/cukesparse.gemspec CHANGED
@@ -3,7 +3,7 @@ require File.dirname(__FILE__) + "/lib/cukesparse/version"
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'cukesparse'
5
5
  s.version = Cukesparse::VERSION
6
- s.date = '2013-08-17'
6
+ s.date = '2013-08-27'
7
7
  s.summary = 'Cukesparse - cucumber command line parser'
8
8
  s.description = 'A simple command line parser to pass arguments into Cucumber'
9
9
  s.author = 'Jonathan Chrisp'
data/lib/cukesparse.rb CHANGED
@@ -60,9 +60,9 @@ module Cukesparse
60
60
  unless @task.empty? && @parameters.empty?
61
61
  @command.push 'bundle exec cucumber'
62
62
  @command.push '--require features/'
63
- @command.push task['feature_order'].join(' ')
63
+ @command.push task['feature_order'].join(' ') if task.has_key? 'feature_order'
64
64
  @parameters.each { |k,v| @command.push(v) }
65
- @command.push task['defaults'].join(' ')
65
+ @command.push task['defaults'].join(' ') if task.has_key? 'defaults'
66
66
  end
67
67
 
68
68
  if @parameters.has_key? :debug
@@ -232,6 +232,13 @@ module Cukesparse
232
232
  @parameters[:yposition] = "YPOSITION=#{params[1]}"
233
233
  end
234
234
  end
235
+
236
+ def reset!
237
+ @config = nil
238
+ @parameters = {}
239
+ @task = {}
240
+ @command = []
241
+ end
235
242
  end
236
243
 
237
244
  # defaults
@@ -1,3 +1,3 @@
1
1
  module Cukesparse
2
- VERSION = "2.0.4"
2
+ VERSION = "2.0.5"
3
3
  end
@@ -0,0 +1,24 @@
1
+ require 'helper'
2
+
3
+ describe '.add_multiple' do
4
+ before :each do
5
+ ARGV.clear
6
+ Cukesparse.reset!
7
+ end
8
+
9
+ context "when run with a single value" do
10
+ it "will add a key to parameters with the correct array value" do
11
+ Cukesparse.add_multiple(:tags, 'abc')
12
+ Cukesparse.parameters.should have_key(:tags)
13
+ Cukesparse.parameters[:tags].should eql ['--tags abc']
14
+ end
15
+ end
16
+
17
+ context "when run with multiple values" do
18
+ it "will add a key to parameters with the correct array values" do
19
+ Cukesparse.add_multiple(:tags, ['abc', 'def', 'hij'])
20
+ Cukesparse.parameters.should have_key(:tags)
21
+ Cukesparse.parameters[:tags].should eql ['--tags abc', '--tags def', '--tags hij']
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,16 @@
1
+ require 'helper'
2
+
3
+ describe '.check_for_parameters' do
4
+ before :each do
5
+ ARGV.clear
6
+ Cukesparse.reset!
7
+ end
8
+
9
+ context "when run with no paramaters defined" do
10
+ it "will return an warning if no parameters are provided" do
11
+ Cukesparse.instance_variable_set(:@parameters, {})
12
+ Cukesparse.should_receive("puts").with("\e[0;33;49mWARN: No parameters passed to cukesparse\e[0m")
13
+ Cukesparse.check_for_parameters
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,37 @@
1
+ require 'helper'
2
+
3
+ describe '.check_for_task' do
4
+ before :each do
5
+ ARGV.clear
6
+ Cukesparse.reset!
7
+ end
8
+
9
+ context "when run with no task defined" do
10
+ it "will return an error if no task is provided" do
11
+ ARGV.push('incorrect_task')
12
+ Cukesparse.config = {}
13
+ Cukesparse.should_receive("abort").with("\e[4;31;49mERROR: No task was passed to cukesparse!\e[0m")
14
+ Cukesparse.check_for_task
15
+ end
16
+ end
17
+
18
+ context "when run with multiple tasks defined" do
19
+ it "will return an error if multiple tasks are provided" do
20
+ ARGV.push('test_task', 'test_task1')
21
+ Cukesparse.configure {|c| c.config_file = File.join(fixture_path, 'valid_tasks.yml')}
22
+ Cukesparse.load_config
23
+ Cukesparse.should_receive("puts").with("\e[0;33;49mWARN: Multiple tasks have been passed!\e[0m")
24
+ Cukesparse.check_for_task
25
+ end
26
+ end
27
+
28
+ context "when task is defined the @task instance variable will return a hash" do
29
+ it "will set the task in @task" do
30
+ ARGV.push('test_task')
31
+ Cukesparse.configure {|c| c.config_file = File.join(fixture_path, 'valid_tasks.yml')}
32
+ Cukesparse.load_config
33
+ Cukesparse.check_for_task
34
+ Cukesparse.task.should be_an_instance_of Hash
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,24 @@
1
+ require 'helper'
2
+
3
+ describe '.execute' do
4
+ before :each do
5
+ ARGV.clear
6
+ Cukesparse.reset!
7
+ end
8
+
9
+ context "when run with no arguments" do
10
+ it "should display a cukesparse information message" do
11
+ Cukesparse.should_receive("puts").with("\e[0;33;49mCukesparse - a simple command line parser to pass arguments into Cucumber!\e[0m")
12
+ Cukesparse.execute
13
+ end
14
+ end
15
+
16
+ context "when run with the tasks argument" do
17
+ it "should display the tasks within the config file" do
18
+ Cukesparse.configure {|c| c.config_file = File.join(fixture_path, 'valid_tasks.yml')}
19
+ ARGV.push('tasks')
20
+ Cukesparse.should_receive("puts").with("\e[0;33;49mYou have the following tasks within your config file: test_task, test_task1, no_defaults\e[0m")
21
+ Cukesparse.execute
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,24 @@
1
+ require 'helper'
2
+
3
+ describe '.load_config' do
4
+ before :each do
5
+ ARGV.clear
6
+ Cukesparse.reset!
7
+ end
8
+
9
+ context "when run with incorrect task file" do
10
+ it "will return an error if the task file fails to parse" do
11
+ Cukesparse.configure {|c| c.config_file = File.join(fixture_path, 'invalid_tasks.yml')}
12
+ Cukesparse.should_receive("abort").with("\e[4;31;49mYour tasks file did not parse as expected!\e[0m")
13
+ Cukesparse.load_config
14
+ end
15
+ end
16
+
17
+ context "when run with task file missing" do
18
+ it "will return an error if the task file is missing" do
19
+ Cukesparse.configure {|c| c.config_file = File.join(fixture_path, 'missing_tasks.yml')}
20
+ Cukesparse.should_receive("abort").with("\e[4;31;49mYour tasks file is missing!\e[0m")
21
+ Cukesparse.load_config
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,603 @@
1
+ require 'helper'
2
+
3
+ describe '.parse_argv' do
4
+ before :each do
5
+ ARGV.clear
6
+ Cukesparse.reset!
7
+ end
8
+
9
+ context "when run with incorrect ARGV array" do
10
+ it "will return an error if arguments are nil" do
11
+ ARGV.push(nil)
12
+ Cukesparse.should_receive("abort").with("\e[4;31;49mError processing passed CLI arguments!\e[0m")
13
+ Cukesparse.parse_argv
14
+ end
15
+ end
16
+
17
+ context "when passed the -t parameter" do
18
+ before :each do
19
+ ARGV.push('test_task', '-t', 'test')
20
+ Cukesparse.parse_argv
21
+ end
22
+
23
+ it "should have a parameter of tags" do
24
+ Cukesparse.parameters.should have_key :tags
25
+ end
26
+
27
+ it "should have a tags parameter value of --tags test" do
28
+ Cukesparse.parameters[:tags].should eql ['--tags test']
29
+ end
30
+ end
31
+
32
+ context "when passed the -n parameter" do
33
+ before :each do
34
+ ARGV.push('test_task', '-n', 'name_test')
35
+ Cukesparse.parse_argv
36
+ end
37
+
38
+ it "should have a parameter of name" do
39
+ Cukesparse.parameters.should have_key :name
40
+ end
41
+
42
+ it "should have a name parameter value of test" do
43
+ Cukesparse.parameters[:name].should eql ['--name name_test']
44
+ end
45
+ end
46
+
47
+ context "when passed the -name parameter" do
48
+ before :each do
49
+ ARGV.push('test_task', '--name', 'name_test')
50
+ Cukesparse.parse_argv
51
+ end
52
+
53
+ it "should have a parameter of name" do
54
+ Cukesparse.parameters.should have_key :name
55
+ end
56
+
57
+ it "should have a name parameter value of test" do
58
+ Cukesparse.parameters[:name].should eql ['--name name_test']
59
+ end
60
+ end
61
+
62
+ context "when passed the -f parameter" do
63
+ before :each do
64
+ ARGV.push('test_task', '-f', 'pretty')
65
+ Cukesparse.parse_argv
66
+ end
67
+
68
+ it "should have a parameter of format" do
69
+ Cukesparse.parameters.should have_key :format
70
+ end
71
+
72
+ it "should have a tags parameter value of test" do
73
+ Cukesparse.parameters[:format].should eql '--format pretty'
74
+ end
75
+ end
76
+
77
+ context "when passed the --format parameter" do
78
+ before :each do
79
+ ARGV.push('test_task', '--format', 'pretty')
80
+ Cukesparse.parse_argv
81
+ end
82
+
83
+ it "should have a parameter of format" do
84
+ Cukesparse.parameters.should have_key :format
85
+ end
86
+
87
+ it "should have a tags parameter value of test" do
88
+ Cukesparse.parameters[:format].should eql '--format pretty'
89
+ end
90
+ end
91
+
92
+ context "when passed the -d parameter" do
93
+ before :each do
94
+ ARGV.push('test_task', '-d')
95
+ Cukesparse.parameters = {}
96
+ Cukesparse.parse_argv
97
+ end
98
+
99
+ it "should have a parameter of name" do
100
+ Cukesparse.parameters.should have_key :dry_run
101
+ end
102
+
103
+ it "should have a dry_run parameter value of --dry-run" do
104
+ Cukesparse.parameters[:dry_run].should eql '--dry-run'
105
+ end
106
+ end
107
+
108
+ context "when passed the --dry-run parameter" do
109
+ before :each do
110
+ ARGV.push('test_task', '--dry-run')
111
+ Cukesparse.parse_argv
112
+ end
113
+
114
+ it "should have a parameter of dry_run" do
115
+ Cukesparse.parameters.should have_key :dry_run
116
+ end
117
+
118
+ it "should have a dry_run parameter value of --dry-run" do
119
+ Cukesparse.parameters[:dry_run].should eql '--dry-run'
120
+ end
121
+ end
122
+
123
+ context "when passed the -v parameter" do
124
+ before :each do
125
+ ARGV.push('test_task', '-v')
126
+ Cukesparse.parse_argv
127
+ end
128
+
129
+ it "should have a parameter of verbose" do
130
+ Cukesparse.parameters.should have_key :verbose
131
+ end
132
+
133
+ it "should have a verbose parameter value of --verbose" do
134
+ Cukesparse.parameters[:verbose].should eql '--verbose'
135
+ end
136
+ end
137
+
138
+ context "when passed the --verbose parameter" do
139
+ before :each do
140
+ ARGV.push('test_task', '--verbose')
141
+ Cukesparse.parse_argv
142
+ end
143
+
144
+ it "should have a parameter of verbose" do
145
+ Cukesparse.parameters.should have_key :verbose
146
+ end
147
+
148
+ it "should have a verbose parameter value of --verbose" do
149
+ Cukesparse.parameters[:verbose].should eql '--verbose'
150
+ end
151
+ end
152
+
153
+ context "when passed the -s parameter" do
154
+ before :each do
155
+ ARGV.push('test_task', '-s')
156
+ Cukesparse.parse_argv
157
+ end
158
+
159
+ it "should have a parameter of strict" do
160
+ Cukesparse.parameters.should have_key :strict
161
+ end
162
+
163
+ it "should have a strict parameter value of --strict" do
164
+ Cukesparse.parameters[:strict].should eql '--strict'
165
+ end
166
+ end
167
+
168
+ context "when passed the --strict parameter" do
169
+ before :each do
170
+ ARGV.push('test_task', '-s')
171
+ Cukesparse.parse_argv
172
+ end
173
+
174
+ it "should have a parameter of --strict" do
175
+ Cukesparse.parameters.should have_key :strict
176
+ end
177
+
178
+ it "should have a strict parameter value of --strict" do
179
+ Cukesparse.parameters[:strict].should eql '--strict'
180
+ end
181
+ end
182
+
183
+ context "when passed the -g parameter" do
184
+ before :each do
185
+ ARGV.push('test_task', '-g')
186
+ Cukesparse.parse_argv
187
+ end
188
+
189
+ it "should have a parameter of --guess" do
190
+ Cukesparse.parameters.should have_key :guess
191
+ end
192
+
193
+ it "should have a strict parameter value of --guess" do
194
+ Cukesparse.parameters[:guess].should eql '--guess'
195
+ end
196
+ end
197
+
198
+ context "when passed the --guess parameter" do
199
+ before :each do
200
+ ARGV.push('test_task', '--guess')
201
+ Cukesparse.parse_argv
202
+ end
203
+
204
+ it "should have a parameter of --guess" do
205
+ Cukesparse.parameters.should have_key :guess
206
+ end
207
+
208
+ it "should have a strict parameter value of --guess" do
209
+ Cukesparse.parameters[:guess].should eql '--guess'
210
+ end
211
+ end
212
+
213
+ context "when passed the -x parameter" do
214
+ before :each do
215
+ ARGV.push('test_task', '-x')
216
+ Cukesparse.parse_argv
217
+ end
218
+
219
+ it "should have a parameter of --expand" do
220
+ Cukesparse.parameters.should have_key :expand
221
+ end
222
+
223
+ it "should have a strict parameter value of --expand" do
224
+ Cukesparse.parameters[:expand].should eql '--expand'
225
+ end
226
+ end
227
+
228
+ context "when passed the --expand parameter" do
229
+ before :each do
230
+ ARGV.push('test_task', '--expand')
231
+ Cukesparse.parse_argv
232
+ end
233
+
234
+ it "should have a parameter of --expand" do
235
+ Cukesparse.parameters.should have_key :expand
236
+ end
237
+
238
+ it "should have a strict parameter value of --expand" do
239
+ Cukesparse.parameters[:expand].should eql '--expand'
240
+ end
241
+ end
242
+
243
+ context "when passed the -e parameter" do
244
+ before :each do
245
+ ARGV.push('test_task', '-e', 'test_environment')
246
+ Cukesparse.parse_argv
247
+ end
248
+
249
+ it "should have a parameter of environment" do
250
+ Cukesparse.parameters.should have_key :environment
251
+ end
252
+
253
+ it "should have a environment parameter value of ENVIRONMENT=test_environment" do
254
+ Cukesparse.parameters[:environment].should eql 'ENVIRONMENT=test_environment'
255
+ end
256
+ end
257
+
258
+ context "when passed the --environment parameter" do
259
+ before :each do
260
+ ARGV.push('test_task', '--environment', 'test_environment')
261
+ Cukesparse.parse_argv
262
+ end
263
+
264
+ it "should have a parameter of environment" do
265
+ Cukesparse.parameters.should have_key :environment
266
+ end
267
+
268
+ it "should have a environment parameter value of ENVIRONMENT=test_environment" do
269
+ Cukesparse.parameters[:environment].should eql 'ENVIRONMENT=test_environment'
270
+ end
271
+ end
272
+
273
+ context "when passed the -l parameter" do
274
+ before :each do
275
+ ARGV.push('test_task', '-l', 'debug')
276
+ Cukesparse.parse_argv
277
+ end
278
+
279
+ it "should have a parameter of loglevel" do
280
+ Cukesparse.parameters.should have_key :log_level
281
+ end
282
+
283
+ it "should have a loglevel parameter value of LOG_LEVEL=debug" do
284
+ Cukesparse.parameters[:log_level].should eql 'LOG_LEVEL=debug'
285
+ end
286
+ end
287
+
288
+ context "when passed the --loglevel parameter" do
289
+ before :each do
290
+ ARGV.push('test_task', '--loglevel', 'debug')
291
+ Cukesparse.parse_argv
292
+ end
293
+
294
+ it "should have a parameter of loglevel" do
295
+ Cukesparse.parameters.should have_key :log_level
296
+ end
297
+
298
+ it "should have a loglevel parameter value of LOG_LEVEL=debug" do
299
+ Cukesparse.parameters[:log_level].should eql 'LOG_LEVEL=debug'
300
+ end
301
+ end
302
+
303
+ context "when passed the -c parameter" do
304
+ before :each do
305
+ ARGV.push('test_task', '-c', 'browser')
306
+ Cukesparse.parse_argv
307
+ end
308
+
309
+ it "should have a parameter of controller" do
310
+ Cukesparse.parameters.should have_key :controller
311
+ end
312
+
313
+ it "should have a controller parameter value of CONTROLLER=browser" do
314
+ Cukesparse.parameters[:controller].should eql 'CONTROLLER=browser'
315
+ end
316
+ end
317
+
318
+ context "when passed the --controller parameter" do
319
+ before :each do
320
+ ARGV.push('test_task', '--controller', 'browser')
321
+ Cukesparse.parse_argv
322
+ end
323
+
324
+ it "should have a parameter of controller" do
325
+ Cukesparse.parameters.should have_key :controller
326
+ end
327
+
328
+ it "should have a controller parameter value of CONTROLLER=browser" do
329
+ Cukesparse.parameters[:controller].should eql 'CONTROLLER=browser'
330
+ end
331
+ end
332
+
333
+ context "when passed the -h parameter" do
334
+ before :each do
335
+ ARGV.push('test_task', '-h')
336
+ Cukesparse.parse_argv
337
+ end
338
+
339
+ it "should have a parameter of headless" do
340
+ Cukesparse.parameters.should have_key :headless
341
+ end
342
+
343
+ it "should have a headless parameter value of HEADLESS=TRUE" do
344
+ Cukesparse.parameters[:headless].should eql 'HEADLESS=TRUE'
345
+ end
346
+ end
347
+
348
+ context "when passed the --headless parameter" do
349
+ before :each do
350
+ ARGV.push('test_task', '--headless')
351
+ Cukesparse.parse_argv
352
+ end
353
+
354
+ it "should have a parameter of headless" do
355
+ Cukesparse.parameters.should have_key :headless
356
+ end
357
+
358
+ it "should have a headless parameter value of HEADLESS=TRUE" do
359
+ Cukesparse.parameters[:headless].should eql 'HEADLESS=TRUE'
360
+ end
361
+ end
362
+
363
+ context "when passed the --cleanup parameter" do
364
+ before :each do
365
+ ARGV.push('test_task', '--cleanup')
366
+ Cukesparse.parse_argv
367
+ end
368
+
369
+ it "should have a parameter of cleanup" do
370
+ Cukesparse.parameters.should have_key :cleanup
371
+ end
372
+
373
+ it "should have a cleanup parameter value of CLEANUP=TRUE" do
374
+ Cukesparse.parameters[:cleanup].should eql 'CLEANUP=TRUE'
375
+ end
376
+ end
377
+
378
+ context "when passed the --no-cleanup parameter" do
379
+ before :each do
380
+ ARGV.push('test_task', '--no-cleanup')
381
+ Cukesparse.parse_argv
382
+ end
383
+
384
+ it "should have a parameter of cleanup" do
385
+ Cukesparse.parameters.should have_key :cleanup
386
+ end
387
+
388
+ it "should have a cleanup parameter value of CLEANUP=FALSE" do
389
+ Cukesparse.parameters[:cleanup].should eql 'CLEANUP=FALSE'
390
+ end
391
+ end
392
+
393
+ context "when passed the --database parameter" do
394
+ before :each do
395
+ ARGV.push('test_task', '--database')
396
+ Cukesparse.parse_argv
397
+ end
398
+
399
+ it "should have a parameter of database" do
400
+ Cukesparse.parameters.should have_key :database
401
+ end
402
+
403
+ it "should have a database parameter value of DATABASE=TRUE" do
404
+ Cukesparse.parameters[:database].should eql 'DATABASE=TRUE'
405
+ end
406
+ end
407
+
408
+ context "when passed the --jenkins parameter" do
409
+ before :each do
410
+ ARGV.push('test_task', '--jenkins')
411
+ Cukesparse.parse_argv
412
+ end
413
+
414
+ it "should have a parameter of jenkins" do
415
+ Cukesparse.parameters.should have_key :jenkins
416
+ end
417
+
418
+ it "should have a jenkins parameter value of JENKINS=TRUE" do
419
+ Cukesparse.parameters[:jenkins].should eql 'JENKINS=TRUE'
420
+ end
421
+ end
422
+
423
+ context "when passed the --retries parameter" do
424
+ before :each do
425
+ ARGV.push('test_task', '--retries', '5')
426
+ Cukesparse.parse_argv
427
+ end
428
+
429
+ it "should have a parameter of retries" do
430
+ Cukesparse.parameters.should have_key :retries
431
+ end
432
+
433
+ it "should have a retries parameter value of RETRIES=5" do
434
+ Cukesparse.parameters[:retries].should eql 'RETRIES=5'
435
+ end
436
+ end
437
+
438
+ context "when passed the --timeout parameter" do
439
+ before :each do
440
+ ARGV.push('test_task', '--timeout', '10')
441
+ Cukesparse.parse_argv
442
+ end
443
+
444
+ it "should have a parameter of timeout" do
445
+ Cukesparse.parameters.should have_key :timeout
446
+ end
447
+
448
+ it "should have a timeout parameter value of TIMEOUT=10" do
449
+ Cukesparse.parameters[:timeout].should eql 'TIMEOUT=10'
450
+ end
451
+ end
452
+
453
+ context "when passed the --screen parameter" do
454
+ before :each do
455
+ ARGV.push('test_task', '--screen', '1280/1024')
456
+ Cukesparse.parse_argv
457
+ end
458
+
459
+ it "should have a parameter of screenwidth" do
460
+ Cukesparse.parameters.should have_key :screenwidth
461
+ end
462
+
463
+ it "should have a parameter of screenheight" do
464
+ Cukesparse.parameters.should have_key :screenheight
465
+ end
466
+
467
+ it "should have a screenwidth parameter value of SCREENWIDTH=1280" do
468
+ Cukesparse.parameters[:screenwidth].should eql 'SCREENWIDTH=1280'
469
+ end
470
+
471
+ it "should have a screenheight parameter value of SCREENHEIGHT=1024" do
472
+ Cukesparse.parameters[:screenheight].should eql 'SCREENHEIGHT=1024'
473
+ end
474
+ end
475
+
476
+ context "when passed the --position parameter" do
477
+ before :each do
478
+ ARGV.push('test_task', '--position', '0/0')
479
+ Cukesparse.parse_argv
480
+ end
481
+
482
+ it "should have a parameter of xposition" do
483
+ Cukesparse.parameters.should have_key :xposition
484
+ end
485
+
486
+ it "should have a parameter of yposition" do
487
+ Cukesparse.parameters.should have_key :yposition
488
+ end
489
+
490
+ it "should have a xposition parameter value of XPOSITION=0" do
491
+ Cukesparse.parameters[:xposition].should eql 'XPOSITION=0'
492
+ end
493
+
494
+ it "should have a yposition parameter value of YPOSITION=0" do
495
+ Cukesparse.parameters[:yposition].should eql 'YPOSITION=0'
496
+ end
497
+ end
498
+
499
+ context "when passed the --screenwidth parameter" do
500
+ before :each do
501
+ ARGV.push('test_task', '--screenwidth', '1280')
502
+ Cukesparse.parse_argv
503
+ end
504
+
505
+ it "should have a parameter of screenwidth" do
506
+ Cukesparse.parameters.should have_key :screen_width
507
+ end
508
+
509
+ it "should have a screenwidth parameter value of SCREENWIDTH=1280" do
510
+ Cukesparse.parameters[:screen_width].should eql 'SCREENWIDTH=1280'
511
+ end
512
+ end
513
+
514
+ context "when passed the --screenheight parameter" do
515
+ before :each do
516
+ ARGV.push('test_task', '--screenheight', '1024')
517
+ Cukesparse.parse_argv
518
+ end
519
+
520
+ it "should have a parameter of screenheight" do
521
+ Cukesparse.parameters.should have_key :screen_height
522
+ end
523
+
524
+ it "should have a screenheight parameter value of SCREENHEIGHT=1024" do
525
+ Cukesparse.parameters[:screen_height].should eql 'SCREENHEIGHT=1024'
526
+ end
527
+ end
528
+
529
+ context "when passed the --xposition parameter" do
530
+ before :each do
531
+ ARGV.push('test_task', '--xposition', '100')
532
+ Cukesparse.parse_argv
533
+ end
534
+
535
+ it "should have a parameter of xposition" do
536
+ Cukesparse.parameters.should have_key :xposition
537
+ end
538
+
539
+ it "should have a xposition parameter value of XPOSITION=100" do
540
+ Cukesparse.parameters[:xposition].should eql 'XPOSITION=100'
541
+ end
542
+ end
543
+
544
+ context "when passed the --yposition parameter" do
545
+ before :each do
546
+ ARGV.push('test_task', '--yposition', '100')
547
+ Cukesparse.parse_argv
548
+ end
549
+
550
+ it "should have a parameter of yposition" do
551
+ Cukesparse.parameters.should have_key :yposition
552
+ end
553
+
554
+ it "should have a yposition parameter value of YPOSITION=100" do
555
+ Cukesparse.parameters[:yposition].should eql 'YPOSITION=100'
556
+ end
557
+ end
558
+
559
+ context "when passed the -H parameter" do
560
+ before :each do
561
+ ARGV.push('test_task', '-H')
562
+ Cukesparse.parse_argv
563
+ end
564
+
565
+ it "should have a parameter of highlight" do
566
+ Cukesparse.parameters.should have_key :highlight
567
+ end
568
+
569
+ it "should have a highlight parameter value of HIGHLIGHT=TRUE" do
570
+ Cukesparse.parameters[:highlight].should eql 'HIGHLIGHT=TRUE'
571
+ end
572
+ end
573
+
574
+ context "when passed the --highlight parameter" do
575
+ before :each do
576
+ ARGV.push('test_task', '--highlight')
577
+ Cukesparse.parse_argv
578
+ end
579
+
580
+ it "should have a parameter of highlight" do
581
+ Cukesparse.parameters.should have_key :highlight
582
+ end
583
+
584
+ it "should have a highlight parameter value of HIGHLIGHT=TRUE" do
585
+ Cukesparse.parameters[:highlight].should eql 'HIGHLIGHT=TRUE'
586
+ end
587
+ end
588
+
589
+ context "when passed the --debug parameter" do
590
+ before :each do
591
+ ARGV.push('test_task', '--debug')
592
+ Cukesparse.parse_argv
593
+ end
594
+
595
+ it "should have a parameter of debug" do
596
+ Cukesparse.parameters.should have_key :debug
597
+ end
598
+
599
+ it "should have a debug parameter value of DEBUG=TRUE" do
600
+ Cukesparse.parameters[:debug].should eql 'DEBUG=TRUE'
601
+ end
602
+ end
603
+ end