Beispiel #1
0
class TestRunnerBook(unittest.TestCase):
    def setUp(self):
        self.runner_book = RunnerBook(**{"id": 123})

    def test_update_traded(self):
        self.mock_traded = mock.Mock()
        self.runner_book.traded = self.mock_traded

        self.runner_book.update_traded([])
        self.mock_traded.clear.assert_called_with()

        self.runner_book.update_traded([1, 2])
        self.mock_traded.update.assert_called_with([1, 2])

    def test_serialise_back(self):
        mock_available_to_back = mock.Mock()
        mock_available_to_back.prices = True
        mock_best_available_to_back = mock.Mock()
        mock_best_available_to_back.prices = True
        mock_best_display_available_to_back = mock.Mock()
        mock_best_display_available_to_back.prices = True
        self.runner_book.available_to_back = mock_available_to_back

        assert (
            self.runner_book.serialise_available_to_back()
            == mock_available_to_back.serialise
        )

        mock_available_to_back.prices = False
        self.runner_book.best_available_to_back = mock_best_available_to_back
        assert (
            self.runner_book.serialise_available_to_back()
            == mock_best_available_to_back.serialise
        )

        mock_best_available_to_back.prices = False
        self.runner_book.best_display_available_to_back = (
            mock_best_display_available_to_back
        )
        assert (
            self.runner_book.serialise_available_to_back()
            == mock_best_display_available_to_back.serialise
        )

    def test_serialise_lay(self):
        mock_available_to_lay = mock.Mock()
        mock_available_to_lay.prices = True
        mock_best_available_to_lay = mock.Mock()
        mock_best_available_to_lay.prices = True
        mock_best_display_available_to_lay = mock.Mock()
        mock_best_display_available_to_lay.prices = True
        self.runner_book.available_to_lay = mock_available_to_lay

        assert (
            self.runner_book.serialise_available_to_lay()
            == mock_available_to_lay.serialise
        )

        mock_available_to_lay.prices = False
        self.runner_book.best_available_to_lay = mock_best_available_to_lay
        assert (
            self.runner_book.serialise_available_to_lay()
            == mock_best_available_to_lay.serialise
        )

        mock_best_available_to_lay.prices = False
        self.runner_book.best_display_available_to_lay = (
            mock_best_display_available_to_lay
        )
        assert (
            self.runner_book.serialise_available_to_lay()
            == mock_best_display_available_to_lay.serialise
        )

    def test_empty_serialise(self):
        runner_definition = {"bdp": None}
        serialise_d = self.runner_book.serialise(runner_definition)

        ex = serialise_d["ex"]
        # all empty lists
        assert all(not ex[a] for a in ex.keys())

        sp = serialise_d["sp"]
        # all 'None' or empty lists
        assert all(not sp[a] for a in sp.keys())
Beispiel #2
0
 def setUp(self):
     self.runner_book = RunnerBook(**{"id": 123})
 def setUp(self):
     self.runner_book = RunnerBook(**{'id': 123})