Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void WorkerBehaviorWithSatisfactionSupervisor() {
- {
- Worker p("ivan"s, 17);
- SatisfactionSupervisor sup{103, 107};
- p.SetObserver(&sup);
- ASSERT_EQUAL(p.GetDanceCount(), 0);
- ASSERT_EQUAL(p.GetSatisfaction(), 100);
- ASSERT_EQUAL(p.GetWorkDone(), 0);
- p.LiveADay();
- ASSERT_EQUAL(p.GetDanceCount(), 12);
- ASSERT_EQUAL(p.GetSatisfaction(), 107);
- ASSERT_EQUAL(p.GetWorkDone(), 1);
- p.Dance();
- ASSERT_EQUAL(p.GetDanceCount(), 12 + 1);
- ASSERT_EQUAL(p.GetSatisfaction(), 107 + 1);
- ASSERT_EQUAL(p.GetWorkDone(), 1);
- p.LiveADay();
- ASSERT_EQUAL(p.GetDanceCount(), 12 + 1);
- ASSERT_EQUAL(p.GetSatisfaction(), 107 + 1 - 5);
- ASSERT_EQUAL(p.GetWorkDone(), 1 + 1);
- p.Dance();
- p.Dance();
- ASSERT_EQUAL(p.GetDanceCount(), 12 + 1 + 2);
- ASSERT_EQUAL(p.GetSatisfaction(), 107 + 1 - 5 + 2);
- ASSERT_EQUAL(p.GetWorkDone(), 1 + 1);
- p.Work();
- ASSERT_EQUAL(p.GetDanceCount(), 12 + 1 + 2 + 7);
- ASSERT_EQUAL(p.GetSatisfaction(), 107);
- ASSERT_EQUAL(p.GetWorkDone(), 1 + 1 + 1);
- const auto& p_c = p;
- ASSERT_EQUAL(p_c.GetDanceCount(), 12 + 1 + 2 + 7);
- ASSERT_EQUAL(p_c.GetSatisfaction(), 107);
- ASSERT_EQUAL(p_c.GetWorkDone(), 1 + 1 + 1);
- } {
- Worker p("ivan"s, 37);
- SatisfactionSupervisor sup{104, 107};
- p.SetObserver(&sup);
- ASSERT_EQUAL(p.GetDanceCount(), 0);
- ASSERT_EQUAL(p.GetSatisfaction(), 100);
- ASSERT_EQUAL(p.GetWorkDone(), 0);
- p.LiveADay();
- ASSERT_EQUAL(p.GetDanceCount(), 6);
- ASSERT_EQUAL(p.GetSatisfaction(), 107);
- ASSERT_EQUAL(p.GetWorkDone(), 1);
- p.Dance();
- ASSERT_EQUAL(p.GetDanceCount(), 6 + 1);
- ASSERT_EQUAL(p.GetSatisfaction(), 107 + 2);
- ASSERT_EQUAL(p.GetWorkDone(), 1);
- p.LiveADay();
- ASSERT_EQUAL(p.GetDanceCount(), 6 + 1);
- ASSERT_EQUAL(p.GetSatisfaction(), 107 + 2 - 5);
- ASSERT_EQUAL(p.GetWorkDone(), 1 + 1);
- p.Dance();
- p.Dance();
- ASSERT_EQUAL(p.GetDanceCount(), 6 + 1 + 2);
- ASSERT_EQUAL(p.GetSatisfaction(), 107 + 2 - 5 + 4);
- ASSERT_EQUAL(p.GetWorkDone(), 1 + 1);
- p.Work();
- ASSERT_EQUAL(p.GetDanceCount(), 6 + 1 + 2 + 2);
- ASSERT_EQUAL(p.GetSatisfaction(), 107);
- ASSERT_EQUAL(p.GetWorkDone(), 1 + 1 + 1);
- const auto& p_c = p;
- ASSERT_EQUAL(p_c.GetDanceCount(), 6 + 1 + 2 + 2);
- ASSERT_EQUAL(p_c.GetSatisfaction(), 107);
- ASSERT_EQUAL(p_c.GetWorkDone(), 1 + 1 + 1);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement