Пример #1
0
 def test_pricing_free_B(self):
     # We need to test that we don't get more than the number of B that are in the checkout
     self.assertEqual(checkout("EEB"), 40 + 40)
     self.assertEqual(checkout("EE"), 40 + 40)
     self.assertEqual(checkout("EEEEEEB"), 40 * 6)
     self.assertEqual(checkout("EEBB"), 40 + 40 + 30)
     self.assertEqual(checkout("EEBBBB"), 40 + 40 + 45 + 30)
Пример #2
0
    def test_checkout(self):
        self.assertEqual(checkout('AAABBCD'), 210)

        self.assertEqual(checkout('AAAABBC'), 245)

        self.assertEqual(checkout('&'), -1)

        self.assertEqual(checkout('CCC'), 60)
Пример #3
0
 def test_group_discount(self):
     self.assertEqual(checkout('ST'), 40)
     self.assertEqual(checkout('TY'), 40)
     self.assertEqual(checkout('ZZS'), 45)
     self.assertEqual(checkout('TTX'), 45)
     self.assertEqual(checkout('XXX'), 45)
     self.assertEqual(checkout('TXY'), 45)
     self.assertEqual(checkout('TXYS'), 62)
     self.assertEqual(checkout('ZSTY'), 65)
     self.assertEqual(checkout('ZZZY'), 65)
     self.assertEqual(checkout('ZXZZ'), 62)
Пример #4
0
 def test_A_new_discount(self):
     self.assertEqual(checkout('AAAA'), 180)
     self.assertEqual(checkout('AAAAA'), 200)
     self.assertEqual(checkout('AAAAAA'), 250)
     self.assertEqual(checkout('AAAAAAA'), 300)
     self.assertEqual(checkout('AAAAAAAA'), 330)
     self.assertEqual(checkout('AAAAAAAAA'), 380)
     self.assertEqual(checkout('AAAAAAAAAA'), 400)
Пример #5
0
 def test_F_discount(self):
     self.assertEqual(checkout('F'), 10)
     self.assertEqual(checkout('FF'), 20)
     self.assertEqual(checkout('FFF'), 20)
     self.assertEqual(checkout('FFFF'), 30)
     self.assertEqual(checkout('FFFFF'), 40)
     self.assertEqual(checkout('FFFFFF'), 40)
Пример #6
0
 def test_pricing_multi_A(self):
     self.assertEqual(checkout("AAA"), 130)
     self.assertEqual(checkout("AABA"), 130 + 30)
     self.assertEqual(checkout("BACDAA"), 130 + 30 + 20 + 15)
     self.assertEqual(checkout("AAAAA"), 200)
     self.assertEqual(checkout("AAAAAAAAAA"), 400)
     self.assertEqual(checkout("AAAAAAAAAAAAA"), 530)
Пример #7
0
    def test_checkout_single_b(self):
        self.assertEqual(checkout("B"), 30)

        def test_checkout_list_input(self):
            self.assertEqual(checkout(["B"]), 30)

        def test_checkout_lower_input(self):
            self.assertEqual(checkout("b"), -1)

        def test_checkout_mixed_input(self):
            self.assertEqual(checkout("AbC"), -1)

        def test_checkout_punct(self):
            self.assertEqual(checkout("!,."), -1)
Пример #8
0
 def test_checkout(self):
     assert checkout("FFFFFF") == 40
Пример #9
0
 def test_checkout(self):
     assert checkout("AC") == 70
Пример #10
0
 def test_checkout(self):
     assert checkout("EE") == 80
Пример #11
0
 def test_checkout(self):
     assert checkout("BBB") == 75
Пример #12
0
 def test_checkout(self):
     assert checkout("A") == 50
Пример #13
0
 def test_checkout(self):
     assert checkout("ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ") == 1602
Пример #14
0
 def test_checkout_illegal(self):
     self.assertEqual(checkout(15), -1)
Пример #15
0
 def test_checkout_empty_str(self):
     self.assertEqual(checkout(""), -1)
Пример #16
0
 def test_checkout(self):
     assert checkout("ZZZ") == 45
Пример #17
0
 def test_checkout(self):
     assert checkout("STXZ") == 62
Пример #18
0
 def test_checkout(self):
     self.assertEqual(checkout("AABC"), 150)
Пример #19
0
 def test_checkout(self):
     assert checkout(None) == 0
Пример #20
0
 def test_checkout(self):
     assert checkout("CDFFAECBDEAB") == 300
Пример #21
0
 def test_checkout(self):
     assert checkout("ACBxA") == -1
Пример #22
0
 def test_checkout(self):
     assert checkout("RRRQ") == 150
Пример #23
0
 def test_checkout(self):
     assert checkout("BBCB") == 95
Пример #24
0
 def test_checkout(self):
     assert checkout("NNNM") == 120
Пример #25
0
 def test_checkout(self):
     assert checkout("EEEB") == 120
Пример #26
0
 def test_checkout(self):
     assert checkout("STXYZS") == 90
Пример #27
0
 def test_checkout(self):
     assert checkout("AAAAA") == 200
Пример #28
0
 def test_checkout(self):
     assert checkout("SSS") == 45
Пример #29
0
 def test_checkout(self):
     assert checkout("ABCDEFABCDEF") == 300
Пример #30
0
 def test_checkout(self):
     assert checkout("SSSZ") == 65