spec/models/flyboy/goal_spec.rb in flyboy-1.0.4 vs spec/models/flyboy/goal_spec.rb in flyboy-1.0.5
- old
+ new
@@ -43,18 +43,29 @@
goal = FactoryGirl.create(:flyboy_goal)
expect(goal.revision).to eq "121221-1 1"
end
describe "#progress" do
- it "should be average of tasks" do
+ it "update task should update goal progress" do
goal = FactoryGirl.create(:flyboy_goal)
task1 = FactoryGirl.create(:flyboy_task, goal: goal, progress: 50)
task2 = FactoryGirl.create(:flyboy_task, goal: goal, progress: 100)
- expect(goal.progress).to eq 75
+ expect(goal.reload.progress).to eq 75
+ task1.progress = 100
+ task1.save
+ expect(goal.reload.progress).to eq 100
end
- it "should be 0 if no task" do
- expect(FactoryGirl.create(:flyboy_goal).progress).to eq 0
+ it "delete task should update goal progress" do
+ goal = FactoryGirl.create(:flyboy_goal)
+ task1 = FactoryGirl.create(:flyboy_task, goal: goal, progress: 50)
+ expect(goal.reload.progress).to eq 50
+ task1.destroy
+ expect(goal.reload.progress).to eq 0
+ end
+
+ it "should be 0 if new goal" do
+ expect(Flyboy::Goal.new.progress).to eq 0
end
end
describe "states" do
it "initial state should be open" do