Esempio n. 1
0
class RatesTests(unittest.TestCase):
    def setUp(self):
        # Open non-persisted db
        self.__repository = Rates(':memory:', True)

        # Pre-register some exchange rates
        self.__knownRates = [('PSD', 2.0), ('USD', 1.6), ('RUB', 1.9), ('TRY', 0.7)]
        for (currency, rate) in self.__knownRates:
            self.__repository.setRate(currency, rate)

    def test_setNewRate(self):
        self.assertEqual(self.__repository.getRatesCount(), 4)
        self.__repository.setRate('RRR', 0.5)
        self.assertEqual(self.__repository.getRatesCount(), 5)

    def test_setInvalidRate(self):
        self.assertRaises(AssertionError, self.__repository.setRate, 'RRR', -0.5)
        self.assertRaises(AssertionError, self.__repository.setRate, 'RRR', 0.0)
        self.assertRaises(AssertionError, self.__repository.setRate, 'RRR', -0.0)

    def test_setExistingRate(self):
        self.assertEqual(self.__repository.getRatesCount(), 4)
        self.assertEqual(self.__repository.getRate('PSD'), 2.0)
        self.__repository.setRate('PSD', 0.1)
        self.assertEqual(self.__repository.getRatesCount(), 4)
        self.assertEqual(self.__repository.getRate('PSD'), 0.1)

    def test_getExistingRate(self):
        self.assertEqual(self.__repository.getRate('USD'), 1.6)

    def test_getUnknownRate(self):
        self.assertEqual(self.__repository.getRate('FYL'), None)

    def test_getAllRates(self):
        self.assertEqual(self.__repository.getAllRates(), self.__knownRates)
Esempio n. 2
0
class RatesTests(unittest.TestCase):
    def setUp(self):
        # Open non-persisted db
        self.__repository = Rates(':memory:', True)

        # Pre-register some exchange rates
        self.__knownRates = [('PSD', 2.0), ('USD', 1.6), ('RUB', 1.9),
                             ('TRY', 0.7)]
        for (currency, rate) in self.__knownRates:
            self.__repository.setRate(currency, rate)

    def test_setNewRate(self):
        self.assertEqual(self.__repository.getRatesCount(), 4)
        self.__repository.setRate('RRR', 0.5)
        self.assertEqual(self.__repository.getRatesCount(), 5)

    def test_setInvalidRate(self):
        self.assertRaises(AssertionError, self.__repository.setRate, 'RRR',
                          -0.5)
        self.assertRaises(AssertionError, self.__repository.setRate, 'RRR',
                          0.0)
        self.assertRaises(AssertionError, self.__repository.setRate, 'RRR',
                          -0.0)

    def test_setExistingRate(self):
        self.assertEqual(self.__repository.getRatesCount(), 4)
        self.assertEqual(self.__repository.getRate('PSD'), 2.0)
        self.__repository.setRate('PSD', 0.1)
        self.assertEqual(self.__repository.getRatesCount(), 4)
        self.assertEqual(self.__repository.getRate('PSD'), 0.1)

    def test_getExistingRate(self):
        self.assertEqual(self.__repository.getRate('USD'), 1.6)

    def test_getUnknownRate(self):
        self.assertEqual(self.__repository.getRate('FYL'), None)

    def test_getAllRates(self):
        self.assertEqual(self.__repository.getAllRates(), self.__knownRates)