Example #1
0
    async def test_loading_next_view_entities_loads_from_current_when_next_deque_is_empty(
            self):
        preloader = Preloader()
        preloader.identifier_data_frame = pd.DataFrame(
            {'light_curve_path': ['a.fits', 'b.fits', 'c.fits', 'd.fits']})
        stub_view_entity_dictionary = {
            'a.fits': Mock(index=0),
            'b.fits': Mock(index=1),
            'c.fits': Mock(index=2),
            'd.fits': Mock(index=3)
        }

        def load_view_entity_side_effect(identifier_row):
            return stub_view_entity_dictionary[
                identifier_row['light_curve_path']]

        preloader.current_view_entity = Mock(index=1)

        with patch.object(
                module.ViewEntity,
                'from_identifier_data_frame_row') as stub_view_entity_factory:
            stub_view_entity_factory.side_effect = load_view_entity_side_effect
            await preloader.load_next_view_entities()

        assert len(preloader.next_view_entity_deque) == 2
        assert preloader.next_view_entity_deque[0].index == 2
        assert preloader.next_view_entity_deque[1].index == 3
Example #2
0
    async def test_decrementing_calls_refresh_of_surrounding_light_curve_loading(
            self):
        preloader = Preloader()
        preloader.next_view_entity_deque = MagicMock()
        preloader.previous_view_entity_deque = MagicMock()
        preloader.current_view_entity = Mock()
        mock_refresh_surrounding_light_curve_loading = AsyncMock()
        preloader.refresh_surrounding_light_curve_loading = mock_refresh_surrounding_light_curve_loading

        _ = await preloader.decrement()

        assert mock_refresh_surrounding_light_curve_loading.called
Example #3
0
    async def test_decrementing_preloader_shifts_light_curve_deques(self):
        preloader = Preloader()
        preloader.current_view_entity = Mock(index=1)
        preloader.previous_view_entity_deque = deque([Mock(index=0)])
        preloader.next_view_entity_deque = deque([Mock(index=2)])
        preloader.refresh_surrounding_light_curve_loading = AsyncMock()

        new_current = await preloader.decrement()

        assert new_current.index == 0
        assert len(preloader.next_view_entity_deque) == 2
        assert preloader.next_view_entity_deque[0].index == 1
        assert len(preloader.previous_view_entity_deque) == 0