epc 1.0.3 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (196) hide show
  1. data/lib/epc.rb +25 -5
  2. data/lib/epc/client/json_client.rb +4 -4
  3. data/lib/epc/command/archive_command.rb +7 -6
  4. data/lib/epc/command/attachto_command.rb +13 -0
  5. data/lib/epc/command/base_command.rb +120 -29
  6. data/lib/epc/command/config/create_config_command.rb +7 -11
  7. data/lib/epc/command/config/delete_config_command.rb +5 -5
  8. data/lib/epc/command/config/list_configs_command.rb +5 -5
  9. data/lib/epc/command/config/update_config_command.rb +11 -10
  10. data/lib/epc/command/copy_command.rb +14 -0
  11. data/lib/epc/command/create_command.rb +9 -5
  12. data/lib/epc/command/delete_command.rb +9 -9
  13. data/lib/epc/command/{copy_deployment_command.rb → deployment/copy_deployment_command.rb} +6 -5
  14. data/lib/epc/command/deployment/create_deployment_command.rb +15 -15
  15. data/lib/epc/command/deployment/list_deployments_command.rb +2 -4
  16. data/lib/epc/command/deployment/show_deployment_command.rb +5 -7
  17. data/lib/epc/command/deployment/submit_deployment_command.rb +15 -0
  18. data/lib/epc/command/deployment/update_deployment_command.rb +5 -14
  19. data/lib/epc/command/deployment/vote_deployment_command.rb +23 -0
  20. data/lib/epc/command/deploymentstage/list_deploymentstages_command.rb +1 -1
  21. data/lib/epc/command/detachfrom_command.rb +13 -0
  22. data/lib/epc/command/group/create_group_command.rb +3 -3
  23. data/lib/epc/command/group/delete_group_command.rb +4 -5
  24. data/lib/epc/command/group/show_group_command.rb +2 -3
  25. data/lib/epc/command/group/update_group_command.rb +9 -7
  26. data/lib/epc/command/library/create_library_command.rb +1 -2
  27. data/lib/epc/command/library/delete_library_command.rb +4 -5
  28. data/lib/epc/command/library/list_libraries_command.rb +1 -1
  29. data/lib/epc/command/librarylanguage/create_librarylanguage_command.rb +1 -1
  30. data/lib/epc/command/librarylanguage/delete_librarylanguage_command.rb +3 -5
  31. data/lib/epc/command/librarylanguage/list_librarylanguages_command.rb +1 -1
  32. data/lib/epc/command/librarylanguage/update_librarylanguage_command.rb +4 -5
  33. data/lib/epc/command/libraryset/create_libraryset_command.rb +5 -4
  34. data/lib/epc/command/libraryset/delete_libraryset_command.rb +4 -6
  35. data/lib/epc/command/libraryset/list_librarysets_command.rb +2 -2
  36. data/lib/epc/command/libraryset/show_libraryset_command.rb +3 -3
  37. data/lib/epc/command/libraryset/update_libraryset_command.rb +4 -3
  38. data/lib/epc/command/list_command.rb +10 -14
  39. data/lib/epc/command/list_objecttypes_command.rb +1 -1
  40. data/lib/epc/command/objectrole/create_objectrole_command.rb +4 -5
  41. data/lib/epc/command/objectrole/list_objectroles_command.rb +3 -8
  42. data/lib/epc/command/objectrole/update_objectrole_command.rb +3 -1
  43. data/lib/epc/command/permission/list_permissions_command.rb +1 -1
  44. data/lib/epc/command/permissiongroup/list_permissiongroups_command.rb +1 -1
  45. data/lib/epc/command/plugin/create_plugin_command.rb +1 -2
  46. data/lib/epc/command/plugin/delete_plugin_command.rb +4 -6
  47. data/lib/epc/command/plugin/list_plugins_command.rb +1 -1
  48. data/lib/epc/command/plugin/show_plugin_command.rb +2 -5
  49. data/lib/epc/command/plugin/update_plugin_command.rb +2 -6
  50. data/lib/epc/command/project/archive_project_command.rb +3 -12
  51. data/lib/epc/command/project/attachto_project_command.rb +133 -0
  52. data/lib/epc/command/project/create_project_command.rb +6 -6
  53. data/lib/epc/command/project/delete_project_command.rb +3 -24
  54. data/lib/epc/command/project/detachfrom_project_command.rb +66 -0
  55. data/lib/epc/command/project/list_projects_command.rb +12 -7
  56. data/lib/epc/command/project/show_project_command.rb +26 -25
  57. data/lib/epc/command/project/show_project_snapshot_command.rb +41 -0
  58. data/lib/epc/command/project/unarchive_project_command.rb +3 -10
  59. data/lib/epc/command/project/update_project_command.rb +5 -18
  60. data/lib/epc/command/projecttype/create_projecttype_command.rb +37 -0
  61. data/lib/epc/command/projecttype/delete_projecttype_command.rb +24 -0
  62. data/lib/epc/command/projecttype/list_projecttypes_command.rb +1 -1
  63. data/lib/epc/command/projecttype/show_projecttype_command.rb +2 -4
  64. data/lib/epc/command/projecttype/update_projecttype_command.rb +61 -0
  65. data/lib/epc/command/push_command.rb +14 -8
  66. data/lib/epc/command/role/create_role_command.rb +26 -3
  67. data/lib/epc/command/role/delete_role_command.rb +3 -5
  68. data/lib/epc/command/role/list_roles_command.rb +7 -3
  69. data/lib/epc/command/role/show_role_command.rb +8 -5
  70. data/lib/epc/command/role/update_role_command.rb +14 -66
  71. data/lib/epc/command/runtime/create_runtime_command.rb +34 -0
  72. data/lib/epc/command/runtime/delete_runtime_command.rb +24 -0
  73. data/lib/epc/command/runtime/list_runtimes_command.rb +2 -2
  74. data/lib/epc/command/runtime/update_runtime_command.rb +49 -0
  75. data/lib/epc/command/runtimetype/list_runtimetypes_command.rb +17 -0
  76. data/lib/epc/command/servicedefinition/create_servicedefinition_command.rb +5 -6
  77. data/lib/epc/command/servicedefinition/delete_servicedefinition_command.rb +18 -0
  78. data/lib/epc/command/servicedefinition/list_servicedefinitions_command.rb +2 -2
  79. data/lib/epc/command/servicetype/list_servicetypes_command.rb +1 -1
  80. data/lib/epc/command/serviceversion/create_serviceversion_command.rb +8 -12
  81. data/lib/epc/command/serviceversion/delete_serviceversion_command.rb +3 -5
  82. data/lib/epc/command/serviceversion/list_serviceversions_command.rb +8 -1
  83. data/lib/epc/command/show_command.rb +8 -9
  84. data/lib/epc/command/show_metrics_command.rb +3 -3
  85. data/lib/epc/command/solution/archive_solution_command.rb +3 -10
  86. data/lib/epc/command/solution/create_solution_command.rb +2 -2
  87. data/lib/epc/command/solution/delete_solution_command.rb +3 -7
  88. data/lib/epc/command/solution/list_solutions_command.rb +11 -3
  89. data/lib/epc/command/solution/show_solution_command.rb +4 -6
  90. data/lib/epc/command/solution/unarchive_solution_command.rb +3 -8
  91. data/lib/epc/command/solution/update_solution_command.rb +4 -6
  92. data/lib/epc/command/submit_command.rb +16 -0
  93. data/lib/epc/command/unarchive_command.rb +7 -6
  94. data/lib/epc/command/update_command.rb +9 -8
  95. data/lib/epc/command/user/create_user_command.rb +2 -3
  96. data/lib/epc/command/user/delete_user_command.rb +3 -5
  97. data/lib/epc/command/user/list_users_command.rb +1 -1
  98. data/lib/epc/command/user/show_user_command.rb +2 -4
  99. data/lib/epc/command/user/update_user_command.rb +3 -14
  100. data/lib/epc/command/userproperty/list_user_properties_command.rb +23 -0
  101. data/lib/epc/command/vote_command.rb +16 -0
  102. data/lib/epc/config.rb +7 -1
  103. data/lib/epc/help.rb +51 -48
  104. data/lib/epc/modules/config.rb +39 -0
  105. data/lib/epc/modules/role.rb +133 -0
  106. data/lib/epc/runner.rb +23 -12
  107. data/lib/epc/version.rb +1 -1
  108. data/test/command/archive_project_command_test.rb +2 -13
  109. data/test/command/archive_solution_command_test.rb +4 -14
  110. data/test/command/copy_deployment_command_test.rb +4 -8
  111. data/test/command/create_config_command_test.rb +23 -23
  112. data/test/command/create_deployment_command_test.rb +33 -32
  113. data/test/command/create_group_command_test.rb +2 -2
  114. data/test/command/create_library_command_test.rb +6 -6
  115. data/test/command/create_librarylanguage_command_test.rb +3 -3
  116. data/test/command/create_libraryset_command_test.rb +6 -26
  117. data/test/command/create_objectrole_command_test.rb +4 -13
  118. data/test/command/create_project_command_test.rb +27 -13
  119. data/test/command/create_role_command_test.rb +3 -2
  120. data/test/command/create_runtime_command_test.rb +37 -0
  121. data/test/command/create_servicedefinition_command_test.rb +4 -17
  122. data/test/command/create_serviceversion_command_test.rb +8 -22
  123. data/test/command/create_solution_command_test.rb +5 -5
  124. data/test/command/create_user_command_test.rb +4 -4
  125. data/test/command/delete_config_command_test.rb +8 -15
  126. data/test/command/delete_library_command_test.rb +3 -4
  127. data/test/command/delete_librarylanguage_command_test.rb +3 -4
  128. data/test/command/delete_libraryset_command_test.rb +3 -4
  129. data/test/command/delete_plugin_command_test.rb +3 -4
  130. data/test/command/delete_project_command_test.rb +2 -10
  131. data/test/command/delete_projecttype_command_test.rb +31 -0
  132. data/test/command/delete_role_command_test.rb +5 -14
  133. data/test/command/delete_runtime_command_test.rb +31 -0
  134. data/test/command/delete_servicedefinition_command_test.rb +31 -0
  135. data/test/command/delete_serviceversion_command_test.rb +3 -2
  136. data/test/command/delete_solution_command_test.rb +3 -16
  137. data/test/command/delete_user_command_test.rb +3 -3
  138. data/test/command/list_config_command_test.rb +1 -0
  139. data/test/command/list_deployments_command_test.rb +11 -41
  140. data/test/command/list_objectroles_command_test.rb +4 -14
  141. data/test/command/list_projects_command_test.rb +0 -14
  142. data/test/command/list_roles_command_test.rb +3 -1
  143. data/test/command/list_runtimes_command_test.rb +2 -3
  144. data/test/command/list_runtimetypes_command_test.rb +29 -0
  145. data/test/command/list_userproperties_command_test.rb +33 -0
  146. data/test/command/push_command_test.rb +9 -1
  147. data/test/command/show_deployment_command_test.rb +36 -0
  148. data/test/command/show_group_command_test.rb +2 -1
  149. data/test/command/show_libraryset_command_test.rb +5 -3
  150. data/test/command/show_metrics_command_test.rb +4 -4
  151. data/test/command/show_plugin_command_test.rb +4 -4
  152. data/test/command/show_project_command_test.rb +5 -17
  153. data/test/command/show_project_snapshot_test.rb +33 -0
  154. data/test/command/show_projecttype_command_test.rb +5 -11
  155. data/test/command/show_role_command_test.rb +5 -12
  156. data/test/command/show_solution_command_test.rb +2 -15
  157. data/test/command/show_user_command_test.rb +4 -3
  158. data/test/command/submit_deployment_command_test.rb +4 -11
  159. data/test/command/unarchive_project_command_test.rb +2 -14
  160. data/test/command/unarchive_solution_command_test.rb +6 -16
  161. data/test/command/update_config_command_test.rb +14 -3
  162. data/test/command/update_deployment_command_test.rb +12 -26
  163. data/test/command/update_group_command_test.rb +2 -10
  164. data/test/command/update_librarylanguage_command_test.rb +5 -3
  165. data/test/command/update_libraryset_command_test.rb +4 -2
  166. data/test/command/update_plugin_command_test.rb +5 -4
  167. data/test/command/update_project_command_test.rb +6 -20
  168. data/test/command/update_role_command_test.rb +11 -8
  169. data/test/command/update_solution_command_test.rb +6 -12
  170. data/test/command/update_user_command_test.rb +3 -19
  171. data/test/command/vote_deployment_command_test.rb +2 -6
  172. metadata +66 -63
  173. data/lib/epc/command/attach_library_command.rb +0 -82
  174. data/lib/epc/command/attach_libraryset_command.rb +0 -31
  175. data/lib/epc/command/attach_runtime_command.rb +0 -26
  176. data/lib/epc/command/bind_service_command.rb +0 -35
  177. data/lib/epc/command/create_dependency_command.rb +0 -43
  178. data/lib/epc/command/dependency/delete_dependency_command.rb +0 -38
  179. data/lib/epc/command/detach_library_command.rb +0 -35
  180. data/lib/epc/command/detach_libraryset_command.rb +0 -8
  181. data/lib/epc/command/list_versions_command.rb +0 -38
  182. data/lib/epc/command/submit_deployment_command.rb +0 -19
  183. data/lib/epc/command/unbind_service_command.rb +0 -42
  184. data/lib/epc/command/undefine_service_command.rb +0 -33
  185. data/lib/epc/command/update_rolepermissions_command.rb +0 -83
  186. data/lib/epc/command/vote_deployment_command.rb +0 -29
  187. data/test/command/attach_library_command_test.rb +0 -124
  188. data/test/command/attach_libraryset_command_test.rb +0 -49
  189. data/test/command/attach_runtime_command_test.rb +0 -44
  190. data/test/command/bind_service_command_test.rb +0 -46
  191. data/test/command/create_dependency_command_test.rb +0 -55
  192. data/test/command/create_plugin_command_test.rb +0 -44
  193. data/test/command/delete_dependency_command_test.rb +0 -42
  194. data/test/command/detach_library_command_test.rb +0 -53
  195. data/test/command/unbind_service_command_test.rb +0 -48
  196. data/test/command/undefine_service_command_test.rb +0 -49
@@ -3,25 +3,12 @@ require 'test_helper'
3
3
  class ShowProjectCommandTest < Test::Unit::TestCase
4
4
  should_require_login
5
5
 
6
- context "pre-execution checks" do
7
- setup do
8
- @mock_client = mock("Client")
9
- @command = EPC::Command::ShowProjectCommand.new(@mock_client)
10
- end
11
-
12
- should "fail if project type can't be determined" do
13
- assert_raise EPC::Error::FatalError do
14
- @command.expects(:infer_project_context).returns(nil)
15
- assert_equal(@command.execute, 1)
16
- end
17
- end
18
- end
19
-
20
6
  context "retrieval " do
21
7
  setup do
22
8
  @mock_client = mock("Client")
23
9
  @command = EPC::Command::ShowProjectCommand.new(@mock_client)
24
- @command.expects(:infer_project_context).returns([1, "FirstProject"])
10
+ @command.object_id = 1
11
+ @command.object_type = "Project"
25
12
  end
26
13
 
27
14
  should "notify if retrieval fails" do
@@ -33,7 +20,7 @@ class ShowProjectCommandTest < Test::Unit::TestCase
33
20
 
34
21
  should "show details about the requested project" do
35
22
  time = Time.now.to_s
36
- @mock_client.expects(:get).with(EPC::Config::PROJECTS_PATH+"/1?include=dependencies,roles,config_values,service_versions,libraries").
23
+ @mock_client.expects(:get).with(EPC::Config::PROJECTS_PATH+"/1?include=dependencies,roles,config_values,service_versions,libraries,pushed_versions").
37
24
  returns(
38
25
  [
39
26
  200,
@@ -41,7 +28,8 @@ class ShowProjectCommandTest < Test::Unit::TestCase
41
28
  :id => 1, :name => "Project1", :uri_name => "project1", :solution_id => 1, :service_version_id => 1, :created_at => Time.now, :last_push_date => Time.now, :last_push_by => {:id => 1, :name => "PusherName"},
42
29
  :config_values => [{:id => 1, :name => "N1", :value => "V1"}],
43
30
  :roles => [{:id => 1, :name => "role 1"}],
44
- :dependency_definitions => [{:dependency_id => 1, :dependency => {:id => 1, :name => "dep_name"}, :dependency_kind => "dep_kind"}]
31
+ :dependency_definitions => [{:dependency_id => 1, :dependency => {:id => 1, :name => "dep_name"}, :dependency_kind => "dep_kind"}],
32
+ :pushed_versions => []
45
33
  },
46
34
  {}
47
35
  ]
@@ -0,0 +1,33 @@
1
+ require 'test_helper'
2
+
3
+ class ShowProjectSnapshotCommandTest < Test::Unit::TestCase
4
+ should_require_login
5
+
6
+ context "retrieval" do
7
+ setup do
8
+ @mock_client = mock("Client")
9
+ @command = EPC::Command::ShowProjectSnapshotCommand.new(@mock_client)
10
+ @project_id = 1
11
+ @version = 2
12
+ end
13
+
14
+ should "notify if retrieval fails" do
15
+ @mock_client.expects(:get).returns([404, {:message => "Resource not found"}, {}])
16
+ @command.expects(:say).with("Request failed: [Resource not found]")
17
+
18
+ assert_equal(@command.execute, 404)
19
+ end
20
+
21
+
22
+ should "show details about the requested project" do
23
+
24
+ @mock_client.expects(:get).with(EPC::Config::PROJECTS_PATH+"/#{@project_id}/snapshot/#{@version}").
25
+ returns([200, {"id"=>2, "name"=>"ProjectName", "uri_name"=>"uri-2", "archived"=>false}, {}])
26
+
27
+ @command.expects(:say).at_least_once
28
+ assert_equal(@command.execute("#{@project_id}:#{@version}"), 200)
29
+ end
30
+
31
+ end
32
+
33
+ end
@@ -6,18 +6,12 @@ require 'mocha'
6
6
  class ShowProjecttypeCommandTest < Test::Unit::TestCase
7
7
  should_require_login
8
8
 
9
- context "pre-execution checks" do
10
- setup do
11
- @mock_client = mock("Client")
12
- @command = EPC::Command::ShowProjecttypeCommand.new(@mock_client)
13
- end
14
-
15
- end
16
-
17
9
  context "retrieval " do
18
10
  setup do
19
11
  @mock_client = mock("Client")
20
12
  @command = EPC::Command::ShowProjecttypeCommand.new(@mock_client)
13
+ @command.object_type = "ProjectType"
14
+ @command.object_id = 1
21
15
  end
22
16
 
23
17
  should "show error if status is not 201" do
@@ -25,15 +19,15 @@ class ShowProjecttypeCommandTest < Test::Unit::TestCase
25
19
  returns([404, {:message => "Not Found"}, {}])
26
20
 
27
21
  @command.expects(:say).with("Request failed: [Not Found]")
28
- assert_equal(@command.execute(1), 404)
22
+ assert_equal(@command.execute, 404)
29
23
  end
30
24
 
31
- should "show details about the request solution" do
25
+ should "show details about the requested project-type" do
32
26
  @mock_client.expects(:get).with(EPC::Config::PROJECT_TYPES_PATH+"/1").
33
27
  returns([200, {:id => 1, :name => "JS", :runtime => "js", :framework => "node", :build_type => "build"}, {}])
34
28
 
35
29
  @command.expects(:say).at_least_once
36
- assert_equal(@command.execute(1), 200)
30
+ assert_equal(@command.execute, 200)
37
31
  end
38
32
 
39
33
  end
@@ -7,31 +7,24 @@ class ShowRoleCommandTest < Test::Unit::TestCase
7
7
  setup do
8
8
  @mock_client = mock("Client")
9
9
  @command = EPC::Command::ShowRoleCommand.new(@mock_client)
10
+ @command.object_id = 1
11
+ @command.object_type = "Role"
10
12
  end
11
13
 
12
14
  should "fail if status is not 200" do
13
15
  @mock_client.expects(:get).with(EPC::Config::ROLES_PATH + "/1?include=users,user_groups,grants").
14
16
  returns([404, {:message => "Not Found"}, {}])
15
17
  @command.expects(:say).with("Request failed: [Not Found]")
16
- assert_equal(@command.execute(1), 1)
18
+ assert_equal(@command.execute, 1)
17
19
  end
18
20
 
19
- should "show a role specified by id" do
21
+ should "show a role" do
20
22
  @mock_client.expects(:get).with(EPC::Config::ROLES_PATH + "/1?include=users,user_groups,grants").
21
23
  returns([200, {}, {}])
22
24
  @command.expects(:say).at_least_once
23
25
 
24
- assert_equal(@command.execute(1), 200)
26
+ assert_equal(@command.execute, 200)
25
27
  end
26
28
 
27
-
28
- should "show a role specified by name" do
29
- @command.expects(:retrieve_identifier_for).returns(1)
30
- @mock_client.expects(:get).with(EPC::Config::ROLES_PATH + "/1?include=users,user_groups,grants").
31
- returns([200, {:id => 1, :name => "admin", :users => [{:id => 1, :name => "Group Leader", :email => "group_leader@epaas.com"}], :user_groups => [{:id => 1, :name => "The Leaders"}]}, {}])
32
- @command.expects(:say).at_least_once
33
-
34
- assert_equal(@command.execute("admin"), 200)
35
- end
36
29
  end
37
30
  end
@@ -6,25 +6,12 @@ require 'mocha'
6
6
  class ShowSolutionCommandTest < Test::Unit::TestCase
7
7
  should_require_login
8
8
 
9
- context "pre-execution checks" do
10
- setup do
11
- @mock_client = mock("Client")
12
- @command = EPC::Command::ShowSolutionCommand.new(@mock_client)
13
- end
14
-
15
- should "fail if solution can't be determined" do
16
- assert_raise EPC::Error::InputError do
17
- @command.expects(:infer_solution_context).returns(nil)
18
- assert_equal(@command.execute, 1)
19
- end
20
- end
21
- end
22
-
23
9
  context "retrieval " do
24
10
  setup do
25
11
  @mock_client = mock("Client")
26
12
  @command = EPC::Command::ShowSolutionCommand.new(@mock_client)
27
- @command.expects(:infer_solution_context).returns([1, "FirstSolution"])
13
+ @command.object_id = 1
14
+ @command.object_type = "Solution"
28
15
  end
29
16
 
30
17
  should "notify if retrieval fails" do
@@ -7,6 +7,8 @@ class ShowUserCommandTest < Test::Unit::TestCase
7
7
  setup do
8
8
  @mock_client = mock("Client")
9
9
  @command = EPC::Command::ShowUserCommand.new(@mock_client)
10
+ @command.object_id = 1
11
+ @command.object_type = "User"
10
12
  end
11
13
 
12
14
 
@@ -14,16 +16,15 @@ class ShowUserCommandTest < Test::Unit::TestCase
14
16
  @mock_client.expects(:get).with(EPC::Config::USERS_PATH + "/1?include=user_groups").
15
17
  returns([404, {:message => "Not Found"}, {}])
16
18
  @command.expects(:say).with("Request failed: [Not Found]")
17
- assert_equal(@command.execute(1), 404)
19
+ assert_equal(@command.execute, 404)
18
20
  end
19
21
 
20
22
  should "show a user" do
21
- @command.expects(:retrieve_identifier_for).returns(1)
22
23
  @mock_client.expects(:get).with(EPC::Config::USERS_PATH + "/1?include=user_groups").
23
24
  returns([200, {:id => 1, :name => "admin", :user_groups => [{:id => 1, :name => "Administrators"}]}, {}])
24
25
  @command.expects(:say).at_least_once
25
26
 
26
- assert_equal(@command.execute(1), 200)
27
+ assert_equal(@command.execute, 200)
27
28
  end
28
29
 
29
30
  end
@@ -3,19 +3,12 @@ require 'test_helper'
3
3
  class SubmitDeploymentCommandTest < Test::Unit::TestCase
4
4
  should_require_login
5
5
 
6
- context "execution" do
7
- should "report error if deployment_id is nil" do
8
- command = EPC::Command::SubmitDeploymentCommand.new(@mock_client)
9
- command.expects(:say).with("You must specify a deployment id")
10
- command.expects(:say).with(EPC::Help::COMMAND_USAGES[:submit_deployment])
11
- command.execute(nil)
12
- end
13
- end
14
-
15
6
  context "submitting" do
16
7
  setup do
17
8
  @mock_client = mock("Client")
18
9
  @command = EPC::Command::SubmitDeploymentCommand.new(@mock_client)
10
+ @command.object_id = 1
11
+ @command.object_type = "Deployment"
19
12
  end
20
13
 
21
14
  should "submit the deployment if the status is 200" do
@@ -23,7 +16,7 @@ class SubmitDeploymentCommandTest < Test::Unit::TestCase
23
16
  returns([200, {:id => 1}, {}])
24
17
 
25
18
  @command.expects(:say).with("Deployment submitted for approval")
26
- assert_equal(@command.execute("1"), 200)
19
+ assert_equal(@command.execute, 200)
27
20
  end
28
21
 
29
22
  should "report failure if the status is not 200" do
@@ -31,7 +24,7 @@ class SubmitDeploymentCommandTest < Test::Unit::TestCase
31
24
  @mock_client.expects(:put).with("/api/v1/deployments/1/submit").
32
25
  returns([404, { :message => "Not Found"}, {}])
33
26
  @command.expects(:say).with("Request failed: [Not Found]")
34
- assert_equal(@command.execute("1"), 404)
27
+ assert_equal(@command.execute, 404)
35
28
  end
36
29
  end
37
30
  end
@@ -4,25 +4,13 @@ require 'shoulda'
4
4
  require 'mocha'
5
5
 
6
6
  class UnarchiveProjectCommandTest < Test::Unit::TestCase
7
- context "pre-execution checks" do
8
- setup do
9
- @mock_client = mock("Client")
10
- @command = EPC::Command::UnarchiveProjectCommand.new(@mock_client)
11
- end
12
-
13
- should "fail if no project specified" do
14
- assert_raise EPC::Error::FatalError do
15
- @command.execute
16
- end
17
- end
18
- end
19
7
 
20
8
  context "archiving" do
21
9
  setup do
22
10
  @mock_client = mock("Client")
23
11
  @command = EPC::Command::UnarchiveProjectCommand.new(@mock_client)
24
- @command.expects(:infer_solution_context).returns([1, "FirstSolution"])
25
- @command.expects(:infer_project_context).returns([1, "FirstProject"])
12
+ @command.object_id = 1
13
+ @command.object_type = "Project"
26
14
  end
27
15
 
28
16
  should "fail if status is not 201" do
@@ -4,35 +4,25 @@ require 'shoulda'
4
4
  require 'mocha'
5
5
 
6
6
  class UnarchiveSolutionCommandTest < Test::Unit::TestCase
7
- context "pre-execution checks" do
8
- setup do
9
- @mock_client = mock("Client")
10
- @command = EPC::Command::UnarchiveSolutionCommand.new(@mock_client)
11
- end
12
7
 
13
- should "fail if no solution specified" do
14
- assert_raise EPC::Error::FatalError do
15
- @command.execute
16
- end
17
- end
18
- end
19
- context "archiving" do
8
+ context "unarchiving" do
20
9
  setup do
21
10
  @mock_client = mock("Client")
22
11
  @command = EPC::Command::UnarchiveSolutionCommand.new(@mock_client)
23
- @command.expects(:infer_solution_context).returns([1, "FirstSolution"])
12
+ @command.object_id = 1
13
+ @command.object_type = "Solution"
24
14
  end
25
15
 
26
16
  should "fail if status is not 201" do
27
- @mock_client.expects(:put).with(EPC::Config::SOLUTIONS_PATH + "/1", {:archived => false, :name => "FirstSolution"}).
17
+ @mock_client.expects(:put).with(EPC::Config::SOLUTIONS_PATH + "/1", {:archived => false}).
28
18
  returns([400, {:message => "Not Found"}, {}])
29
19
 
30
20
  @command.expects(:say).with("Solution could not be unarchived. Request failed with: [Not Found]")
31
21
  assert_equal(@command.execute, 400)
32
22
  end
33
23
 
34
- should "archive the solution" do
35
- @mock_client.expects(:put).with(EPC::Config::SOLUTIONS_PATH + "/1", {:archived => false, :name => "FirstSolution"}).
24
+ should "unarchive the solution" do
25
+ @mock_client.expects(:put).with(EPC::Config::SOLUTIONS_PATH + "/1", {:archived => false}).
36
26
  returns([200, {}, {}])
37
27
 
38
28
  @command.expects(:say).with("Solution has been unarchived.")
@@ -6,7 +6,12 @@ class UpdateConfigCommandTest < Test::Unit::TestCase
6
6
  context "fail" do
7
7
  setup do
8
8
  @mock_client = mock("Client")
9
+ EPC::Command::UpdateConfigCommand.send :include, EPC::Command::Config
9
10
  @command = EPC::Command::UpdateConfigCommand.new(@mock_client)
11
+ @command.object_type = "Config"
12
+ @command.object_id = "key1"
13
+ @command.target_type = "Project"
14
+ @command.target_id = "1"
10
15
  end
11
16
 
12
17
  should "fail if status code is not 200" do
@@ -22,7 +27,7 @@ class UpdateConfigCommandTest < Test::Unit::TestCase
22
27
  ).returns([400, {:message => "Not Found"}, {}])
23
28
 
24
29
  @command.expects("say").with("Request failed with message [Not Found]")
25
- assert_equal(@command.execute("key1", "", "value1"), 400)
30
+ assert_equal(@command.execute(["value1"]), 400)
26
31
 
27
32
  end
28
33
 
@@ -35,7 +40,7 @@ class UpdateConfigCommandTest < Test::Unit::TestCase
35
40
  {}])
36
41
 
37
42
  @command.expects(:say).with("Key does not exist.")
38
- assert_equal(@command.execute("key1", "", "value1"), 1)
43
+ assert_equal(@command.execute(["value1"]), 1)
39
44
 
40
45
  end
41
46
  end
@@ -44,11 +49,16 @@ class UpdateConfigCommandTest < Test::Unit::TestCase
44
49
  setup do
45
50
  @mock_client = mock("Client")
46
51
  @command = EPC::Command::UpdateConfigCommand.new(@mock_client)
52
+
47
53
  end
48
54
 
49
55
 
50
56
  should "update keys" do
51
57
  @command = EPC::Command::UpdateConfigCommand.new(@mock_client, {:required => false})
58
+ @command.object_type = "Config"
59
+ @command.object_id = "key1"
60
+ @command.target_type = "Project"
61
+ @command.target_id = "1"
52
62
  @command.expects(:extract_configuration_level).returns(["Project", 1])
53
63
 
54
64
  @mock_client.expects(:get).with(EPC::Config::CONFIGURATIONS_PATH + "/Project/1").
@@ -56,12 +66,13 @@ class UpdateConfigCommandTest < Test::Unit::TestCase
56
66
  [{:name => "key1", :value => "value2", :value_type => "data", :required => false, :id => 1, :configurable_id => 1, :configurable_type => "Project"}],
57
67
  {}])
58
68
 
69
+
59
70
  @mock_client.expects(:put).with(EPC::Config::CONFIGURATIONS_PATH+"/1",
60
71
  {:name => "key1", :value => "value1", :required => false}
61
72
  ).returns([200, {:id => 1}, {}])
62
73
 
63
74
  @command.expects(:say).with("key1 saved.")
64
- assert_equal(@command.execute("key1", "", "value1"), 200)
75
+ assert_equal(@command.execute(["value1"]), 200)
65
76
  end
66
77
  end
67
78
 
@@ -3,45 +3,31 @@ require 'test_helper'
3
3
  class UpdateDeploymentCommandTest < Test::Unit::TestCase
4
4
  should_require_login
5
5
 
6
- context "pre-execution checks" do
7
-
8
- setup do
9
- @mock_client = mock("Client")
10
- @command = EPC::Command::UpdateDeploymentCommand.new(@mock_client)
11
- end
12
-
13
-
14
- should "require either instance-count or uris" do
15
- @command.options[:instances] = nil
16
- @command.options[:uris] = nil
17
-
18
- assert_raise EPC::Error::FatalError do
19
- assert_equal(@command.execute(1, 1), 1)
20
- end
21
- end
22
-
23
- end
24
6
 
25
7
  context "execution" do
26
8
  setup do
27
9
  @mock_client = mock("Client")
28
10
  @command = EPC::Command::UpdateDeploymentCommand.new(@mock_client)
11
+ @command.object_id = 1
12
+ @command.object_type = "Deployment"
13
+ @command.target_id = 1
14
+ @command.target_type = "Project"
29
15
  @command.options[:instances] = 3
30
16
  @command.options[:uris] = "new-uri.instance-host.com"
31
17
  end
32
18
 
33
- should "do the request to core" do
34
- @command.expects(:get_deployed_project_id).with(1, :id, 1).returns(1)
19
+ should "fail on bad status" do
20
+ @command.expects(:get_deployed_project_id).with(1, 1).returns(1)
35
21
  @mock_client.expects(:put).with(EPC::Config::DEPLOYMENTS_PATH + "/1/deployed_projects/1", {:instances => 3, :uris => ['new-uri.instance-host.com']}).returns([404, {:message => "Not Found"}, {}])
36
22
  @command.expects(:say).with("Request failed with: [Not Found]").at_least_once
37
- assert_equal(@command.execute(1,"Project:1"), 404)
23
+ assert_equal(@command.execute([]), 404)
38
24
  end
39
25
 
40
26
  should "should do the request to core" do
41
- @command.expects(:get_deployed_project_id).with(1, :id, 1).returns(1)
27
+ @command.expects(:get_deployed_project_id).with(1, 1).returns(1)
42
28
  @mock_client.expects(:put).with(EPC::Config::DEPLOYMENTS_PATH + "/1/deployed_projects/1", {:instances => 3, :uris => ['new-uri.instance-host.com']}).returns([200, {}, {}])
43
29
  @command.expects(:say).with("Deployment updated")
44
- assert_equal(@command.execute(1,"Project:1"), 200)
30
+ assert_equal(@command.execute([]), 200)
45
31
  end
46
32
  end
47
33
 
@@ -54,18 +40,18 @@ class UpdateDeploymentCommandTest < Test::Unit::TestCase
54
40
  should "fail if can't retrieve deployments" do
55
41
  assert_raise EPC::Error::FatalError do
56
42
  @mock_client.expects(:get).returns([500, {:message => "System exception"}, {}])
57
- @command.send(:get_deployed_project_id, 1, :name, "FirstProject")
43
+ @command.send(:get_deployed_project_id, 1, 1)
58
44
  end
59
45
  end
60
46
 
61
47
  should "return nil if response from server was blank" do
62
48
  @mock_client.expects(:get).returns([200, {}, {}])
63
- assert_equal @command.send(:get_deployed_project_id, 1, :name, "FirstProject"), nil
49
+ assert_equal @command.send(:get_deployed_project_id, 1, 1), nil
64
50
  end
65
51
 
66
52
  should "return the id when it finds one" do
67
53
  @mock_client.expects(:get).returns([200, {:solution => {:projects => [{:id => 1, :name => "FirstProject", :deployed_project_id => 3}]}}, {}])
68
- assert_equal @command.send(:get_deployed_project_id, 1, :name, "FirstProject"), 3
54
+ assert_equal @command.send(:get_deployed_project_id, 1, 1), 3
69
55
  end
70
56
  end
71
57