Ejemplo n.º 1
0
    def test_should_return_interpolated_content(self):
        multi_content_data_source = IdRememberingMultiContentDataSourceStub('client')
        most_shared_fetcher = StubMostSharedFetcher()
        shared_count_interpolator = SharedCountInterpolator()

        data_source = MostSharedDataSource(n_items=23,
            multi_content_data_source=multi_content_data_source,
            most_shared_fetcher=most_shared_fetcher,
            shared_count_interpolator=shared_count_interpolator
        )
        data = data_source.fetch_data()
        self.assertEquals(list('Interpolated content'), data)
Ejemplo n.º 2
0
    def test_should_fetch_each_piece_of_content_from_api(self):
        multi_content_data_source = IdRememberingMultiContentDataSourceStub('client')
        most_shared_fetcher = StubMostSharedFetcher()
        shared_count_interpolator = SharedCountInterpolator()

        data_source = MostSharedDataSource(n_items=23,
            multi_content_data_source=multi_content_data_source,
            most_shared_fetcher=most_shared_fetcher,
            shared_count_interpolator=shared_count_interpolator
        )
        data_source.fetch_data()
        self.assertTrue(multi_content_data_source.fetch_all_was_called)
Ejemplo n.º 3
0
    def test_should_call_interpolator_with_shared_counts_and_content_list(self):
        multi_content_data_source = IdRememberingMultiContentDataSourceStub('client')
        most_shared_fetcher = StubMostSharedFetcher()
        shared_count_interpolator = SharedCountInterpolator()

        data_source = MostSharedDataSource(n_items=23,
            multi_content_data_source=multi_content_data_source,
            most_shared_fetcher=most_shared_fetcher,
            shared_count_interpolator=shared_count_interpolator
        )
        data_source.fetch_data()
        self.assertEquals(api_data, shared_count_interpolator.content_list)
        self.assertEquals(comment_count_list, shared_count_interpolator.comment_count_list)
Ejemplo n.º 4
0
    def test_should_should_set_a_list_of_paths_on_multi_content_data_source(self):
        multi_content_data_source = IdRememberingMultiContentDataSourceStub('client')
        most_shared_fetcher = StubMostSharedFetcher()
        shared_count_interpolator = SharedCountInterpolator()

        data_source = MostSharedDataSource(n_items=23,
            multi_content_data_source=multi_content_data_source,
            most_shared_fetcher=most_shared_fetcher,
            shared_count_interpolator=shared_count_interpolator
        )
        expected_content_ids = ["/commentisfree/2013/apr/14/thatcher-ding-dong-bbc-charlie-brooker", "/music/2013/apr/14/justin-bieber-anne-frank-belieber"]
        data_source.fetch_data()
        self.assertListEqual(expected_content_ids,multi_content_data_source.content_ids)
    def test_should_return_interpolated_content(self):
        multi_content_data_source = IdRememberingMultiContentDataSourceStub(
            'client')
        most_shared_fetcher = StubMostSharedFetcher()
        shared_count_interpolator = SharedCountInterpolator()

        data_source = MostSharedDataSource(
            n_items=23,
            multi_content_data_source=multi_content_data_source,
            most_shared_fetcher=most_shared_fetcher,
            shared_count_interpolator=shared_count_interpolator)
        data = data_source.fetch_data()
        self.assertEquals(list('Interpolated content'), data)
    def test_should_fetch_each_piece_of_content_from_api(self):
        multi_content_data_source = IdRememberingMultiContentDataSourceStub(
            'client')
        most_shared_fetcher = StubMostSharedFetcher()
        shared_count_interpolator = SharedCountInterpolator()

        data_source = MostSharedDataSource(
            n_items=23,
            multi_content_data_source=multi_content_data_source,
            most_shared_fetcher=most_shared_fetcher,
            shared_count_interpolator=shared_count_interpolator)
        data_source.fetch_data()
        self.assertTrue(multi_content_data_source.fetch_all_was_called)
    def test_should_call_interpolator_with_shared_counts_and_content_list(
            self):
        multi_content_data_source = IdRememberingMultiContentDataSourceStub(
            'client')
        most_shared_fetcher = StubMostSharedFetcher()
        shared_count_interpolator = SharedCountInterpolator()

        data_source = MostSharedDataSource(
            n_items=23,
            multi_content_data_source=multi_content_data_source,
            most_shared_fetcher=most_shared_fetcher,
            shared_count_interpolator=shared_count_interpolator)
        data_source.fetch_data()
        self.assertEquals(api_data, shared_count_interpolator.content_list)
        self.assertEquals(comment_count_list,
                          shared_count_interpolator.comment_count_list)
    def test_should_should_set_a_list_of_paths_on_multi_content_data_source(
            self):
        multi_content_data_source = IdRememberingMultiContentDataSourceStub(
            'client')
        most_shared_fetcher = StubMostSharedFetcher()
        shared_count_interpolator = SharedCountInterpolator()

        data_source = MostSharedDataSource(
            n_items=23,
            multi_content_data_source=multi_content_data_source,
            most_shared_fetcher=most_shared_fetcher,
            shared_count_interpolator=shared_count_interpolator)
        expected_content_ids = [
            "/commentisfree/2013/apr/14/thatcher-ding-dong-bbc-charlie-brooker",
            "/music/2013/apr/14/justin-bieber-anne-frank-belieber"
        ]
        data_source.fetch_data()
        self.assertListEqual(expected_content_ids,
                             multi_content_data_source.content_ids)
Ejemplo n.º 9
0
class MostSharedUS(MostShared):

	data_sources = {
		'v1' :  {
			'most_shared': MostSharedDataSource(
				most_shared_fetcher=MostSharedFetcher(ophan_client, country='us'),
				multi_content_data_source=MultiContentDataSource(client=mr.client, name='most_shared'),
				shared_count_interpolator=MostSharedCountInterpolator()
			),
		},
	}
Ejemplo n.º 10
0
class MostShared(handlers.EmailTemplate):
	recognized_versions = ['v1']
	n_items = 6

	most_shared_fetcher = MostSharedFetcher(ophan_client)
	multi_content_data_source = MultiContentDataSource(client=mr.client, name='most_shared')
	shared_count_interpolator = MostSharedCountInterpolator()

	most_shared_data_source = MostSharedDataSource(
		most_shared_fetcher=most_shared_fetcher,
		multi_content_data_source=multi_content_data_source,
		shared_count_interpolator=shared_count_interpolator
	)

	data_sources = {}
	data_sources['v1'] = {
		'most_shared': most_shared_data_source
		}

	ad_tag = ''
	ad_config = {}

	priority_list = {'v1': [('most_shared', n_items)]}
	template_names = {'v1': 'most-shared'}
Ejemplo n.º 11
0
def most_shared(client, ophan_client, country):
	return MostSharedDataSource(
		most_shared_fetcher=MostSharedFetcher(ophan_client, country=country),
		multi_content_data_source=MultiContentDataSource(client=client, name='most_shared'),
		shared_count_interpolator=MostSharedCountInterpolator()
	)