epc 1.0.3 → 1.0.4
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/epc.rb +25 -5
- data/lib/epc/client/json_client.rb +4 -4
- data/lib/epc/command/archive_command.rb +7 -6
- data/lib/epc/command/attachto_command.rb +13 -0
- data/lib/epc/command/base_command.rb +120 -29
- data/lib/epc/command/config/create_config_command.rb +7 -11
- data/lib/epc/command/config/delete_config_command.rb +5 -5
- data/lib/epc/command/config/list_configs_command.rb +5 -5
- data/lib/epc/command/config/update_config_command.rb +11 -10
- data/lib/epc/command/copy_command.rb +14 -0
- data/lib/epc/command/create_command.rb +9 -5
- data/lib/epc/command/delete_command.rb +9 -9
- data/lib/epc/command/{copy_deployment_command.rb → deployment/copy_deployment_command.rb} +6 -5
- data/lib/epc/command/deployment/create_deployment_command.rb +15 -15
- data/lib/epc/command/deployment/list_deployments_command.rb +2 -4
- data/lib/epc/command/deployment/show_deployment_command.rb +5 -7
- data/lib/epc/command/deployment/submit_deployment_command.rb +15 -0
- data/lib/epc/command/deployment/update_deployment_command.rb +5 -14
- data/lib/epc/command/deployment/vote_deployment_command.rb +23 -0
- data/lib/epc/command/deploymentstage/list_deploymentstages_command.rb +1 -1
- data/lib/epc/command/detachfrom_command.rb +13 -0
- data/lib/epc/command/group/create_group_command.rb +3 -3
- data/lib/epc/command/group/delete_group_command.rb +4 -5
- data/lib/epc/command/group/show_group_command.rb +2 -3
- data/lib/epc/command/group/update_group_command.rb +9 -7
- data/lib/epc/command/library/create_library_command.rb +1 -2
- data/lib/epc/command/library/delete_library_command.rb +4 -5
- data/lib/epc/command/library/list_libraries_command.rb +1 -1
- data/lib/epc/command/librarylanguage/create_librarylanguage_command.rb +1 -1
- data/lib/epc/command/librarylanguage/delete_librarylanguage_command.rb +3 -5
- data/lib/epc/command/librarylanguage/list_librarylanguages_command.rb +1 -1
- data/lib/epc/command/librarylanguage/update_librarylanguage_command.rb +4 -5
- data/lib/epc/command/libraryset/create_libraryset_command.rb +5 -4
- data/lib/epc/command/libraryset/delete_libraryset_command.rb +4 -6
- data/lib/epc/command/libraryset/list_librarysets_command.rb +2 -2
- data/lib/epc/command/libraryset/show_libraryset_command.rb +3 -3
- data/lib/epc/command/libraryset/update_libraryset_command.rb +4 -3
- data/lib/epc/command/list_command.rb +10 -14
- data/lib/epc/command/list_objecttypes_command.rb +1 -1
- data/lib/epc/command/objectrole/create_objectrole_command.rb +4 -5
- data/lib/epc/command/objectrole/list_objectroles_command.rb +3 -8
- data/lib/epc/command/objectrole/update_objectrole_command.rb +3 -1
- data/lib/epc/command/permission/list_permissions_command.rb +1 -1
- data/lib/epc/command/permissiongroup/list_permissiongroups_command.rb +1 -1
- data/lib/epc/command/plugin/create_plugin_command.rb +1 -2
- data/lib/epc/command/plugin/delete_plugin_command.rb +4 -6
- data/lib/epc/command/plugin/list_plugins_command.rb +1 -1
- data/lib/epc/command/plugin/show_plugin_command.rb +2 -5
- data/lib/epc/command/plugin/update_plugin_command.rb +2 -6
- data/lib/epc/command/project/archive_project_command.rb +3 -12
- data/lib/epc/command/project/attachto_project_command.rb +133 -0
- data/lib/epc/command/project/create_project_command.rb +6 -6
- data/lib/epc/command/project/delete_project_command.rb +3 -24
- data/lib/epc/command/project/detachfrom_project_command.rb +66 -0
- data/lib/epc/command/project/list_projects_command.rb +12 -7
- data/lib/epc/command/project/show_project_command.rb +26 -25
- data/lib/epc/command/project/show_project_snapshot_command.rb +41 -0
- data/lib/epc/command/project/unarchive_project_command.rb +3 -10
- data/lib/epc/command/project/update_project_command.rb +5 -18
- data/lib/epc/command/projecttype/create_projecttype_command.rb +37 -0
- data/lib/epc/command/projecttype/delete_projecttype_command.rb +24 -0
- data/lib/epc/command/projecttype/list_projecttypes_command.rb +1 -1
- data/lib/epc/command/projecttype/show_projecttype_command.rb +2 -4
- data/lib/epc/command/projecttype/update_projecttype_command.rb +61 -0
- data/lib/epc/command/push_command.rb +14 -8
- data/lib/epc/command/role/create_role_command.rb +26 -3
- data/lib/epc/command/role/delete_role_command.rb +3 -5
- data/lib/epc/command/role/list_roles_command.rb +7 -3
- data/lib/epc/command/role/show_role_command.rb +8 -5
- data/lib/epc/command/role/update_role_command.rb +14 -66
- data/lib/epc/command/runtime/create_runtime_command.rb +34 -0
- data/lib/epc/command/runtime/delete_runtime_command.rb +24 -0
- data/lib/epc/command/runtime/list_runtimes_command.rb +2 -2
- data/lib/epc/command/runtime/update_runtime_command.rb +49 -0
- data/lib/epc/command/runtimetype/list_runtimetypes_command.rb +17 -0
- data/lib/epc/command/servicedefinition/create_servicedefinition_command.rb +5 -6
- data/lib/epc/command/servicedefinition/delete_servicedefinition_command.rb +18 -0
- data/lib/epc/command/servicedefinition/list_servicedefinitions_command.rb +2 -2
- data/lib/epc/command/servicetype/list_servicetypes_command.rb +1 -1
- data/lib/epc/command/serviceversion/create_serviceversion_command.rb +8 -12
- data/lib/epc/command/serviceversion/delete_serviceversion_command.rb +3 -5
- data/lib/epc/command/serviceversion/list_serviceversions_command.rb +8 -1
- data/lib/epc/command/show_command.rb +8 -9
- data/lib/epc/command/show_metrics_command.rb +3 -3
- data/lib/epc/command/solution/archive_solution_command.rb +3 -10
- data/lib/epc/command/solution/create_solution_command.rb +2 -2
- data/lib/epc/command/solution/delete_solution_command.rb +3 -7
- data/lib/epc/command/solution/list_solutions_command.rb +11 -3
- data/lib/epc/command/solution/show_solution_command.rb +4 -6
- data/lib/epc/command/solution/unarchive_solution_command.rb +3 -8
- data/lib/epc/command/solution/update_solution_command.rb +4 -6
- data/lib/epc/command/submit_command.rb +16 -0
- data/lib/epc/command/unarchive_command.rb +7 -6
- data/lib/epc/command/update_command.rb +9 -8
- data/lib/epc/command/user/create_user_command.rb +2 -3
- data/lib/epc/command/user/delete_user_command.rb +3 -5
- data/lib/epc/command/user/list_users_command.rb +1 -1
- data/lib/epc/command/user/show_user_command.rb +2 -4
- data/lib/epc/command/user/update_user_command.rb +3 -14
- data/lib/epc/command/userproperty/list_user_properties_command.rb +23 -0
- data/lib/epc/command/vote_command.rb +16 -0
- data/lib/epc/config.rb +7 -1
- data/lib/epc/help.rb +51 -48
- data/lib/epc/modules/config.rb +39 -0
- data/lib/epc/modules/role.rb +133 -0
- data/lib/epc/runner.rb +23 -12
- data/lib/epc/version.rb +1 -1
- data/test/command/archive_project_command_test.rb +2 -13
- data/test/command/archive_solution_command_test.rb +4 -14
- data/test/command/copy_deployment_command_test.rb +4 -8
- data/test/command/create_config_command_test.rb +23 -23
- data/test/command/create_deployment_command_test.rb +33 -32
- data/test/command/create_group_command_test.rb +2 -2
- data/test/command/create_library_command_test.rb +6 -6
- data/test/command/create_librarylanguage_command_test.rb +3 -3
- data/test/command/create_libraryset_command_test.rb +6 -26
- data/test/command/create_objectrole_command_test.rb +4 -13
- data/test/command/create_project_command_test.rb +27 -13
- data/test/command/create_role_command_test.rb +3 -2
- data/test/command/create_runtime_command_test.rb +37 -0
- data/test/command/create_servicedefinition_command_test.rb +4 -17
- data/test/command/create_serviceversion_command_test.rb +8 -22
- data/test/command/create_solution_command_test.rb +5 -5
- data/test/command/create_user_command_test.rb +4 -4
- data/test/command/delete_config_command_test.rb +8 -15
- data/test/command/delete_library_command_test.rb +3 -4
- data/test/command/delete_librarylanguage_command_test.rb +3 -4
- data/test/command/delete_libraryset_command_test.rb +3 -4
- data/test/command/delete_plugin_command_test.rb +3 -4
- data/test/command/delete_project_command_test.rb +2 -10
- data/test/command/delete_projecttype_command_test.rb +31 -0
- data/test/command/delete_role_command_test.rb +5 -14
- data/test/command/delete_runtime_command_test.rb +31 -0
- data/test/command/delete_servicedefinition_command_test.rb +31 -0
- data/test/command/delete_serviceversion_command_test.rb +3 -2
- data/test/command/delete_solution_command_test.rb +3 -16
- data/test/command/delete_user_command_test.rb +3 -3
- data/test/command/list_config_command_test.rb +1 -0
- data/test/command/list_deployments_command_test.rb +11 -41
- data/test/command/list_objectroles_command_test.rb +4 -14
- data/test/command/list_projects_command_test.rb +0 -14
- data/test/command/list_roles_command_test.rb +3 -1
- data/test/command/list_runtimes_command_test.rb +2 -3
- data/test/command/list_runtimetypes_command_test.rb +29 -0
- data/test/command/list_userproperties_command_test.rb +33 -0
- data/test/command/push_command_test.rb +9 -1
- data/test/command/show_deployment_command_test.rb +36 -0
- data/test/command/show_group_command_test.rb +2 -1
- data/test/command/show_libraryset_command_test.rb +5 -3
- data/test/command/show_metrics_command_test.rb +4 -4
- data/test/command/show_plugin_command_test.rb +4 -4
- data/test/command/show_project_command_test.rb +5 -17
- data/test/command/show_project_snapshot_test.rb +33 -0
- data/test/command/show_projecttype_command_test.rb +5 -11
- data/test/command/show_role_command_test.rb +5 -12
- data/test/command/show_solution_command_test.rb +2 -15
- data/test/command/show_user_command_test.rb +4 -3
- data/test/command/submit_deployment_command_test.rb +4 -11
- data/test/command/unarchive_project_command_test.rb +2 -14
- data/test/command/unarchive_solution_command_test.rb +6 -16
- data/test/command/update_config_command_test.rb +14 -3
- data/test/command/update_deployment_command_test.rb +12 -26
- data/test/command/update_group_command_test.rb +2 -10
- data/test/command/update_librarylanguage_command_test.rb +5 -3
- data/test/command/update_libraryset_command_test.rb +4 -2
- data/test/command/update_plugin_command_test.rb +5 -4
- data/test/command/update_project_command_test.rb +6 -20
- data/test/command/update_role_command_test.rb +11 -8
- data/test/command/update_solution_command_test.rb +6 -12
- data/test/command/update_user_command_test.rb +3 -19
- data/test/command/vote_deployment_command_test.rb +2 -6
- metadata +66 -63
- data/lib/epc/command/attach_library_command.rb +0 -82
- data/lib/epc/command/attach_libraryset_command.rb +0 -31
- data/lib/epc/command/attach_runtime_command.rb +0 -26
- data/lib/epc/command/bind_service_command.rb +0 -35
- data/lib/epc/command/create_dependency_command.rb +0 -43
- data/lib/epc/command/dependency/delete_dependency_command.rb +0 -38
- data/lib/epc/command/detach_library_command.rb +0 -35
- data/lib/epc/command/detach_libraryset_command.rb +0 -8
- data/lib/epc/command/list_versions_command.rb +0 -38
- data/lib/epc/command/submit_deployment_command.rb +0 -19
- data/lib/epc/command/unbind_service_command.rb +0 -42
- data/lib/epc/command/undefine_service_command.rb +0 -33
- data/lib/epc/command/update_rolepermissions_command.rb +0 -83
- data/lib/epc/command/vote_deployment_command.rb +0 -29
- data/test/command/attach_library_command_test.rb +0 -124
- data/test/command/attach_libraryset_command_test.rb +0 -49
- data/test/command/attach_runtime_command_test.rb +0 -44
- data/test/command/bind_service_command_test.rb +0 -46
- data/test/command/create_dependency_command_test.rb +0 -55
- data/test/command/create_plugin_command_test.rb +0 -44
- data/test/command/delete_dependency_command_test.rb +0 -42
- data/test/command/detach_library_command_test.rb +0 -53
- data/test/command/unbind_service_command_test.rb +0 -48
- 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.
|
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
|
22
|
+
assert_equal(@command.execute, 404)
|
29
23
|
end
|
30
24
|
|
31
|
-
should "show details about the
|
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
|
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
|
18
|
+
assert_equal(@command.execute, 1)
|
17
19
|
end
|
18
20
|
|
19
|
-
should "show a role
|
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
|
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.
|
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
|
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
|
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
|
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
|
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.
|
25
|
-
@command.
|
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
|
-
|
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.
|
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
|
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 "
|
35
|
-
@mock_client.expects(:put).with(EPC::Config::SOLUTIONS_PATH + "/1", {:archived => false
|
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("
|
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("
|
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("
|
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 "
|
34
|
-
@command.expects(:get_deployed_project_id).with(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(
|
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,
|
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(
|
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,
|
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,
|
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,
|
54
|
+
assert_equal @command.send(:get_deployed_project_id, 1, 1), 3
|
69
55
|
end
|
70
56
|
end
|
71
57
|
|