cukesparse 2.0.5 → 2.1.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.
- checksums.yaml +4 -4
- data/bin/cukesparse +1 -1
- data/cukesparse.gemspec +1 -1
- data/lib/cukesparse.rb +106 -146
- data/lib/cukesparse/version.rb +1 -1
- data/spec/cukesparse/add_multiple_spec.rb +6 -6
- data/spec/cukesparse/argv_spec.rb +14 -0
- data/spec/cukesparse/check_for_parameters_spec.rb +0 -1
- data/spec/cukesparse/check_for_task_spec.rb +2 -3
- data/spec/cukesparse/debug_spec.rb +25 -0
- data/spec/cukesparse/execute_spec.rb +2 -2
- data/spec/cukesparse/load_config_spec.rb +2 -2
- data/spec/cukesparse/parse_argv_spec.rb +80 -80
- data/spec/cukesparse/reset_spec.rb +26 -0
- data/spec/cukesparse/set_cucumber_defaults_spec.rb +33 -20
- data/spec/cukesparse/set_runtime_defaults_spec.rb +28 -28
- data/spec/cukesparse/split_parameters_spec.rb +12 -12
- data/spec/fixtures/valid_tasks.yml +11 -0
- data/spec/helper.rb +2 -1
- metadata +9 -3
@@ -0,0 +1,26 @@
|
|
1
|
+
require 'helper'
|
2
|
+
|
3
|
+
describe '.reset!' do
|
4
|
+
before :each do
|
5
|
+
ARGV.clear
|
6
|
+
Cukesparse.reset!
|
7
|
+
end
|
8
|
+
|
9
|
+
context "when run" do
|
10
|
+
it "will set config to be an empty hash" do
|
11
|
+
Cukesparse.config.should be_empty
|
12
|
+
end
|
13
|
+
|
14
|
+
it "will set parameters to be an empty hash" do
|
15
|
+
Cukesparse.parameters.should be_empty
|
16
|
+
end
|
17
|
+
|
18
|
+
it "will set task to be an empty hash" do
|
19
|
+
Cukesparse.task.should be_empty
|
20
|
+
end
|
21
|
+
|
22
|
+
it "will set command to be an empty array" do
|
23
|
+
Cukesparse.command.should be_empty
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -9,7 +9,7 @@ describe '.set_cucumber_defaults' do
|
|
9
9
|
context "when run with no cucumber_defaults defined" do
|
10
10
|
it "will return a warning" do
|
11
11
|
ARGV.push('no_defaults')
|
12
|
-
Cukesparse.
|
12
|
+
Cukesparse.config_file = File.join(fixture_path, 'valid_tasks.yml')
|
13
13
|
Cukesparse.load_config
|
14
14
|
Cukesparse.check_for_task
|
15
15
|
Cukesparse.should_receive("puts").with("\e[0;33;49mWARN: The task has no cucumber defaults!\e[0m")
|
@@ -17,37 +17,50 @@ describe '.set_cucumber_defaults' do
|
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
20
|
+
context "when run with unknown argument passed" do
|
21
|
+
it "will return a warning" do
|
22
|
+
ARGV.push('cucumber_default_unknown', '-t', 'test')
|
23
|
+
Cukesparse.config_file = File.join(fixture_path, 'valid_tasks.yml')
|
24
|
+
Cukesparse.load_config
|
25
|
+
Cukesparse.parse_argv
|
26
|
+
Cukesparse.check_for_task
|
27
|
+
Cukesparse.check_for_parameters
|
28
|
+
Cukesparse.should_receive("puts").with("\e[0;33;49mWARN: The cucumber default testing isn't a known option!\e[0m")
|
29
|
+
Cukesparse.set_cucumber_defaults
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
20
33
|
context "when run with no arguments passed" do
|
21
34
|
before do
|
22
35
|
ARGV.push('test_task', '-t', 'test')
|
23
|
-
Cukesparse.
|
24
|
-
Cukesparse.
|
25
|
-
Cukesparse.
|
36
|
+
Cukesparse.config_file = File.join(fixture_path, 'valid_tasks.yml')
|
37
|
+
Cukesparse.load_config
|
38
|
+
Cukesparse.parse_argv
|
26
39
|
Cukesparse.check_for_task
|
27
40
|
Cukesparse.check_for_parameters
|
28
41
|
Cukesparse.set_cucumber_defaults
|
29
42
|
end
|
30
43
|
|
31
44
|
it "will have cucumber default parameters" do
|
32
|
-
Cukesparse.parameters.should have_key
|
33
|
-
Cukesparse.parameters.should have_key
|
34
|
-
Cukesparse.parameters.should have_key
|
35
|
-
Cukesparse.parameters.should have_key
|
36
|
-
Cukesparse.parameters.should have_key
|
37
|
-
Cukesparse.parameters.should have_key
|
38
|
-
Cukesparse.parameters.should have_key
|
39
|
-
Cukesparse.parameters.should have_key
|
45
|
+
Cukesparse.parameters.should have_key 'format'
|
46
|
+
Cukesparse.parameters.should have_key 'name'
|
47
|
+
Cukesparse.parameters.should have_key 'tags'
|
48
|
+
Cukesparse.parameters.should have_key 'strict'
|
49
|
+
Cukesparse.parameters.should have_key 'verbose'
|
50
|
+
Cukesparse.parameters.should have_key 'dry_run'
|
51
|
+
Cukesparse.parameters.should have_key 'guess'
|
52
|
+
Cukesparse.parameters.should have_key 'expand'
|
40
53
|
end
|
41
54
|
|
42
55
|
it "will have the expected default runtime parameter values" do
|
43
|
-
Cukesparse.parameters[
|
44
|
-
Cukesparse.parameters[
|
45
|
-
Cukesparse.parameters[
|
46
|
-
Cukesparse.parameters[
|
47
|
-
Cukesparse.parameters[
|
48
|
-
Cukesparse.parameters[
|
49
|
-
Cukesparse.parameters[
|
50
|
-
Cukesparse.parameters[
|
56
|
+
Cukesparse.parameters['format'].should eql '--format pretty'
|
57
|
+
Cukesparse.parameters['name'].should eql ['--name feature1', '--name feature2']
|
58
|
+
Cukesparse.parameters['tags'].should eql ['--tags test', '--tags tags1', '--tags tags2']
|
59
|
+
Cukesparse.parameters['strict'].should eql '--strict'
|
60
|
+
Cukesparse.parameters['verbose'].should eql '--verbose'
|
61
|
+
Cukesparse.parameters['dry_run'].should eql '--dry-run'
|
62
|
+
Cukesparse.parameters['guess'].should eql '--guess'
|
63
|
+
Cukesparse.parameters['expand'].should eql '--expand'
|
51
64
|
end
|
52
65
|
end
|
53
66
|
end
|
@@ -9,7 +9,7 @@ describe '.set_runtime_defaults' do
|
|
9
9
|
context "when run with no runtime_defaults defined" do
|
10
10
|
it "will return a warning if no runtime_defaults are provided" do
|
11
11
|
ARGV.push('no_defaults')
|
12
|
-
Cukesparse.
|
12
|
+
Cukesparse.config_file = File.join(fixture_path, 'valid_tasks.yml')
|
13
13
|
Cukesparse.load_config
|
14
14
|
Cukesparse.check_for_task
|
15
15
|
Cukesparse.should_receive("puts").with("\e[0;33;49mWARN: The task has no runtime defaults!\e[0m")
|
@@ -20,42 +20,42 @@ describe '.set_runtime_defaults' do
|
|
20
20
|
context "when run" do
|
21
21
|
before do
|
22
22
|
ARGV.push('test_task', '-t', 'test')
|
23
|
-
Cukesparse.
|
24
|
-
Cukesparse.
|
25
|
-
Cukesparse.
|
23
|
+
Cukesparse.config_file = File.join(fixture_path, 'valid_tasks.yml')
|
24
|
+
Cukesparse.load_config
|
25
|
+
Cukesparse.parse_argv
|
26
26
|
Cukesparse.check_for_task
|
27
27
|
Cukesparse.check_for_parameters
|
28
28
|
Cukesparse.set_runtime_defaults
|
29
29
|
end
|
30
30
|
|
31
31
|
it "will have runtime default parameters" do
|
32
|
-
Cukesparse.parameters.should have_key
|
33
|
-
Cukesparse.parameters.should have_key
|
34
|
-
Cukesparse.parameters.should have_key
|
35
|
-
Cukesparse.parameters.should have_key
|
36
|
-
Cukesparse.parameters.should have_key
|
37
|
-
Cukesparse.parameters.should have_key
|
38
|
-
Cukesparse.parameters.should have_key
|
39
|
-
Cukesparse.parameters.should have_key
|
40
|
-
Cukesparse.parameters.should have_key
|
41
|
-
Cukesparse.parameters.should have_key
|
42
|
-
Cukesparse.parameters.should have_key
|
43
|
-
Cukesparse.parameters.should have_key
|
32
|
+
Cukesparse.parameters.should have_key 'environment'
|
33
|
+
Cukesparse.parameters.should have_key 'log_level'
|
34
|
+
Cukesparse.parameters.should have_key 'cleanup'
|
35
|
+
Cukesparse.parameters.should have_key 'database'
|
36
|
+
Cukesparse.parameters.should have_key 'jenkins'
|
37
|
+
Cukesparse.parameters.should have_key 'retries'
|
38
|
+
Cukesparse.parameters.should have_key 'timeout'
|
39
|
+
Cukesparse.parameters.should have_key 'screenwidth'
|
40
|
+
Cukesparse.parameters.should have_key 'screenheight'
|
41
|
+
Cukesparse.parameters.should have_key 'xposition'
|
42
|
+
Cukesparse.parameters.should have_key 'yposition'
|
43
|
+
Cukesparse.parameters.should have_key 'highlight'
|
44
44
|
end
|
45
45
|
|
46
46
|
it "will have the expected default runtime parameter values" do
|
47
|
-
Cukesparse.parameters[
|
48
|
-
Cukesparse.parameters[
|
49
|
-
Cukesparse.parameters[
|
50
|
-
Cukesparse.parameters[
|
51
|
-
Cukesparse.parameters[
|
52
|
-
Cukesparse.parameters[
|
53
|
-
Cukesparse.parameters[
|
54
|
-
Cukesparse.parameters[
|
55
|
-
Cukesparse.parameters[
|
56
|
-
Cukesparse.parameters[
|
57
|
-
Cukesparse.parameters[
|
58
|
-
Cukesparse.parameters[
|
47
|
+
Cukesparse.parameters['environment'].should eql 'ENVIRONMENT=release'
|
48
|
+
Cukesparse.parameters['log_level'].should eql 'LOG_LEVEL=debug'
|
49
|
+
Cukesparse.parameters['cleanup'].should eql 'CLEANUP=true'
|
50
|
+
Cukesparse.parameters['database'].should eql 'DATABASE=true'
|
51
|
+
Cukesparse.parameters['jenkins'].should eql 'JENKINS=true'
|
52
|
+
Cukesparse.parameters['retries'].should eql 'RETRIES=5'
|
53
|
+
Cukesparse.parameters['timeout'].should eql 'TIMEOUT=60'
|
54
|
+
Cukesparse.parameters['screenwidth'].should eql 'SCREENWIDTH=1280'
|
55
|
+
Cukesparse.parameters['screenheight'].should eql 'SCREENHEIGHT=1024'
|
56
|
+
Cukesparse.parameters['xposition'].should eql 'XPOSITION=0'
|
57
|
+
Cukesparse.parameters['yposition'].should eql 'YPOSITION=0'
|
58
|
+
Cukesparse.parameters['highlight'].should eql 'HIGHLIGHT=true'
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
@@ -8,35 +8,35 @@ describe '.split_parameters' do
|
|
8
8
|
|
9
9
|
context "when run with arguments and :screen symbol" do
|
10
10
|
it "will return set a parameters screen key and value" do
|
11
|
-
Cukesparse.split_parameters('1024/1280',
|
12
|
-
Cukesparse.parameters.should have_key(
|
13
|
-
Cukesparse.parameters.should have_key(
|
14
|
-
Cukesparse.parameters[
|
15
|
-
Cukesparse.parameters[
|
11
|
+
Cukesparse.split_parameters('1024/1280', 'screen')
|
12
|
+
Cukesparse.parameters.should have_key('screenwidth')
|
13
|
+
Cukesparse.parameters.should have_key('screenheight')
|
14
|
+
Cukesparse.parameters['screenwidth'].should eql "SCREENWIDTH=1024"
|
15
|
+
Cukesparse.parameters['screenheight'].should eql "SCREENHEIGHT=1280"
|
16
16
|
end
|
17
17
|
end
|
18
18
|
|
19
19
|
context "when run with arguments and :position symbol" do
|
20
20
|
it "will return set a parameters screen key and value" do
|
21
|
-
Cukesparse.split_parameters('0/100',
|
22
|
-
Cukesparse.parameters.should have_key(
|
23
|
-
Cukesparse.parameters.should have_key(
|
24
|
-
Cukesparse.parameters[
|
25
|
-
Cukesparse.parameters[
|
21
|
+
Cukesparse.split_parameters('0/100', 'position')
|
22
|
+
Cukesparse.parameters.should have_key('xposition')
|
23
|
+
Cukesparse.parameters.should have_key('yposition')
|
24
|
+
Cukesparse.parameters['xposition'].should eql "XPOSITION=0"
|
25
|
+
Cukesparse.parameters['yposition'].should eql "YPOSITION=100"
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
29
|
context "when run with one argument" do
|
30
30
|
it "will return a you have passed enough parameters error" do
|
31
31
|
Cukesparse.should_receive("abort").with("\e[4;31;49mERROR: You have not passed enough parameters in the test command line argument!\e[0m")
|
32
|
-
Cukesparse.split_parameters('1024',
|
32
|
+
Cukesparse.split_parameters('1024', 'test')
|
33
33
|
end
|
34
34
|
end
|
35
35
|
|
36
36
|
context "when run with over two argument" do
|
37
37
|
it "will return a you have passed to many parameters error" do
|
38
38
|
Cukesparse.should_receive("abort").with("\e[4;31;49mERROR: You have passed to many parameters in the test command line argument!\e[0m")
|
39
|
-
Cukesparse.split_parameters('1024/1280/16',
|
39
|
+
Cukesparse.split_parameters('1024/1280/16', 'test')
|
40
40
|
end
|
41
41
|
end
|
42
42
|
end
|
@@ -28,6 +28,17 @@ test_task:
|
|
28
28
|
|
29
29
|
test_task1:
|
30
30
|
feature_order: ['features/featureOne', 'features/featureTwo', 'features/featureThree']
|
31
|
+
cucumber_defaults:
|
32
|
+
format: 'pretty'
|
33
|
+
runtime_defaults:
|
34
|
+
environment: 'release'
|
35
|
+
log_level: 'debug'
|
36
|
+
defaults: ['--format html', '--out coverage/report.html', '-P -s']
|
37
|
+
|
38
|
+
cucumber_default_unknown:
|
39
|
+
feature_order: ['features/featureOne', 'features/featureTwo', 'features/featureThree']
|
40
|
+
cucumber_defaults:
|
41
|
+
testing: 'pretty'
|
31
42
|
runtime_defaults:
|
32
43
|
environment: 'release'
|
33
44
|
log_level: 'debug'
|
data/spec/helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cukesparse
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jonathan Chrisp
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-08-
|
11
|
+
date: 2013-08-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -97,11 +97,14 @@ files:
|
|
97
97
|
- lib/cukesparse.rb
|
98
98
|
- lib/cukesparse/version.rb
|
99
99
|
- spec/cukesparse/add_multiple_spec.rb
|
100
|
+
- spec/cukesparse/argv_spec.rb
|
100
101
|
- spec/cukesparse/check_for_parameters_spec.rb
|
101
102
|
- spec/cukesparse/check_for_task_spec.rb
|
103
|
+
- spec/cukesparse/debug_spec.rb
|
102
104
|
- spec/cukesparse/execute_spec.rb
|
103
105
|
- spec/cukesparse/load_config_spec.rb
|
104
106
|
- spec/cukesparse/parse_argv_spec.rb
|
107
|
+
- spec/cukesparse/reset_spec.rb
|
105
108
|
- spec/cukesparse/set_cucumber_defaults_spec.rb
|
106
109
|
- spec/cukesparse/set_runtime_defaults_spec.rb
|
107
110
|
- spec/cukesparse/split_parameters_spec.rb
|
@@ -129,17 +132,20 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
129
132
|
version: '0'
|
130
133
|
requirements: []
|
131
134
|
rubyforge_project:
|
132
|
-
rubygems_version: 2.0.
|
135
|
+
rubygems_version: 2.0.7
|
133
136
|
signing_key:
|
134
137
|
specification_version: 4
|
135
138
|
summary: Cukesparse - cucumber command line parser
|
136
139
|
test_files:
|
137
140
|
- spec/cukesparse/add_multiple_spec.rb
|
141
|
+
- spec/cukesparse/argv_spec.rb
|
138
142
|
- spec/cukesparse/check_for_parameters_spec.rb
|
139
143
|
- spec/cukesparse/check_for_task_spec.rb
|
144
|
+
- spec/cukesparse/debug_spec.rb
|
140
145
|
- spec/cukesparse/execute_spec.rb
|
141
146
|
- spec/cukesparse/load_config_spec.rb
|
142
147
|
- spec/cukesparse/parse_argv_spec.rb
|
148
|
+
- spec/cukesparse/reset_spec.rb
|
143
149
|
- spec/cukesparse/set_cucumber_defaults_spec.rb
|
144
150
|
- spec/cukesparse/set_runtime_defaults_spec.rb
|
145
151
|
- spec/cukesparse/split_parameters_spec.rb
|