test/lib/nephophobia/project_test.rb in nephophobia-0.0.5 vs test/lib/nephophobia/project_test.rb in nephophobia-0.0.6
- old
+ new
@@ -1,16 +1,18 @@
require "test_helper"
describe Nephophobia::Project do
before do
- @project = ADMIN_CLIENT.project
- @user = ADMIN_CLIENT.user
- @user_name = "foobar_user"
- @project_name = "foobar_project"
+ @project = ::Client.with(:admin).project
+ @user = ::Client.with(:admin).user
+ @user_name = "vcr"
+ @project_name = "vcr_project"
end
describe "#add_member" do
+ before { @project_name = "vcr_secondary_project" }
+
it "adds the given 'user_name' to the specified 'project_name'" do
VCR.use_cassette "project_add_member" do
response = @project.add_member @user_name, @project_name
response.return.must_equal true
@@ -21,11 +23,11 @@
describe "#all" do
it "returns all projects" do
VCR.use_cassette "project_all" do
response = @project.all
- response.size.must_equal 4
+ response.size.must_equal 5
end
end
it "has a 'TypeError: can't convert String into Integer' error" do
VCR.use_cassette "project_all_with_string_into_int_error" do
@@ -57,68 +59,78 @@
end
end
describe "#find" do
before do
- @project_name = "production"
-
VCR.use_cassette "project_find" do
@response = @project.find @project_name
end
end
-
it "returns the given 'project_name'" do
@response.name.must_equal @project_name
end
it "contains the project data" do
project = @response
- project.name.must_equal "production"
- project.manager_id.must_equal "root"
- project.description.must_equal "production"
+ project.name.must_equal "vcr_project"
+ project.manager_id.must_equal "vcr"
+ project.description.must_equal "vcr_project"
end
end
describe "#find with invalid project_name" do
it "rescues Hugs::Errors::BadRequest" do
- VCR.use_cassette "project_find_with_invalid_username" do
+ VCR.use_cassette "project_find_with_invalid_project_name" do
@response = @project.find "invalid_project_name"
end
@response.must_be_nil
end
end
describe "#members" do
- before { @project_name = "production" }
-
it "returns all project members for the given 'project_name'" do
VCR.use_cassette "project_members" do
response = @project.members @project_name
- response.size.must_equal 10
+ response.size.must_equal 2
end
end
+
+ it "has a 'TypeError: can't convert String into Integer' error" do
+ VCR.use_cassette "project_members_with_string_into_int_error" do
+ response = @project.members @project_name
+
+ response.size.must_equal 1
+ end
+ end
end
- describe "#member?" do
- before do
- @user_name = "jdewey"
- @project_name = "production"
+ describe "#members with invalid 'project_name'" do
+ it "rescues Hugs::Errors::BadRequest" do
+ VCR.use_cassette "project_members_with_invalid_project_name" do
+ @response = @project.members "invalid_project_name"
+ end
+
+ @response.must_be_nil
end
+ end
+ describe "#member?" do
it "returns true if the given 'user_name' is a member of the specified 'project_name'" do
VCR.use_cassette "project_members" do
response = @project.member? @user_name, @project_name
response.must_equal true
end
end
end
describe "#remove_member" do
+ before { @project_name = "vcr_secondary_project" }
+
it "removes the given 'user_name' from the specified 'project_name'" do
VCR.use_cassette "project_remove_member" do
response = @project.remove_member @user_name, @project_name
response.return.must_equal true