class TestGetNetWorth(unittest.TestCase): def setUp(self): self._calculator_obj_one = Calculator(150000, 70000, 2019, 80000, 6666) self._calculator_obj_two = Calculator(150000, 80000, 2019, 80000, 6666) self._calculator_obj_three = Calculator(150000, 90000, 2019, 80000, 6666) def test_net_worth_easy_first(self): self.assertEqual(self._calculator_obj_one.get_net_worth(), 1840000) def test_net_worth_easy_second(self): self.assertEqual(self._calculator_obj_two.get_net_worth(), 1920000) def test_net_worth_easy_third(self): self.assertEqual(self._calculator_obj_three.get_net_worth(), 1840000) def test_net_worth_medium_first(self): pass def test_net_worth_medium_second(self): pass def test_net_worth_medium_third(self): pass def test_net_worth_hard_first(self): pass def test_net_worth_hard_second(self): pass def test_net_worth_hard_third(self): pass
class TestGetApartmentsNeeded(unittest.TestCase): def setUp(self): self._calculator_obj_one = Calculator(150000, 70000, 2019, 80000, 6666) self._calculator_obj_two = Calculator(150000, 80000, 2019, 80000, 6666) self._calculator_obj_three = Calculator(150000, 90000, 2019, 80000, 6666) def test_apartments_needed_easy_first(self): self.assertEqual(self._calculator_obj_one.get_apartments_needed(), 23) def test_apartments_needed_easy_second(self): self.assertEqual(self._calculator_obj_two.get_apartments_needed(), 24) def test_apartments_needed_easy_third(self): self.assertEqual(self._calculator_obj_three.get_apartments_needed(), 23) def test_apartments_needed_medium_first(self): pass def test_apartments_needed_medium_second(self): pass def test_apartments_needed_medium_third(self): pass def test_apartments_needed_hard_first(self): pass def test_apartments_needed_hard_second(self): pass def test_apartments_needed_hard_third(self): pass
def setUp(self): self._calculator_obj_one = Calculator(150000, 70000, 2019, 80000, 6666) self._calculator_obj_two = Calculator(150000, 80000, 2019, 80000, 6666) self._calculator_obj_three = Calculator(150000, 90000, 2019, 80000, 6666) self._calculator_data_one = {2019: [0, 70000], 2020: [1.0, 66666], 2021: [2.0, 69998], 2022: [3.0, 79996], 2023: [4.0, 96660], 2024: [6.0, 46656], 2025: [7.0, 83318], 2026: [8.0, 126646], 2027: [10.0, 103306], 2028: [12.0, 93298], 2029: [14.0, 96622], 2030: [16.0, 113278], 2031: [18.0, 143266], 2032: [20.0, 186586], 2033: [23.0, 169904]} self._calculator_data_two = {2019: [1.0, 6666], 2020: [2.0, 19998], 2021: [3.0, 39996], 2022: [4.0, 66660], 2023: [5.0, 99990], 2024: [7.0, 66652], 2025: [8.0, 119980], 2026: [10.0, 106640], 2027: [12.0, 106632], 2028: [14.0, 119956], 2029: [16.0, 146612], 2030: [18.0, 186600], 2031: [21.0, 166586], 2032: [24.0, 166570]} self._calculator_data_three = {2019: [1.0, 16666], 2020: [2.0, 39998], 2021: [3.0, 69996], 2022: [4.0, 106660], 2023: [6.0, 76656], 2024: [8.0, 59984], 2025: [9.0, 129978], 2026: [11.0, 133304], 2027: [13.0, 149962], 2028: [15.0, 179952], 2029: [18.0, 149940], 2030: [20.0, 213260], 2031: [23.0, 216578]}
class TestCalculate(unittest.TestCase): def setUp(self): self._calculator_obj_one = Calculator(150000, 70000, 2019, 80000, 6666) self._calculator_obj_two = Calculator(150000, 80000, 2019, 80000, 6666) self._calculator_obj_three = Calculator(150000, 90000, 2019, 80000, 6666) self._calculator_data_one = {2019: [0, 70000], 2020: [1.0, 66666], 2021: [2.0, 69998], 2022: [3.0, 79996], 2023: [4.0, 96660], 2024: [6.0, 46656], 2025: [7.0, 83318], 2026: [8.0, 126646], 2027: [10.0, 103306], 2028: [12.0, 93298], 2029: [14.0, 96622], 2030: [16.0, 113278], 2031: [18.0, 143266], 2032: [20.0, 186586], 2033: [23.0, 169904]} self._calculator_data_two = {2019: [1.0, 6666], 2020: [2.0, 19998], 2021: [3.0, 39996], 2022: [4.0, 66660], 2023: [5.0, 99990], 2024: [7.0, 66652], 2025: [8.0, 119980], 2026: [10.0, 106640], 2027: [12.0, 106632], 2028: [14.0, 119956], 2029: [16.0, 146612], 2030: [18.0, 186600], 2031: [21.0, 166586], 2032: [24.0, 166570]} self._calculator_data_three = {2019: [1.0, 16666], 2020: [2.0, 39998], 2021: [3.0, 69996], 2022: [4.0, 106660], 2023: [6.0, 76656], 2024: [8.0, 59984], 2025: [9.0, 129978], 2026: [11.0, 133304], 2027: [13.0, 149962], 2028: [15.0, 179952], 2029: [18.0, 149940], 2030: [20.0, 213260], 2031: [23.0, 216578]} def test_calculate_easy_first(self): """Year number: 2019, Apt number owned 0 Passive Income $70000 Year number: 2020, Apt number owned 1.0 Passive Income $66666 Year number: 2021, Apt number owned 2.0 Passive Income $69998 Year number: 2022, Apt number owned 3.0 Passive Income $79996 Year number: 2023, Apt number owned 4.0 Passive Income $96660 Year number: 2024, Apt number owned 6.0 Passive Income $46656 Year number: 2025, Apt number owned 7.0 Passive Income $83318 Year number: 2026, Apt number owned 8.0 Passive Income $126646 Year number: 2027, Apt number owned 10.0 Passive Income $103306 Year number: 2028, Apt number owned 12.0 Passive Income $93298 Year number: 2029, Apt number owned 14.0 Passive Income $96622 Year number: 2030, Apt number owned 16.0 Passive Income $113278 Year number: 2031, Apt number owned 18.0 Passive Income $143266 Year number: 2032, Apt number owned 20.0 Passive Income $186586 Year number: 2033, Apt number owned 23.0 Passive Income $169904 You can reach a passive income of $150000, but it will take: 15 years """ for k in self._calculator_obj_one.get_results().keys(): self.assertEqual(self._calculator_obj_one.get_results().get(k), self._calculator_data_one.get(k)) def test_calculate_easy_second(self): """Year number: 2019, Apt number owned 1.0 Passive Income $6666 Year number: 2020, Apt number owned 2.0 Passive Income $19998 Year number: 2021, Apt number owned 3.0 Passive Income $39996 Year number: 2022, Apt number owned 4.0 Passive Income $66660 Year number: 2023, Apt number owned 5.0 Passive Income $99990 Year number: 2024, Apt number owned 7.0 Passive Income $66652 Year number: 2025, Apt number owned 8.0 Passive Income $119980 Year number: 2026, Apt number owned 10.0 Passive Income $106640 Year number: 2027, Apt number owned 12.0 Passive Income $106632 Year number: 2028, Apt number owned 14.0 Passive Income $119956 Year number: 2029, Apt number owned 16.0 Passive Income $146612 Year number: 2030, Apt number owned 18.0 Passive Income $186600 Year number: 2031, Apt number owned 21.0 Passive Income $166586 Year number: 2032, Apt number owned 24.0 Passive Income $166570 You can reach a passive income of $150000, but it will take: 14 years """ for k in self._calculator_obj_two.get_results().keys(): self.assertEqual(self._calculator_obj_two.get_results().get(k), self._calculator_data_two.get(k)) def test_calculate_easy_third(self): """Year number: 2019, Apt number owned 1.0 Passive Income $16666 Year number: 2020, Apt number owned 2.0 Passive Income $39998 Year number: 2021, Apt number owned 3.0 Passive Income $69996 Year number: 2022, Apt number owned 4.0 Passive Income $106660 Year number: 2023, Apt number owned 6.0 Passive Income $76656 Year number: 2024, Apt number owned 8.0 Passive Income $59984 Year number: 2025, Apt number owned 9.0 Passive Income $129978 Year number: 2026, Apt number owned 11.0 Passive Income $133304 Year number: 2027, Apt number owned 13.0 Passive Income $149962 Year number: 2028, Apt number owned 15.0 Passive Income $179952 Year number: 2029, Apt number owned 18.0 Passive Income $149940 Year number: 2030, Apt number owned 20.0 Passive Income $213260 Year number: 2031, Apt number owned 23.0 Passive Income $216578 You can reach a passive income of $150000, but it will take: 13 years """ for k in self._calculator_obj_three.get_results().keys(): self.assertEqual(self._calculator_obj_three.get_results().get(k), self._calculator_data_three.get(k)) def test_calculate_medium_first(self): with self.assertRaises(TypeError): Calculator("111111", "111111", "111111", "111111", "111111") def test_calculate_medium_second(self): with self.assertRaises(TypeError): Calculator(150000, 70000, 2019.123, 80000, 80000) def test_calculate_medium_third(self): with self.assertRaises(TypeError): Calculator(150000, "29217", 2019, 80000, True) def test_calculate_hard_first(self): with self.assertRaises(TypeError): Calculator(None, None, None, None, None) def test_calculate_hard_second(self): with self.assertRaises(TypeError): Calculator(111111, None, None, None, None) def test_calculate_hard_third(self): with self.assertRaises(TypeError): Calculator(111111, 293.28, 183029, 102938, Exception)
def setUp(self): self._calculator_obj_one = Calculator(150000, 70000, 2019, 80000, 6666) self._calculator_obj_two = Calculator(150000, 80000, 2019, 80000, 6666) self._calculator_obj_three = Calculator(150000, 90000, 2019, 80000, 6666)
def test_calculate_hard_third(self): with self.assertRaises(TypeError): Calculator(111111, 293.28, 183029, 102938, Exception)
def test_calculate_hard_second(self): with self.assertRaises(TypeError): Calculator(111111, None, None, None, None)
def test_calculate_hard_first(self): with self.assertRaises(TypeError): Calculator(None, None, None, None, None)
def test_calculate_medium_third(self): with self.assertRaises(TypeError): Calculator(150000, "29217", 2019, 80000, True)
def test_calculate_medium_second(self): with self.assertRaises(TypeError): Calculator(150000, 70000, 2019.123, 80000, 80000)
def test_calculate_medium_first(self): with self.assertRaises(TypeError): Calculator("111111", "111111", "111111", "111111", "111111")