mirror of https://github.com/fspc/BikeShed-1.git
Jason Denney
11 years ago
6 changed files with 66 additions and 8 deletions
@ -0,0 +1,52 @@ |
|||
require 'spec_helper' |
|||
|
|||
describe Api::V1::TaskListsController do |
|||
render_views |
|||
|
|||
describe "#show" do |
|||
context "as a user" do |
|||
before(:each) do |
|||
@user = FactoryGirl.create(:user) |
|||
sign_in @user |
|||
end |
|||
|
|||
context "task list exists" do |
|||
let!(:task_list){ FactoryGirl.create(:task_list) } |
|||
|
|||
it "returns 200" do |
|||
get :show, id: task_list.id, format: :json |
|||
expect(@response.code.to_i).to eql 200 |
|||
end |
|||
|
|||
it "returns valid task list json" do |
|||
get :show, id: task_list.id, format: :json |
|||
json = JSON.parse(@response.body) |
|||
expect(json.to_s).to include(task_list.name) |
|||
end |
|||
|
|||
it "returns task list with tasks json" do |
|||
get :show, id: task_list.id, format: :json |
|||
json = JSON.parse(@response.body) |
|||
expect(task_list.tasks.count).to be > 0 |
|||
task_list.tasks.each do |task| |
|||
expect(json.to_s).to include(task.task) |
|||
end |
|||
end |
|||
end |
|||
|
|||
context "task list does not exist" do |
|||
it "returns 404" do |
|||
get :show, id: 999, format: :json |
|||
expect(@response.code.to_i).to eql 404 |
|||
end |
|||
|
|||
it "returns an error message" do |
|||
get :show, id: 999, format: :json |
|||
json = JSON.parse(@response.body) |
|||
expect(json["errors"].first). |
|||
to eql Api::V1::TaskListsController::NOT_FOUND |
|||
end |
|||
end |
|||
end |
|||
end |
|||
end |
@ -0,0 +1,7 @@ |
|||
FactoryGirl.define do |
|||
factory :task_list do |
|||
item_id { FactoryGirl.create(:bike).id } |
|||
item_type "Bike" |
|||
name { Faker::Lorem.words.join(" ")} |
|||
end |
|||
end |
Loading…
Reference in new issue