Advertisement
cepxuozab

WorkerBehavior

Jul 28th, 2024
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.78 KB | None | 0 0
  1. void WorkerBehavior() {
  2.         {
  3.             Worker p("ivan"s, 17);
  4.             ASSERT_EQUAL(p.GetDanceCount(), 0);
  5.             ASSERT_EQUAL(p.GetSatisfaction(), 100);
  6.             ASSERT_EQUAL(p.GetWorkDone(), 0);
  7.             p.LiveADay();
  8.             ASSERT_EQUAL(p.GetDanceCount(), 0);
  9.             ASSERT_EQUAL(p.GetSatisfaction(), 100 - 5);
  10.             ASSERT_EQUAL(p.GetWorkDone(), 1);
  11.  
  12.             p.Dance();
  13.             ASSERT_EQUAL(p.GetDanceCount(), 1);
  14.             ASSERT_EQUAL(p.GetSatisfaction(), 100 - 5 + 1);
  15.             ASSERT_EQUAL(p.GetWorkDone(), 1);
  16.             p.LiveADay();
  17.             ASSERT_EQUAL(p.GetDanceCount(), 1);
  18.             ASSERT_EQUAL(p.GetSatisfaction(), 100 - 5 + 1 - 5);
  19.             ASSERT_EQUAL(p.GetWorkDone(), 1 + 1);
  20.  
  21.             p.Dance();
  22.             p.Dance();
  23.             ASSERT_EQUAL(p.GetDanceCount(), 1 + 2);
  24.             ASSERT_EQUAL(p.GetSatisfaction(), 100 - 5 + 1 - 5 + 2);
  25.             ASSERT_EQUAL(p.GetWorkDone(), 1 + 1);
  26.  
  27.             p.Work();
  28.             ASSERT_EQUAL(p.GetDanceCount(), 1 + 2);
  29.             ASSERT_EQUAL(p.GetSatisfaction(), 100 - 5 + 1 - 5 + 2 - 5);
  30.             ASSERT_EQUAL(p.GetWorkDone(), 1 + 1 + 1);
  31.  
  32.             const auto &p_c = p;
  33.             ASSERT_EQUAL(p_c.GetDanceCount(), 1 + 2);
  34.             ASSERT_EQUAL(p_c.GetSatisfaction(), 100 - 5 + 1 - 5 + 2 - 5);
  35.             ASSERT_EQUAL(p_c.GetWorkDone(), 1 + 1 + 1);
  36.         } {
  37.             Worker p("ivan"s, 37);
  38.             ASSERT_EQUAL(p.GetDanceCount(), 0);
  39.             ASSERT_EQUAL(p.GetSatisfaction(), 100);
  40.             ASSERT_EQUAL(p.GetWorkDone(), 0);
  41.             p.LiveADay();
  42.             ASSERT_EQUAL(p.GetDanceCount(), 0);
  43.             ASSERT_EQUAL(p.GetSatisfaction(), 100 - 5);
  44.             ASSERT_EQUAL(p.GetWorkDone(), 1);
  45.  
  46.             p.Dance();
  47.             ASSERT_EQUAL(p.GetDanceCount(), 1);
  48.             ASSERT_EQUAL(p.GetSatisfaction(), 100 - 5 + 2);
  49.             ASSERT_EQUAL(p.GetWorkDone(), 1);
  50.             p.LiveADay();
  51.             ASSERT_EQUAL(p.GetDanceCount(), 1);
  52.             ASSERT_EQUAL(p.GetSatisfaction(), 100 - 5 + + 2 - 5);
  53.             ASSERT_EQUAL(p.GetWorkDone(), 1 + 1);
  54.  
  55.             p.Dance();
  56.             p.Dance();
  57.             ASSERT_EQUAL(p.GetDanceCount(), 1 + 2);
  58.             ASSERT_EQUAL(p.GetSatisfaction(), 100 - 5 + 2 - 5 + 4);
  59.             ASSERT_EQUAL(p.GetWorkDone(), 1 + 1);
  60.  
  61.             p.Work();
  62.             ASSERT_EQUAL(p.GetDanceCount(), 1 + 2);
  63.             ASSERT_EQUAL(p.GetSatisfaction(), 100 - 5 + 2 - 5 + 4 - 5);
  64.             ASSERT_EQUAL(p.GetWorkDone(), 1 + 1 + 1);
  65.  
  66.             const auto &p_c = p;
  67.             ASSERT_EQUAL(p_c.GetDanceCount(), 1 + 2);
  68.             ASSERT_EQUAL(p_c.GetSatisfaction(), 100 - 5 + 2 - 5 + 4 - 5);
  69.             ASSERT_EQUAL(p_c.GetWorkDone(), 1 + 1 + 1);
  70.         }
  71.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement