예제 #1
0
class MailListTest(unittest.TestCase):
    """docstring for MailListTest"""

    def setUp(self):
        # f**k static
        self.m = MailList(1, "Hack Bulgaria")

    def test_create_mail_list_get_name(self):
        self.assertEqual("Hack Bulgaria", self.m.get_name())

    def test_add_subscriber(self):
        self.m.add_subscriber("Rado", "*****@*****.**")

        self.assertEqual(1, self.m.count())

    def test_get_subscribers(self):
        self.m.add_subscriber("Rado", "*****@*****.**")

        expected = [("Rado", "*****@*****.**")]
        self.assertEqual(expected, self.m.get_subscribers())

    def test_get_id(self):
        self.assertEqual(1, self.m.get_id())

    def test_get_id_after_three_instances(self):
        m1 = MailList(1, "Hack")
        m2 = MailList(2, "Hack")
        m3 = MailList(3, "Hack")

        self.assertEqual(1, m1.get_id())
        self.assertEqual(2, m2.get_id())
        self.assertEqual(3, m3.get_id())

    def test_add_subscriber_with_same_email_address(self):
        subscriber_email = "*****@*****.**"

        add1 = self.m.add_subscriber("Rado", subscriber_email)
        add2 = self.m.add_subscriber("Rado Rado", subscriber_email)

        self.assertEqual(1, self.m.count())
        self.assertTrue(add1)
        self.assertFalse(add2)
        self.assertEqual(("Rado", subscriber_email),
                         self.m.get_subscriber_by_email(subscriber_email))

    def test_add_get_subscriber_by_email(self):
        self.m.add_subscriber("Rado", "*****@*****.**")

        result = self.m.get_subscriber_by_email("*****@*****.**")
        self.assertEqual(("Rado", "*****@*****.**"), result)

    def test_add_get_subscriber_by_email_when_not_there(self):
        self.assertIsNone(self.m.get_subscriber_by_email("*****@*****.**"))

    def test_update_subscriber_changing_name(self):
        self.m.add_subscriber("Rado rado", "*****@*****.**")
        self.m.update_subscriber("*****@*****.**",
                                 {"name": "Radoslav Georgiev"})

        self.assertEqual("Radoslav Georgiev",
                         self.m.get_subscriber_by_email("*****@*****.**")[0])

    def test_update_subscriber_changing_email(self):
        self.m.add_subscriber("Rado rado", "*****@*****.**")
        self.m.update_subscriber("*****@*****.**",
                                 {"email": "*****@*****.**"})

        self.assertEqual(("Rado rado", "*****@*****.**"),
                         self.m.get_subscriber_by_email("*****@*****.**"))

    def test_update_subscriber_changing_name_and_email(self):
        self.m.add_subscriber("Rado rado", "*****@*****.**")
        self.m.update_subscriber("*****@*****.**",
                                 {"name": "Radoslav Georgiev",
                                  "email": "*****@*****.**"})

        self.assertEqual(("Radoslav Georgiev", "*****@*****.**"),
                         self.m.get_subscriber_by_email("*****@*****.**"))

    def test_remove_subscriber(self):
        self.m.add_subscriber("Rado rado", "*****@*****.**")
        self.m.remove_subscriber("*****@*****.**")

        self.assertEqual(0, self.m.count())

    def test_remove_subscriber_when_not_there(self):
        self.assertIsNone(self.m.remove_subscriber("*****@*****.**"))
예제 #2
0
class MailListTest(unittest.TestCase):
    """docstring for MailListTest"""

    def setUp(self):
        # f**k static
        self.m = MailList(1, "Hack Bulgaria")

    def test_create_mail_list_get_name(self):
        self.assertEqual("Hack Bulgaria", self.m.get_name())

    def test_add_subscriber(self):
        self.m.add_subscriber("Rado", "*****@*****.**")

        self.assertEqual(1, self.m.count())

    def test_get_subscribers(self):
        self.m.add_subscriber("Rado", "*****@*****.**")

        expected = [("Rado", "*****@*****.**")]
        self.assertEqual(expected, self.m.get_subscribers())

    def test_get_id(self):
        self.assertEqual(1, self.m.get_id())

    def test_get_id_after_three_instances(self):
        m1 = MailList(1, "Hack")
        m2 = MailList(2, "Hack")
        m3 = MailList(3, "Hack")

        self.assertEqual(1, m1.get_id())
        self.assertEqual(2, m2.get_id())
        self.assertEqual(3, m3.get_id())

    def test_add_subscriber_with_same_email_address(self):
        subscriber_email = "*****@*****.**"

        add1 = self.m.add_subscriber("Rado", subscriber_email)
        add2 = self.m.add_subscriber("Rado Rado", subscriber_email)

        self.assertEqual(1, self.m.count())
        self.assertTrue(add1)
        self.assertFalse(add2)
        self.assertEqual(("Rado", subscriber_email),
                         self.m.get_subscriber_by_email(subscriber_email))

    def test_add_get_subscriber_by_email(self):
        self.m.add_subscriber("Rado", "*****@*****.**")

        result = self.m.get_subscriber_by_email("*****@*****.**")
        self.assertEqual(("Rado", "*****@*****.**"), result)

    def test_add_get_subscriber_by_email_when_not_there(self):
        self.assertIsNone(self.m.get_subscriber_by_email("*****@*****.**"))

    def test_update_subscriber_changing_name(self):
        self.m.add_subscriber("Rado rado", "*****@*****.**")
        self.m.update_subscriber("*****@*****.**",
                                 {"name": "Radoslav Georgiev"})

        self.assertEqual("Radoslav Georgiev",
                         self.m.get_subscriber_by_email("*****@*****.**")[0])

    def test_update_subscriber_changing_email(self):
        self.m.add_subscriber("Rado rado", "*****@*****.**")
        self.m.update_subscriber("*****@*****.**",
                                 {"email": "*****@*****.**"})

        self.assertEqual(("Rado rado", "*****@*****.**"),
                         self.m.get_subscriber_by_email("*****@*****.**"))

    def test_update_subscriber_changing_name_and_email(self):
        self.m.add_subscriber("Rado rado", "*****@*****.**")
        self.m.update_subscriber("*****@*****.**",
                                 {"name": "Radoslav Georgiev",
                                  "email": "*****@*****.**"})

        self.assertEqual(("Radoslav Georgiev", "*****@*****.**"),
                         self.m.get_subscriber_by_email("*****@*****.**"))

    def test_remove_subscriber(self):
        self.m.add_subscriber("Rado rado", "*****@*****.**")
        self.m.remove_subscriber("*****@*****.**")

        self.assertEqual(0, self.m.count())

    def test_remove_subscriber_when_not_there(self):
        self.assertIsNone(self.m.remove_subscriber("*****@*****.**"))
예제 #3
0
class MailListTest(unittest.TestCase):
    """docstring for MailListTest"""

    def setUp(self):
        # f**k static
        self.m = MailList("Hack Bulgaria")

    def test_create_mail_list_get_name(self):
        self.assertEqual("Hack Bulgaria", self.m.get_name())

    def test_add_subscriber(self):
        subscriber = Subscriber("Rado", "*****@*****.**")
        self.m.add_subscriber(subscriber)

        self.assertEqual(1, self.m.count())

    def test_get_subscribers(self):
        subscriber = Subscriber("Rado", "*****@*****.**")
        self.m.add_subscriber(subscriber)

        expected = [("Rado", "*****@*****.**")]
        self.assertEqual(expected, self.m.get_subscribers())


    def test_add_subscriber_with_same_email_address(self):
        subscriber_email = "*****@*****.**"
        subscriber_1 = Subscriber("Rado", subscriber_email)
        subscriber_2 = Subscriber("Rado Rado", subscriber_email)

        add1 = self.m.add_subscriber(subscriber_1)
        add2 = self.m.add_subscriber(subscriber_2)

        self.assertEqual(1, self.m.count())
        self.assertTrue(add1)
        self.assertFalse(add2)
        subscriber = self.m.get_subscriber_by_email(subscriber_email)
        self.assertEqual("Rado", subscriber.get_name())

    def test_add_get_subscriber_by_email(self):
        subscriber = Subscriber("Rado", "*****@*****.**")
        self.m.add_subscriber(subscriber)

        result = self.m.get_subscriber_by_email("*****@*****.**")
        self.assertEqual("Rado", result.get_name())

    def test_add_get_subscriber_by_email_when_not_there(self):
        self.assertIsNone(self.m.get_subscriber_by_email("*****@*****.**"))

    def test_update_subscriber_changing_name(self):
        subscriber = Subscriber("Rado", "*****@*****.**")
        self.m.add_subscriber(subscriber)
        self.m.update_subscriber("*****@*****.**",
                                 {"name": "Radoslav Georgiev"})

        sub = self.m.get_subscriber_by_email("*****@*****.**")
        self.assertEqual("Radoslav Georgiev",
                         sub.get_name())

    def test_update_subscriber_changing_email(self):
        subscriber = Subscriber("Rado", "*****@*****.**")
        self.m.add_subscriber(subscriber)
        self.m.update_subscriber("*****@*****.**",
                                 {"email": "*****@*****.**"})

        self.assertEqual("*****@*****.**",
                         self.m.get_subscriber_by_email("*****@*****.**").get_email())

    def test_update_subscriber_changing_name_and_email(self):
        subscriber = Subscriber("Rado rado", "*****@*****.**")
        self.m.add_subscriber(subscriber)
        self.m.update_subscriber("*****@*****.**",
                                 {"name": "Radoslav Georgiev",
                                  "email": "*****@*****.**"})

        self.assertEqual("Radoslav Georgiev",
                         self.m.get_subscriber_by_email("*****@*****.**").get_name())

    def test_remove_subscriber(self):
        subscriber = Subscriber("Rado", "*****@*****.**")
        self.m.add_subscriber(subscriber)
        self.m.remove_subscriber("*****@*****.**")

        self.assertEqual(0, self.m.count())

    def test_remove_subscriber_when_not_there(self):
        self.assertIsNone(self.m.remove_subscriber("*****@*****.**"))