admin_module 0.1.4
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 +7 -0
- data/.gitignore +19 -0
- data/.rspec +3 -0
- data/Gemfile +14 -0
- data/Guardfile +24 -0
- data/LICENSE +22 -0
- data/README.md +281 -0
- data/Rakefile +98 -0
- data/admin_module.gemspec +34 -0
- data/bin/admin_module +13 -0
- data/lib/admin_module.rb +260 -0
- data/lib/admin_module/cli.rb +54 -0
- data/lib/admin_module/cli/cli_guideline.rb +80 -0
- data/lib/admin_module/cli/cli_lock.rb +149 -0
- data/lib/admin_module/cli/cli_parameter.rb +66 -0
- data/lib/admin_module/cli/cli_task.rb +149 -0
- data/lib/admin_module/cli_old.rb +92 -0
- data/lib/admin_module/client.rb +146 -0
- data/lib/admin_module/command.rb +25 -0
- data/lib/admin_module/command/client_access.rb +43 -0
- data/lib/admin_module/command/config.rb +310 -0
- data/lib/admin_module/command/dc.rb +110 -0
- data/lib/admin_module/command/gdl.rb +71 -0
- data/lib/admin_module/command/lock.rb +110 -0
- data/lib/admin_module/command/ppm.rb +142 -0
- data/lib/admin_module/command/rule.rb +77 -0
- data/lib/admin_module/command/ruleset.rb +56 -0
- data/lib/admin_module/command/snapshot.rb +110 -0
- data/lib/admin_module/command/stage.rb +131 -0
- data/lib/admin_module/command/task.rb +110 -0
- data/lib/admin_module/config_helper.rb +33 -0
- data/lib/admin_module/dc.rb +133 -0
- data/lib/admin_module/guideline.rb +86 -0
- data/lib/admin_module/locks.rb +142 -0
- data/lib/admin_module/page_factory.rb +55 -0
- data/lib/admin_module/pages.rb +120 -0
- data/lib/admin_module/pages/dc_definitions_page.rb +73 -0
- data/lib/admin_module/pages/dc_detail_page.rb +187 -0
- data/lib/admin_module/pages/guideline_page.rb +35 -0
- data/lib/admin_module/pages/guideline_version_page.rb +140 -0
- data/lib/admin_module/pages/guidelines_page.rb +59 -0
- data/lib/admin_module/pages/guidelines_version_all_page.rb +116 -0
- data/lib/admin_module/pages/lock_definition_page.rb +178 -0
- data/lib/admin_module/pages/lock_definitions_page.rb +69 -0
- data/lib/admin_module/pages/login_page.rb +75 -0
- data/lib/admin_module/pages/parameter_page.rb +62 -0
- data/lib/admin_module/pages/parameters_page.rb +46 -0
- data/lib/admin_module/pages/ppms_page.rb +110 -0
- data/lib/admin_module/pages/rule_page.rb +68 -0
- data/lib/admin_module/pages/rules_page.rb +74 -0
- data/lib/admin_module/pages/ruleset_page.rb +64 -0
- data/lib/admin_module/pages/rulesets_page.rb +60 -0
- data/lib/admin_module/pages/select_list_syncable.rb +64 -0
- data/lib/admin_module/pages/snapshot_definitions_page.rb +73 -0
- data/lib/admin_module/pages/snapshot_detail_page.rb +246 -0
- data/lib/admin_module/pages/workflow_detail_page.rb +451 -0
- data/lib/admin_module/pages/workflow_detail_task_addl_detail_page.rb +172 -0
- data/lib/admin_module/pages/workflow_detail_task_mappings_page.rb +163 -0
- data/lib/admin_module/pages/workflow_detail_task_screens_page.rb +75 -0
- data/lib/admin_module/pages/workflow_details_page.rb +67 -0
- data/lib/admin_module/pages/workflow_task_page.rb +107 -0
- data/lib/admin_module/pages/workflow_tasks_page.rb +111 -0
- data/lib/admin_module/ppms.rb +78 -0
- data/lib/admin_module/rake.rb +22 -0
- data/lib/admin_module/rake/dc_tasks.rb +185 -0
- data/lib/admin_module/rake/deploy_task.rb +59 -0
- data/lib/admin_module/rake/gdl_tasks.rb +189 -0
- data/lib/admin_module/rake/lock_tasks.rb +189 -0
- data/lib/admin_module/rake/parameter_task.rb +86 -0
- data/lib/admin_module/rake/ppm_tasks.rb +248 -0
- data/lib/admin_module/rake/rule_tasks.rb +157 -0
- data/lib/admin_module/rake/snapshot_tasks.rb +223 -0
- data/lib/admin_module/rake/stage_tasks.rb +197 -0
- data/lib/admin_module/rake/stages_task.rb +197 -0
- data/lib/admin_module/rake/task_tasks.rb +189 -0
- data/lib/admin_module/rules.rb +50 -0
- data/lib/admin_module/rulesets.rb +42 -0
- data/lib/admin_module/snapshots.rb +133 -0
- data/lib/admin_module/stages.rb +171 -0
- data/lib/admin_module/tasks.rb +147 -0
- data/lib/admin_module/version.rb +3 -0
- data/old_spec/lib/admin_module/cli_configuration_spec.rb +126 -0
- data/old_spec/lib/admin_module/cli_create_stage_spec.rb +89 -0
- data/old_spec/lib/admin_module/cli_delete_rule_spec.rb +57 -0
- data/old_spec/lib/admin_module/cli_deploy_spec.rb +57 -0
- data/old_spec/lib/admin_module/cli_export_locks_spec.rb +62 -0
- data/old_spec/lib/admin_module/cli_export_stages_spec.rb +62 -0
- data/old_spec/lib/admin_module/cli_guidelines_version_all_spec.rb +58 -0
- data/old_spec/lib/admin_module/cli_import_locks_spec.rb +153 -0
- data/old_spec/lib/admin_module/cli_import_stages_spec.rb +173 -0
- data/old_spec/lib/admin_module/cli_modify_locks_spec.rb +128 -0
- data/old_spec/lib/admin_module/cli_modify_stages_spec.rb +88 -0
- data/old_spec/lib/admin_module/cli_rename_rule_spec.rb +53 -0
- data/old_spec/lib/admin_module/cli_rename_ruleset_spec.rb +53 -0
- data/old_spec/lib/admin_module/cli_var_spec.rb +41 -0
- data/old_spec/lib/admin_module/rake/deploy_task_spec.rb +85 -0
- data/old_spec/lib/admin_module/rake/parameter_task_spec.rb +58 -0
- data/old_spec/lib/admin_module/rake/rules_task_spec.rb +75 -0
- data/spec/data/build/test1.xml +0 -0
- data/spec/data/build/test2.xml +1 -0
- data/spec/data/import_dcs.yml +31 -0
- data/spec/data/import_locks.yml +4 -0
- data/spec/data/import_snapshots.yml +35 -0
- data/spec/data/import_stages.yml +4 -0
- data/spec/data/import_tasks.yml +25 -0
- data/spec/data/patch-test.xml +1 -0
- data/spec/data/remove_test_del_rule.xml +1 -0
- data/spec/data/stages.yml +518 -0
- data/spec/data/test_del_rule.xml +1 -0
- data/spec/lib/admin_module/admin_module_spec.rb +175 -0
- data/spec/lib/admin_module/cli_spec.rb +36 -0
- data/spec/lib/admin_module/client_spec.rb +158 -0
- data/spec/lib/admin_module/command/config_spec.rb +477 -0
- data/spec/lib/admin_module/command/dc_spec.rb +202 -0
- data/spec/lib/admin_module/command/gdl_spec.rb +139 -0
- data/spec/lib/admin_module/command/lock_spec.rb +207 -0
- data/spec/lib/admin_module/command/rule_spec.rb +163 -0
- data/spec/lib/admin_module/command/ruleset_spec.rb +124 -0
- data/spec/lib/admin_module/command/snapshot_spec.rb +202 -0
- data/spec/lib/admin_module/command/stage_spec.rb +259 -0
- data/spec/lib/admin_module/command/task_spec.rb +207 -0
- data/spec/lib/admin_module/dc_spec.rb +192 -0
- data/spec/lib/admin_module/guideline_spec.rb +177 -0
- data/spec/lib/admin_module/locks_spec.rb +188 -0
- data/spec/lib/admin_module/rules_spec.rb +110 -0
- data/spec/lib/admin_module/rulesets_spec.rb +85 -0
- data/spec/lib/admin_module/snapshot_spec.rb +192 -0
- data/spec/lib/admin_module/stages_spec.rb +179 -0
- data/spec/lib/admin_module/tasks_spec.rb +196 -0
- data/spec/spec_helper.rb +54 -0
- data/spec/support/asserts.rb +13 -0
- data/spec/support/data_clearing.rb +28 -0
- data/spec/support/dirs.rb +54 -0
- data/spec/support/helpers.rb +83 -0
- data/spec/support/lock.rb +23 -0
- data/spec/support/mocks.rb +213 -0
- data/spec/support/snapshot.rb +28 -0
- data/spec/support/stage.rb +22 -0
- data/spec/support/stage_factory.rb +138 -0
- data/spec/support/task.rb +23 -0
- metadata +381 -0
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe AdminModule::CLI do
|
|
4
|
+
|
|
5
|
+
let(:cli) do
|
|
6
|
+
AdminModule.configure do |config|
|
|
7
|
+
config.credentials = { :dev => ['devuser', 'devpassword'] }
|
|
8
|
+
end
|
|
9
|
+
AdminModule::CLI.new
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
after(:each) do
|
|
13
|
+
cli.quit
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
describe "#environment=" do
|
|
17
|
+
context "sets the environment to use" do
|
|
18
|
+
context "when set to :sit" do
|
|
19
|
+
let(:cli) do
|
|
20
|
+
AdminModule.configure do |config|
|
|
21
|
+
config.credentials = { :sit => ['situser', 'sitpassword*'] }
|
|
22
|
+
end
|
|
23
|
+
cli = AdminModule::CLI.new
|
|
24
|
+
cli.environment = :sit
|
|
25
|
+
cli
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
it "#environment returns :sit" do
|
|
30
|
+
expect(cli.environment).to eq :sit
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
it "#credentials returns values for :sit" do
|
|
34
|
+
expect(cli.credentials).to eq ['situser', 'sitpassword*']
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
it "#base_url returns values for :sit" do
|
|
38
|
+
expect(cli.base_url).to eq "http://207.38.119.211/fap2SIT/Admin"
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
#context "with :test configured as default environment" do
|
|
44
|
+
# AdminModule.configure do |config|
|
|
45
|
+
# config.default_environment = :test
|
|
46
|
+
# end
|
|
47
|
+
|
|
48
|
+
# it "returns :test" do
|
|
49
|
+
# expect(cli.environment).to eq :test
|
|
50
|
+
# end
|
|
51
|
+
#end # context "with invalid source file"
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
describe "#environment" do
|
|
55
|
+
context "returns default environment if not overridden" do
|
|
56
|
+
let(:devuser) { 'DevUser' }
|
|
57
|
+
let(:devpass) { 'DevPassword1*' }
|
|
58
|
+
let(:cli) do
|
|
59
|
+
AdminModule.configure do |config|
|
|
60
|
+
config.reset
|
|
61
|
+
config.credentials = { :dev => [devuser, devpass] }
|
|
62
|
+
end
|
|
63
|
+
cli = AdminModule::CLI.new
|
|
64
|
+
cli
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
it "returns :dev" do
|
|
69
|
+
expect(cli.environment).to eq :dev
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
#context "with :test configured as default environment" do
|
|
74
|
+
# AdminModule.configure do |config|
|
|
75
|
+
# config.default_environment = :test
|
|
76
|
+
# end
|
|
77
|
+
|
|
78
|
+
# it "returns :test" do
|
|
79
|
+
# expect(cli.environment).to eq :test
|
|
80
|
+
# end
|
|
81
|
+
#end # context "with invalid source file"
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
describe "#credentials" do
|
|
86
|
+
context "returns default credentials if not overridden" do
|
|
87
|
+
let(:devuser) { 'DevUser' }
|
|
88
|
+
let(:devpass) { 'DevPassword1*' }
|
|
89
|
+
let(:cli) do
|
|
90
|
+
AdminModule.configure do |config|
|
|
91
|
+
config.reset
|
|
92
|
+
config.credentials = { :dev => [devuser, devpass] }
|
|
93
|
+
end
|
|
94
|
+
cli = AdminModule::CLI.new
|
|
95
|
+
cli
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
it "returns :dev's credentials" do
|
|
100
|
+
expect(cli.credentials).to eq [devuser, devpass]
|
|
101
|
+
end
|
|
102
|
+
end
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
describe "#base_urls" do
|
|
107
|
+
context "returns default urls if not overridden" do
|
|
108
|
+
let(:devuser) { 'DevUser' }
|
|
109
|
+
let(:devpass) { 'DevPassword1*' }
|
|
110
|
+
let(:cli) do
|
|
111
|
+
AdminModule.configure do |config|
|
|
112
|
+
config.reset
|
|
113
|
+
config.credentials = { :dev => [devuser, devpass] }
|
|
114
|
+
end
|
|
115
|
+
cli = AdminModule::CLI.new
|
|
116
|
+
cli
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
it "returns :dev's base url" do
|
|
121
|
+
expect(cli.base_url).to eq "http://207.38.119.211/fap2Dev/Admin"
|
|
122
|
+
end
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
end # describe AdminModule
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe AdminModule::CLI do
|
|
4
|
+
|
|
5
|
+
# Kill the browser after each test.
|
|
6
|
+
after(:each) do
|
|
7
|
+
quit_cli
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
describe "#create_stage" do
|
|
12
|
+
context "stage data missing name parameter" do
|
|
13
|
+
|
|
14
|
+
let(:missing_name) do
|
|
15
|
+
{ name: '',
|
|
16
|
+
transition_to: [
|
|
17
|
+
'001 New File',
|
|
18
|
+
'022 Docs Verification',
|
|
19
|
+
'060 Reconsideration Exceptions/Overrides',
|
|
20
|
+
'096 Withdrawn',
|
|
21
|
+
'120 Second Review-Pending Docs' ]
|
|
22
|
+
}
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
it "will raise exception" do
|
|
27
|
+
expect { cli.create_stage(missing_name) }.to raise_exception(ArgumentError)
|
|
28
|
+
end
|
|
29
|
+
end # context
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
context "stage name already exists" do
|
|
33
|
+
|
|
34
|
+
let(:name_exists) do
|
|
35
|
+
factory = StageFactory.new
|
|
36
|
+
factory.name('020 Pending Docs')
|
|
37
|
+
.set_transitions([
|
|
38
|
+
'001 New File',
|
|
39
|
+
'022 Docs Verification',
|
|
40
|
+
'060 Reconsideration Exceptions/Overrides',
|
|
41
|
+
'096 Withdrawn',
|
|
42
|
+
'120 Second Review-Pending Docs' ])
|
|
43
|
+
|
|
44
|
+
factory.data
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
it "will raise exception" do
|
|
49
|
+
expect { cli.create_stage(name_exists) }.to raise_exception(ArgumentError)
|
|
50
|
+
end
|
|
51
|
+
end # context
|
|
52
|
+
|
|
53
|
+
context "stage name does not exist" do
|
|
54
|
+
|
|
55
|
+
let(:new_stage) do
|
|
56
|
+
factory = StageFactory.new
|
|
57
|
+
factory.name('Test Stage')
|
|
58
|
+
.set_transitions([
|
|
59
|
+
'001 New File',
|
|
60
|
+
'022 Docs Verification',
|
|
61
|
+
'060 Reconsideration Exceptions/Overrides',
|
|
62
|
+
'096 Withdrawn',
|
|
63
|
+
'120 Second Review-Pending Docs' ])
|
|
64
|
+
|
|
65
|
+
factory.data
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
it "stage is created" do
|
|
69
|
+
delete_stage_for_test new_stage
|
|
70
|
+
|
|
71
|
+
cli.create_stage(new_stage)
|
|
72
|
+
|
|
73
|
+
stage_name = new_stage[:name]
|
|
74
|
+
actual = cli.get_stage stage_name
|
|
75
|
+
|
|
76
|
+
expect(actual[:name]).to eq stage_name
|
|
77
|
+
expect(actual[:transition_to]).to eq new_stage[:transition_to]
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
it "stage is deleted" do
|
|
81
|
+
create_stage_for_test new_stage
|
|
82
|
+
|
|
83
|
+
cli.delete_stage(new_stage)
|
|
84
|
+
expect{ cli.get_stage(new_stage[:name]) }.to raise_exception
|
|
85
|
+
end
|
|
86
|
+
end # context
|
|
87
|
+
end # describe "#create_stage"
|
|
88
|
+
|
|
89
|
+
end # describe AdminModule
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe AdminModule::CLI do
|
|
4
|
+
|
|
5
|
+
let(:cli) do
|
|
6
|
+
AdminModule.configure do |config|
|
|
7
|
+
config.credentials = { :dev => ['admin', 'Password1*'] }
|
|
8
|
+
end
|
|
9
|
+
AdminModule::CLI.new
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
after(:each) do
|
|
13
|
+
cli.quit
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
let(:non_existant_rule_name) { 'Z-NotARule' }
|
|
17
|
+
let(:test_rule_name) { 'Z-TestDelRule' }
|
|
18
|
+
let(:test_rule_xml) { 'spec/data/test_del_rule.xml' }
|
|
19
|
+
let(:remove_test_rule_xml) { 'spec/data/remove_test_del_rule.xml' }
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
describe "#delete_rule" do
|
|
23
|
+
|
|
24
|
+
context "invalid parameters" do
|
|
25
|
+
|
|
26
|
+
context "missing rule name parameter" do
|
|
27
|
+
|
|
28
|
+
it "will raise exception" do
|
|
29
|
+
expect { cli.delete_rule(nil) }.to raise_exception(ArgumentError)
|
|
30
|
+
expect { cli.delete_rule('') }.to raise_exception(ArgumentError)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
end # context
|
|
34
|
+
|
|
35
|
+
context "rule does not exist" do
|
|
36
|
+
|
|
37
|
+
it "will raise exception" do
|
|
38
|
+
expect { cli.delete_rule(non_existant_rule_name) }.to raise_exception(ArgumentError)
|
|
39
|
+
end
|
|
40
|
+
end # context
|
|
41
|
+
end # context
|
|
42
|
+
|
|
43
|
+
context "valid parameters" do
|
|
44
|
+
|
|
45
|
+
it "rule is deleted" do
|
|
46
|
+
# Create a rule to delete.
|
|
47
|
+
cli.deploy test_rule_xml, 'Z-TEMP', 'Running cli_delete_spec - step 1: Add Z-TestDelRule.'
|
|
48
|
+
# Have to upload another gdl so we don't have a guideline pointing to
|
|
49
|
+
# the rule we're going to delete.
|
|
50
|
+
cli.deploy remove_test_rule_xml, 'Z-TEMP', 'Running cli_delete_spec - step 2: Remove Z-TestDelRule.'
|
|
51
|
+
|
|
52
|
+
cli.delete_rule(test_rule_name)
|
|
53
|
+
expect(cli.get_rules().include?(test_rule_name)).to eq false
|
|
54
|
+
end
|
|
55
|
+
end # context
|
|
56
|
+
end # describe "#delete_rule"
|
|
57
|
+
end # describe AdminModule
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe AdminModule::CLI do
|
|
4
|
+
|
|
5
|
+
after(:each) do
|
|
6
|
+
quit_cli
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
describe "#deploy" do
|
|
10
|
+
context "with invalid source file" do
|
|
11
|
+
it "will raise an IOError exception" do
|
|
12
|
+
expect { cli.deploy('source_xml.xml', 'dest_gdl_name') }.to raise_exception(IOError)
|
|
13
|
+
end
|
|
14
|
+
end # context "with invalid source file"
|
|
15
|
+
|
|
16
|
+
context "with valid source file" do
|
|
17
|
+
let(:data_dir) { 'spec/data' }
|
|
18
|
+
let(:test_source_file) { File.join(data_dir, 'patch-test.xml') }
|
|
19
|
+
|
|
20
|
+
AdminModule.configure do |config|
|
|
21
|
+
config.aliases = { 'temp' => 'Z-TEMP' }
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
it "deploys to default environment" do
|
|
26
|
+
expect { cli.deploy(test_source_file, 'Z-TEMP') }.not_to raise_exception
|
|
27
|
+
end
|
|
28
|
+
end # context "with valid source file"
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
describe "#deploy_files" do
|
|
33
|
+
context "with one invalid source file" do
|
|
34
|
+
it "will raise an IOError exception" do
|
|
35
|
+
expect { cli.deploy_files(['source_xml.xml'], 'Multi-upload fail test') }.to raise_exception(IOError)
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
context "with valid source files" do
|
|
40
|
+
let(:data_dir) { 'spec/data' }
|
|
41
|
+
let(:test_source_file1) { File.join(data_dir, 'patch-test.xml') }
|
|
42
|
+
let(:test_source_file2) { File.join(data_dir, 'patch-test.xml') }
|
|
43
|
+
let(:test_source_files) { [test_source_file1, test_source_file2] }
|
|
44
|
+
|
|
45
|
+
AdminModule.configure do |config|
|
|
46
|
+
config.aliases = { 'patch-test' => 'Z-TEMP' }
|
|
47
|
+
config.browser_timeout = 359
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
it "deploys to default environment" do
|
|
52
|
+
expect { cli.deploy_files(test_source_files, 'Multi-upload test') }.not_to raise_exception
|
|
53
|
+
end
|
|
54
|
+
end # context "with valid source file"
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
end # describe AdminModule
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe AdminModule::CLI do
|
|
4
|
+
|
|
5
|
+
let(:cli) do
|
|
6
|
+
AdminModule.configure do |config|
|
|
7
|
+
config.credentials = { :dev => ['admin', 'Password1*'] }
|
|
8
|
+
end
|
|
9
|
+
AdminModule::CLI.new
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
after(:each) do
|
|
13
|
+
cli.quit
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
describe "#get_lock" do
|
|
17
|
+
context "invalid lock name" do
|
|
18
|
+
it "will raise exception" do
|
|
19
|
+
expect { cli.get_lock('invalid') }.to raise_exception(ArgumentError)
|
|
20
|
+
end
|
|
21
|
+
end # context "invalid lock name"
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
context "valid lock name" do
|
|
25
|
+
|
|
26
|
+
let(:expected_dod_lock) do
|
|
27
|
+
{ name: 'DODLock',
|
|
28
|
+
description: '',
|
|
29
|
+
is_program_lock: false,
|
|
30
|
+
parameters: [],
|
|
31
|
+
dts: [
|
|
32
|
+
'Delinquency Status',
|
|
33
|
+
'Has Escrow Account'
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
it "will return lock configuration data" do
|
|
40
|
+
expect( cli.get_lock('DODLock') ).to eq expected_dod_lock
|
|
41
|
+
end
|
|
42
|
+
end # context "valid lock name"
|
|
43
|
+
end # describe "#get_lock"
|
|
44
|
+
|
|
45
|
+
describe "#export_locks" do
|
|
46
|
+
context "with filename" do
|
|
47
|
+
|
|
48
|
+
let(:target_file) { 'tmp/spec/admin_module/locks.yml' }
|
|
49
|
+
|
|
50
|
+
before(:each) do
|
|
51
|
+
FileUtils.rm_rf target_file
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
it "writes multiple locks to a file" do
|
|
56
|
+
cli.export_locks(target_file)
|
|
57
|
+
locks = read_yaml_data_file(target_file)
|
|
58
|
+
expect(locks.size).to eq 20
|
|
59
|
+
end
|
|
60
|
+
end # context
|
|
61
|
+
end # describe "#export_locks"
|
|
62
|
+
end # describe AdminModule
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe AdminModule::CLI do
|
|
4
|
+
|
|
5
|
+
# Quit the browser after each test.
|
|
6
|
+
after(:each) do
|
|
7
|
+
quit_cli
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
describe "#get_stage" do
|
|
11
|
+
context "invalid stage name" do
|
|
12
|
+
it "will raise exception" do
|
|
13
|
+
expect { cli.get_stage('invalid') }.to raise_exception(ArgumentError)
|
|
14
|
+
end
|
|
15
|
+
end # context "invalid stage name"
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
context "valid stage name" do
|
|
19
|
+
|
|
20
|
+
let(:expected_stage) do
|
|
21
|
+
factory = StageFactory.new
|
|
22
|
+
factory.name('020 Pending Docs').
|
|
23
|
+
set_transitions([
|
|
24
|
+
'001 New File',
|
|
25
|
+
'022 Docs Verification',
|
|
26
|
+
'060 Reconsideration Exceptions/Overrides',
|
|
27
|
+
'096 Withdrawn',
|
|
28
|
+
'120 Second Review-Pending Docs'
|
|
29
|
+
]
|
|
30
|
+
)
|
|
31
|
+
factory.data
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
it "will return stage configuration data" do
|
|
36
|
+
stage_name = expected_stage[:name]
|
|
37
|
+
actual = cli.get_stage stage_name
|
|
38
|
+
|
|
39
|
+
expect(actual[:name]).to eq stage_name
|
|
40
|
+
expect(actual[:transition_to]).to eq expected_stage[:transition_to]
|
|
41
|
+
end
|
|
42
|
+
end # context "valid stage name"
|
|
43
|
+
end # describe "#get_stage"
|
|
44
|
+
|
|
45
|
+
describe "#export_stages" do
|
|
46
|
+
context "with filename" do
|
|
47
|
+
|
|
48
|
+
let(:target_file) { 'tmp/spec/admin_module/stages.yml' }
|
|
49
|
+
|
|
50
|
+
before(:each) do
|
|
51
|
+
FileUtils.rm_rf target_file
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
it "writes multiple stages to a file" do
|
|
56
|
+
cli.export_stages(target_file)
|
|
57
|
+
stages = read_yaml_data_file(target_file)
|
|
58
|
+
expect(stages.size).to eq 49
|
|
59
|
+
end
|
|
60
|
+
end # context
|
|
61
|
+
end # describe "#export_stages"
|
|
62
|
+
end # describe AdminModule
|