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.
Files changed (141) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +19 -0
  3. data/.rspec +3 -0
  4. data/Gemfile +14 -0
  5. data/Guardfile +24 -0
  6. data/LICENSE +22 -0
  7. data/README.md +281 -0
  8. data/Rakefile +98 -0
  9. data/admin_module.gemspec +34 -0
  10. data/bin/admin_module +13 -0
  11. data/lib/admin_module.rb +260 -0
  12. data/lib/admin_module/cli.rb +54 -0
  13. data/lib/admin_module/cli/cli_guideline.rb +80 -0
  14. data/lib/admin_module/cli/cli_lock.rb +149 -0
  15. data/lib/admin_module/cli/cli_parameter.rb +66 -0
  16. data/lib/admin_module/cli/cli_task.rb +149 -0
  17. data/lib/admin_module/cli_old.rb +92 -0
  18. data/lib/admin_module/client.rb +146 -0
  19. data/lib/admin_module/command.rb +25 -0
  20. data/lib/admin_module/command/client_access.rb +43 -0
  21. data/lib/admin_module/command/config.rb +310 -0
  22. data/lib/admin_module/command/dc.rb +110 -0
  23. data/lib/admin_module/command/gdl.rb +71 -0
  24. data/lib/admin_module/command/lock.rb +110 -0
  25. data/lib/admin_module/command/ppm.rb +142 -0
  26. data/lib/admin_module/command/rule.rb +77 -0
  27. data/lib/admin_module/command/ruleset.rb +56 -0
  28. data/lib/admin_module/command/snapshot.rb +110 -0
  29. data/lib/admin_module/command/stage.rb +131 -0
  30. data/lib/admin_module/command/task.rb +110 -0
  31. data/lib/admin_module/config_helper.rb +33 -0
  32. data/lib/admin_module/dc.rb +133 -0
  33. data/lib/admin_module/guideline.rb +86 -0
  34. data/lib/admin_module/locks.rb +142 -0
  35. data/lib/admin_module/page_factory.rb +55 -0
  36. data/lib/admin_module/pages.rb +120 -0
  37. data/lib/admin_module/pages/dc_definitions_page.rb +73 -0
  38. data/lib/admin_module/pages/dc_detail_page.rb +187 -0
  39. data/lib/admin_module/pages/guideline_page.rb +35 -0
  40. data/lib/admin_module/pages/guideline_version_page.rb +140 -0
  41. data/lib/admin_module/pages/guidelines_page.rb +59 -0
  42. data/lib/admin_module/pages/guidelines_version_all_page.rb +116 -0
  43. data/lib/admin_module/pages/lock_definition_page.rb +178 -0
  44. data/lib/admin_module/pages/lock_definitions_page.rb +69 -0
  45. data/lib/admin_module/pages/login_page.rb +75 -0
  46. data/lib/admin_module/pages/parameter_page.rb +62 -0
  47. data/lib/admin_module/pages/parameters_page.rb +46 -0
  48. data/lib/admin_module/pages/ppms_page.rb +110 -0
  49. data/lib/admin_module/pages/rule_page.rb +68 -0
  50. data/lib/admin_module/pages/rules_page.rb +74 -0
  51. data/lib/admin_module/pages/ruleset_page.rb +64 -0
  52. data/lib/admin_module/pages/rulesets_page.rb +60 -0
  53. data/lib/admin_module/pages/select_list_syncable.rb +64 -0
  54. data/lib/admin_module/pages/snapshot_definitions_page.rb +73 -0
  55. data/lib/admin_module/pages/snapshot_detail_page.rb +246 -0
  56. data/lib/admin_module/pages/workflow_detail_page.rb +451 -0
  57. data/lib/admin_module/pages/workflow_detail_task_addl_detail_page.rb +172 -0
  58. data/lib/admin_module/pages/workflow_detail_task_mappings_page.rb +163 -0
  59. data/lib/admin_module/pages/workflow_detail_task_screens_page.rb +75 -0
  60. data/lib/admin_module/pages/workflow_details_page.rb +67 -0
  61. data/lib/admin_module/pages/workflow_task_page.rb +107 -0
  62. data/lib/admin_module/pages/workflow_tasks_page.rb +111 -0
  63. data/lib/admin_module/ppms.rb +78 -0
  64. data/lib/admin_module/rake.rb +22 -0
  65. data/lib/admin_module/rake/dc_tasks.rb +185 -0
  66. data/lib/admin_module/rake/deploy_task.rb +59 -0
  67. data/lib/admin_module/rake/gdl_tasks.rb +189 -0
  68. data/lib/admin_module/rake/lock_tasks.rb +189 -0
  69. data/lib/admin_module/rake/parameter_task.rb +86 -0
  70. data/lib/admin_module/rake/ppm_tasks.rb +248 -0
  71. data/lib/admin_module/rake/rule_tasks.rb +157 -0
  72. data/lib/admin_module/rake/snapshot_tasks.rb +223 -0
  73. data/lib/admin_module/rake/stage_tasks.rb +197 -0
  74. data/lib/admin_module/rake/stages_task.rb +197 -0
  75. data/lib/admin_module/rake/task_tasks.rb +189 -0
  76. data/lib/admin_module/rules.rb +50 -0
  77. data/lib/admin_module/rulesets.rb +42 -0
  78. data/lib/admin_module/snapshots.rb +133 -0
  79. data/lib/admin_module/stages.rb +171 -0
  80. data/lib/admin_module/tasks.rb +147 -0
  81. data/lib/admin_module/version.rb +3 -0
  82. data/old_spec/lib/admin_module/cli_configuration_spec.rb +126 -0
  83. data/old_spec/lib/admin_module/cli_create_stage_spec.rb +89 -0
  84. data/old_spec/lib/admin_module/cli_delete_rule_spec.rb +57 -0
  85. data/old_spec/lib/admin_module/cli_deploy_spec.rb +57 -0
  86. data/old_spec/lib/admin_module/cli_export_locks_spec.rb +62 -0
  87. data/old_spec/lib/admin_module/cli_export_stages_spec.rb +62 -0
  88. data/old_spec/lib/admin_module/cli_guidelines_version_all_spec.rb +58 -0
  89. data/old_spec/lib/admin_module/cli_import_locks_spec.rb +153 -0
  90. data/old_spec/lib/admin_module/cli_import_stages_spec.rb +173 -0
  91. data/old_spec/lib/admin_module/cli_modify_locks_spec.rb +128 -0
  92. data/old_spec/lib/admin_module/cli_modify_stages_spec.rb +88 -0
  93. data/old_spec/lib/admin_module/cli_rename_rule_spec.rb +53 -0
  94. data/old_spec/lib/admin_module/cli_rename_ruleset_spec.rb +53 -0
  95. data/old_spec/lib/admin_module/cli_var_spec.rb +41 -0
  96. data/old_spec/lib/admin_module/rake/deploy_task_spec.rb +85 -0
  97. data/old_spec/lib/admin_module/rake/parameter_task_spec.rb +58 -0
  98. data/old_spec/lib/admin_module/rake/rules_task_spec.rb +75 -0
  99. data/spec/data/build/test1.xml +0 -0
  100. data/spec/data/build/test2.xml +1 -0
  101. data/spec/data/import_dcs.yml +31 -0
  102. data/spec/data/import_locks.yml +4 -0
  103. data/spec/data/import_snapshots.yml +35 -0
  104. data/spec/data/import_stages.yml +4 -0
  105. data/spec/data/import_tasks.yml +25 -0
  106. data/spec/data/patch-test.xml +1 -0
  107. data/spec/data/remove_test_del_rule.xml +1 -0
  108. data/spec/data/stages.yml +518 -0
  109. data/spec/data/test_del_rule.xml +1 -0
  110. data/spec/lib/admin_module/admin_module_spec.rb +175 -0
  111. data/spec/lib/admin_module/cli_spec.rb +36 -0
  112. data/spec/lib/admin_module/client_spec.rb +158 -0
  113. data/spec/lib/admin_module/command/config_spec.rb +477 -0
  114. data/spec/lib/admin_module/command/dc_spec.rb +202 -0
  115. data/spec/lib/admin_module/command/gdl_spec.rb +139 -0
  116. data/spec/lib/admin_module/command/lock_spec.rb +207 -0
  117. data/spec/lib/admin_module/command/rule_spec.rb +163 -0
  118. data/spec/lib/admin_module/command/ruleset_spec.rb +124 -0
  119. data/spec/lib/admin_module/command/snapshot_spec.rb +202 -0
  120. data/spec/lib/admin_module/command/stage_spec.rb +259 -0
  121. data/spec/lib/admin_module/command/task_spec.rb +207 -0
  122. data/spec/lib/admin_module/dc_spec.rb +192 -0
  123. data/spec/lib/admin_module/guideline_spec.rb +177 -0
  124. data/spec/lib/admin_module/locks_spec.rb +188 -0
  125. data/spec/lib/admin_module/rules_spec.rb +110 -0
  126. data/spec/lib/admin_module/rulesets_spec.rb +85 -0
  127. data/spec/lib/admin_module/snapshot_spec.rb +192 -0
  128. data/spec/lib/admin_module/stages_spec.rb +179 -0
  129. data/spec/lib/admin_module/tasks_spec.rb +196 -0
  130. data/spec/spec_helper.rb +54 -0
  131. data/spec/support/asserts.rb +13 -0
  132. data/spec/support/data_clearing.rb +28 -0
  133. data/spec/support/dirs.rb +54 -0
  134. data/spec/support/helpers.rb +83 -0
  135. data/spec/support/lock.rb +23 -0
  136. data/spec/support/mocks.rb +213 -0
  137. data/spec/support/snapshot.rb +28 -0
  138. data/spec/support/stage.rb +22 -0
  139. data/spec/support/stage_factory.rb +138 -0
  140. data/spec/support/task.rb +23 -0
  141. metadata +381 -0
@@ -0,0 +1,88 @@
1
+ require 'spec_helper'
2
+
3
+ describe AdminModule::CLI do
4
+
5
+ after(:each) do
6
+ quit_cli
7
+ end
8
+
9
+ let(:test_stage) do
10
+ factory = StageFactory.new
11
+ factory.name('Test Stage')
12
+ .set_transitions([
13
+ '001 New File',
14
+ '022 Docs Verification',
15
+ '060 Reconsideration Exceptions/Overrides',
16
+ '096 Withdrawn',
17
+ '120 Second Review-Pending Docs' ])
18
+
19
+ factory.data
20
+ end
21
+
22
+ let(:test_stage_2) do
23
+ factory = StageFactory.new
24
+ factory.name('Test Stage Two')
25
+ .set_transitions([
26
+ '001 New File',
27
+ '005 Application and Eligibility' ]
28
+ )
29
+
30
+ factory.data
31
+ end
32
+
33
+
34
+ describe "#modify_stage" do
35
+
36
+ context "stage data missing name parameter" do
37
+
38
+ let(:missing_name) do
39
+ missing_name = test_stage
40
+ missing_name[:name] = nil
41
+ missing_name
42
+ end
43
+
44
+
45
+ it "will raise exception" do
46
+ expect { cli.modify_stage(missing_name) }.to raise_exception(ArgumentError)
47
+ end
48
+
49
+
50
+ context "stage name specified" do
51
+
52
+ it "stage is modified" do
53
+ delete_stage_for_test test_stage
54
+ delete_stage_for_test test_stage_2
55
+ create_stage_for_test test_stage
56
+
57
+ stage_name = test_stage[:name]
58
+ tmp_test = test_stage_2
59
+ tmp_test[:name] = nil
60
+
61
+ cli.modify_stage(tmp_test, stage_name)
62
+ actual = cli.get_stage stage_name
63
+
64
+ # Name is left as is, transitions change.
65
+ expect(actual[:name]).to eq stage_name
66
+ expect(actual[:transition_to]).to eq tmp_test[:transition_to]
67
+ end
68
+ end # context
69
+ end # context
70
+
71
+
72
+ context "stage data has different name" do
73
+
74
+ it "stage is renamed" do
75
+ delete_stage_for_test test_stage
76
+ delete_stage_for_test test_stage_2
77
+ create_stage_for_test test_stage
78
+
79
+ cli.modify_stage test_stage_2, test_stage[:name]
80
+ actual = cli.get_stage test_stage_2[:name]
81
+
82
+ expect(actual[:name]).to eq test_stage_2[:name]
83
+ expect(actual[:transition_to]).to eq test_stage_2[:transition_to]
84
+ end
85
+ end # context "stage data has different name"
86
+
87
+ end # describe "#modify_stage"
88
+ end # describe AdminModule
@@ -0,0 +1,53 @@
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(:old_rule_name) { 'Z-TestDummy' }
17
+ let(:new_rule_name) { 'Z-NewTestDummy' }
18
+
19
+
20
+ describe "#rename_rule" do
21
+
22
+ context "invalid parameters" do
23
+
24
+ context "missing old rule name parameter" do
25
+
26
+ it "will raise exception" do
27
+ expect { cli.rename_rule(nil, new_rule_name) }.to raise_exception(ArgumentError)
28
+ expect { cli.rename_rule('', new_rule_name) }.to raise_exception(ArgumentError)
29
+ end
30
+
31
+ end # context
32
+
33
+ context "missing new rule name parameter" do
34
+
35
+ it "will raise exception" do
36
+ expect { cli.rename_rule(old_rule_name, nil) }.to raise_exception(ArgumentError)
37
+ expect { cli.rename_rule(old_rule_name, '') }.to raise_exception(ArgumentError)
38
+ end
39
+ end # context
40
+ end # context
41
+
42
+ context "valid parameters" do
43
+
44
+ it "rule is renamed" do
45
+ cli.rename_rule(old_rule_name, new_rule_name)
46
+ expect(cli.get_rules().include?(new_rule_name)).to eq true
47
+ expect(cli.get_rules().include?(old_rule_name)).to eq false
48
+
49
+ cli.rename_rule(new_rule_name, old_rule_name)
50
+ end
51
+ end # context
52
+ end # describe "#rename_rule"
53
+ end # describe AdminModule
@@ -0,0 +1,53 @@
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(:old_ruleset_name) { 'Z-DummyRuleset' }
17
+ let(:new_ruleset_name) { 'Z-NewDummyRuleset' }
18
+
19
+
20
+ describe "#rename_ruleset" do
21
+
22
+ context "invalid parameters" do
23
+
24
+ context "missing old ruleset name parameter" do
25
+
26
+ it "will raise exception" do
27
+ expect { cli.rename_ruleset(nil, new_ruleset_name) }.to raise_exception(ArgumentError)
28
+ expect { cli.rename_ruleset('', new_ruleset_name) }.to raise_exception(ArgumentError)
29
+ end
30
+
31
+ end # context
32
+
33
+ context "missing new ruleset name parameter" do
34
+
35
+ it "will raise exception" do
36
+ expect { cli.rename_ruleset(old_ruleset_name, nil) }.to raise_exception(ArgumentError)
37
+ expect { cli.rename_ruleset(old_ruleset_name, '') }.to raise_exception(ArgumentError)
38
+ end
39
+ end # context
40
+ end # context
41
+
42
+ context "valid parameters" do
43
+
44
+ it "ruleset is renamed" do
45
+ cli.rename_ruleset(old_ruleset_name, new_ruleset_name)
46
+ expect(cli.get_rulesets().include?(new_ruleset_name)).to eq true
47
+ expect(cli.get_rulesets().include?(old_ruleset_name)).to eq false
48
+
49
+ cli.rename_ruleset(new_ruleset_name, old_ruleset_name)
50
+ end
51
+ end # context
52
+ end # describe "#rename_ruleset"
53
+ end # describe AdminModule
@@ -0,0 +1,41 @@
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_parameters" do
17
+ let(:var_name) { 'Decision' }
18
+
19
+ it 'returns a list of variables in the environment' do
20
+ expect( cli.get_parameters.include?(var_name) ).to eq true
21
+ end
22
+ end
23
+
24
+ describe "#update_parameter" do
25
+
26
+ let(:var_name) { 'ZExclusion Decision' }
27
+ let(:not_a_var) { 'Not a Var' }
28
+
29
+ it "updates a variables 'Save in XML' state" do
30
+ expect { cli.update_parameter(var_name, :include => true) }.not_to raise_exception
31
+ end
32
+
33
+ it "raises an exception when invalid parameter keys are passed" do
34
+ expect { cli.update_parameter(var_name, :invalid => true) }.to raise_exception
35
+ end
36
+
37
+ it "raises an exception if variable doesn't exist" do
38
+ expect { cli.update_parameter(not_a_var, :include => true) }.to raise_exception
39
+ end
40
+ end
41
+ end # describe AdminModule
@@ -0,0 +1,85 @@
1
+ ##############################################################################
2
+ # File:: deploy_task_spec.rb
3
+ # Purpose:: DeployTask definition specification
4
+ #
5
+ # Author:: Jeff McAffee 03/19/2014
6
+ # Copyright:: Copyright (c) 2014, kTech Systems LLC. All rights reserved.
7
+ # Website:: http://ktechsystems.com
8
+ ##############################################################################
9
+
10
+ require 'spec_helper'
11
+ require 'admin_module/rake/deploy_task'
12
+
13
+ module AdminModule::Rake
14
+
15
+ describe DeployTask do
16
+
17
+ subject { DeployTask.new }
18
+
19
+ it "accepts environment" do
20
+ subject.env = :dev
21
+ end
22
+
23
+ it "accepts commit message" do
24
+ subject.commit_msg = 'commit message'
25
+ end
26
+
27
+ it 'accepts a list of files' do
28
+ subject.files = ['file1.xml', 'file2.xml']
29
+ end
30
+
31
+ it 'returns list of files' do
32
+ expect(subject.files).to eq []
33
+ subject.files = ['file1.xml', 'file2.xml']
34
+ expect(subject.files).to eq ['file1.xml', 'file2.xml']
35
+ end
36
+
37
+ it 'accepts a single file' do
38
+ subject.files = 'file1.xml'
39
+ expect(subject.files).to eq ['file1.xml']
40
+ end
41
+
42
+ it 'accepts a target guideline name or alias' do
43
+ subject.target = 'Z-TEMP'
44
+ expect(subject.target).to eq 'Z-TEMP'
45
+ end
46
+
47
+ context '#deploy' do
48
+
49
+ context 'with non-configured environment' do
50
+
51
+ it "throws exception" do
52
+ subject.env = :bad_env
53
+ expect { subject.deploy }.to raise_error("Unknown environment [bad_env]")
54
+ end
55
+ end # with non-configured env
56
+
57
+ context 'with configured environment' do
58
+
59
+ let(:configure_gem) do
60
+ AdminModule.configure do |config|
61
+ config.credentials = { :dev => ['admin', 'Password1*'] }
62
+ end
63
+ end
64
+
65
+ it "requires a target when file is not pre-configured or found in guideline list" do
66
+ configure_gem
67
+ subject.env = :dev
68
+ subject.files = data_dir('patch-test.xml')
69
+
70
+ expect { subject.deploy }.to raise_error
71
+ end
72
+
73
+ it "deploys to target if specified and only one file is provided" do
74
+ configure_gem
75
+ subject.env = :dev
76
+ subject.files = data_dir('patch-test.xml')
77
+ subject.target = 'Z-TEMP'
78
+
79
+ expect { subject.deploy }.to_not raise_error
80
+ end
81
+ end # with configured env
82
+ end
83
+ end
84
+
85
+ end # module AdminModule::Task
@@ -0,0 +1,58 @@
1
+ ##############################################################################
2
+ # File:: parameter_task_spec.rb
3
+ # Purpose:: ParameterTask definition specification
4
+ #
5
+ # Author:: Jeff McAffee 03/19/2014
6
+ # Copyright:: Copyright (c) 2014, kTech Systems LLC. All rights reserved.
7
+ # Website:: http://ktechsystems.com
8
+ ##############################################################################
9
+
10
+ require 'spec_helper'
11
+ require 'admin_module/rake/parameter_task'
12
+
13
+ module AdminModule::Rake
14
+
15
+ describe ParameterTask do
16
+
17
+ subject { ParameterTask.new }
18
+
19
+ let(:configure_gem) do
20
+ AdminModule.configure do |config|
21
+ config.credentials = { :dev => ['admin', 'Password1*'] }
22
+ end
23
+ end
24
+
25
+
26
+ it "accepts environment" do
27
+ subject.env = :dev
28
+ end
29
+
30
+ it "accepts name" do
31
+ subject.name = 'My Variable Name'
32
+ end
33
+
34
+ it 'accepts include' do
35
+ subject.include = true
36
+ end
37
+
38
+ it 'rejects a non-true or non-false include' do
39
+ expect { subject.include = 'hello' }.to raise_error
40
+ expect { subject.include = nil }.to raise_error
41
+ expect { subject.include = true }.to_not raise_error
42
+ expect { subject.include = false }.to_not raise_error
43
+ end
44
+
45
+ context '#update' do
46
+
47
+ it "requires a variable name" do
48
+ configure_gem
49
+ subject.env = :dev
50
+ subject.include = true
51
+ subject.name = nil
52
+
53
+ expect { subject.update }.to raise_error
54
+ end
55
+ end # update
56
+ end
57
+
58
+ end # module AdminModule::Task
@@ -0,0 +1,75 @@
1
+ ##############################################################################
2
+ # File:: rules_task_spec.rb
3
+ # Purpose:: RulesTask definition specification
4
+ #
5
+ # Author:: Jeff McAffee 2014-04-24
6
+ # Copyright:: Copyright (c) 2014, kTech Systems LLC. All rights reserved.
7
+ # Website:: http://ktechsystems.com
8
+ ##############################################################################
9
+
10
+ require 'spec_helper'
11
+ require 'admin_module/rake/rules_task'
12
+
13
+ module AdminModule::Rake
14
+
15
+ describe RulesTask do
16
+
17
+ subject { RulesTask.new }
18
+
19
+ let(:configure_gem) do
20
+ AdminModule.configure do |config|
21
+ config.credentials = { :dev => ['admin', 'Password1*'] }
22
+ end
23
+ end
24
+
25
+
26
+ it "accepts environment" do
27
+ subject.env = :dev
28
+ end
29
+
30
+ it "accepts name" do
31
+ subject.name = 'My Rule Name'
32
+ end
33
+
34
+ it 'accepts action' do
35
+ subject.action = 'delete'
36
+ end
37
+
38
+ it 'accepts stop_on_exception' do
39
+ subject.stop_on_exception = true
40
+ end
41
+
42
+ it 'rejects a non-true or non-false stop_on_exception' do
43
+ expect { subject.stop_on_exception = 'hello' }.to raise_error
44
+ expect { subject.stop_on_exception = nil }.to raise_error
45
+ expect { subject.stop_on_exception = true }.to_not raise_error
46
+ expect { subject.stop_on_exception = false }.to_not raise_error
47
+ end
48
+
49
+ context '#commit' do
50
+
51
+ it "requires a rule name" do
52
+ configure_gem
53
+ subject.env = :dev
54
+ subject.stop_on_exception = true
55
+ subject.name = nil
56
+
57
+ expect { subject.commit }.to raise_error
58
+ end
59
+
60
+ it "calls AdminModule:CLI#delete_rule" do
61
+ configure_gem
62
+ subject.env = :dev
63
+ subject.stop_on_exception = true
64
+ subject.name = 'Test Rule'
65
+ subject.action = 'delete'
66
+
67
+ # See https://github.com/rspec/rspec-mocks for documentation:
68
+ expect_any_instance_of(AdminModule::CLI).to receive(:delete_rule).with('Test Rule')
69
+
70
+ subject.commit
71
+ end
72
+ end # commit
73
+ end
74
+
75
+ end # module AdminModule::Rake