コード例 #1
0
    def test_parse_tiles_actions(self):
        oimp = {u'tiles': [{}, {u'id': 518}, {u'id': 519}, {u'id': 594}, {u'id': 520}, {u'id': 521}, {u'id': 522},
                               {u'id': 523}, {u'id': 524}, {u'id': 525}, {u'id': 526}, {}, {}],
                u'locale': u'pt-BR', u'ip': u'124.179.24.69', u'timestamp': 1420648352586, u'date': u'2015-01-07',
                u'ua': u'Mozilla/5.0 (Windows NT 6.1; rv:34.0) Gecko/20100101 Firefox/34.0', u'view': 3}

        actions = ['click', 'pin', 'block', 'sponsored', 'sponsored_link']
        verifies = ['clicks', 'pinned', 'blocked', 'sponsored', 'sponsored_link']
        for action, verify in zip(actions, verifies):
            imp = oimp.copy()
            imp[action] = 2
            total_tiles = 0
            action_tiles = 0
            for tile in parse_tiles(imp, None):
                total_tiles += 1
                action_tiles += tile.get(verify, 0)
            self.assertEqual(total_tiles, 1)
            self.assertEqual(action_tiles, 1)
コード例 #2
0
 def test_parse_tiles_newtabs(self):
     imps = [
         {u'tiles': [{}, {u'id': 518}, {u'id': 519}, {u'id': 594}, {u'id': 520}, {u'id': 521}, {u'id': 522},
                         {u'id': 523}, {u'id': 524}, {u'id': 525}, {u'id': 526}, {}, {}],
          u'locale': u'pt-BR', u'ip': u'124.179.24.69', u'timestamp': 1420648352586, u'date': u'2015-01-07',
          u'ua': u'Mozilla/5.0 (Windows NT 6.1; rv:34.0) Gecko/20100101 Firefox/34.0', u'view': 5},
         {u'tiles': [{}], u'locale': u'ru', u'ip': u'170.79.137.117', u'timestamp': 1420648352583,
          u'date': u'2015-01-07', u'ua': u'Mozilla/5.0 (Windows NT 6.1; rv:34.0) Gecko/20100101 Firefox/34.0',
          u'block': 0},
         {u'tiles': [{}, {u'id': 518}, {u'id': 519}, {u'id': 594}, {u'id': 520}, {u'id': 521}, {u'id': 522},
                         {u'id': 523}, {u'id': 524}, {u'id': 525}, {u'id': 526}, {}, {}],
          u'locale': u'pt-BR', u'ip': u'124.179.24.69', u'timestamp': 1420648352586, u'date': u'2015-01-07',
          u'ua': u'Mozilla/5.0 (Windows NT 6.1; rv:34.0) Gecko/20100101 Firefox/34.0', u'view': 5}
     ]
     newtabs = [1, 0, 1]
     for imp, newtab in zip(imps, newtabs):
         count_newtabs = 0
         for tile in parse_tiles(imp, None):
             count_newtabs += tile.get('newtabs', 0)
         self.assertEqual(count_newtabs, newtab)
コード例 #3
0
    def test_parse_tiles_urls(self):
        imps = [
            {u'tiles': [{}, {u'id': 518}, {u'id': 519}, {u'id': 594}, {u'id': 520}, {u'id': 521}, {u'id': 522},
                            {u'id': 523}, {u'id': 524}, {u'id': 525}, {u'id': 526}, {}, {}],
             u'locale': u'pt-BR', u'ip': u'124.179.24.69', u'timestamp': 1420648352586, u'date': u'2015-01-07',
             u'ua': u'Mozilla/5.0 (Windows NT 6.1; rv:34.0) Gecko/20100101 Firefox/34.0', u'view': 5},
            {u'tiles': [{u'url': u'www.google.com.pk', u'score': 2}, {u'url': u'www.zalmos.com', u'score': 1},
                        {u'url': u''}, {u'url': u'en.wikipedia.org'}, {u'url': u'friv.com', u'id': 123}, {u'url': u''},
                        {u'url': u'apps.facebook.com'}, {u'url': u''}, {u'url': u'www.systemrequirementslab.com'},
                        {u'url': u'sufijhelumi.wordpress.com'}, {u'url': u'www.vidtomp3.com'}, {u'url': u''},
                        {u'url': u''}, {u'url': u'tune.pk'}], u'locale': u'en-US', u'ip': u'39.32.221.176',
             u'timestamp': 1420648371342, u'date': u'2015-01-07',
             u'ua': u'Mozilla/5.0 (Windows NT 5.1; rv:35.0) Gecko/20100101 Firefox/35.0', u'click': 4},
            {u'tiles': [{u'url': u'www.google.com.pk', u'score': 2}, {u'url': u'www.zalmos.com', u'score': 1},
                        {u'url': u''}, {u'url': u'en.wikipedia.org'}, {u'url': u'friv.com', u'id': 123}, {u'url': u''},
                        {u'url': u'apps.facebook.com'}, {u'url': u''}, {u'url': u'www.systemrequirementslab.com'},
                        {u'url': u'sufijhelumi.wordpress.com'}, {u'url': u'www.vidtomp3.com'}, {u'url': u''},
                        {u'url': u''}, {u'url': u'tune.pk'}], u'locale': u'en-US', u'ip': u'39.32.221.176',
             u'timestamp': 1420648371342, u'date': u'2015-01-07',
             u'ua': u'Mozilla/5.0 (Windows NT 5.1; rv:35.0) Gecko/20100101 Firefox/35.0', u'view': 4},
            {u'tiles': [{u'url': u''}, {u'url': u'scholar.google.es'}, {u'url': u'nlm.nih.gov'}, {u'id': 498},
                        {u'id': 499}, {u'id': 500}, {u'id': 501}, {u'id': 502}, {u'id': 503}, {u'id': 504},
                        {u'id': 505}, {u'id': 506}, {u'id': 507}, {u'url': u'nlm.nih.gov'},
                        {u'url': u'aviarioexposito.es.tl'}], u'locale': u'en-US', u'ip': u'169.158.176.146',
             u'timestamp': 1420648372134, u'date': u'2015-01-07',
             u'ua': u'Mozilla/5.0 (Windows NT 6.1; rv:34.0) Gecko/20100101 Firefox/34.0', u'view': 7}

        ]
        total_imps = [0, 0, 9, 4]
        total_clicks = [0, 1, 0, 0]
        for imp, total_imp, total_click in zip(imps, total_imps, total_clicks):
            imp_count = 0
            click_count = 0
            for tile in parse_tiles(imp, None):
                if tile.get('url') is not None:
                    imp_count += tile['impressions']
                    click_count += tile['clicks']

            self.assertEqual(total_imp, imp_count)
            self.assertEqual(total_imp, imp_count)
コード例 #4
0
    def test_parse_tiles_impression(self):
        imps = [
            {u'tiles': [{}, {u'id': 518}, {u'id': 519}, {u'id': 594}, {u'id': 520}, {u'id': 521}, {u'id': 522},
                            {u'id': 523}, {u'id': 524}, {u'id': 525}, {u'id': 526}, {}, {}],
             u'locale': u'pt-BR', u'ip': u'124.179.24.69', u'timestamp': 1420648352586, u'date': u'2015-01-07',
             u'ua': u'Mozilla/5.0 (Windows NT 6.1; rv:34.0) Gecko/20100101 Firefox/34.0', u'view': 5},
            {u'tiles': [{}], u'locale': u'ru', u'ip': u'170.79.137.117', u'timestamp': 1420648352583,
             u'date': u'2015-01-07', u'ua': u'Mozilla/5.0 (Windows NT 6.1; rv:34.0) Gecko/20100101 Firefox/34.0',
             u'view': 1},
            {u'tiles': [{}, {u'id': 518}, {u'id': 519}, {u'id': 594}, {u'id': 520}, {u'id': 521}, {u'id': 522},
                            {u'id': 523}, {u'id': 524}, {u'id': 525}, {u'id': 526}, {}, {}],
             u'locale': u'pt-BR', u'ip': u'124.179.24.69', u'timestamp': 1420648352586, u'date': u'2015-01-07',
             u'ua': u'Mozilla/5.0 (Windows NT 6.1; rv:34.0) Gecko/20100101 Firefox/34.0', u'view': 5, u'click': 1}
        ]
        total_imps = [5, 0, 0]
        for imp, total_imp in zip(imps, total_imps):
            imp_count = 0
            for tile in parse_tiles(imp, None):
                if tile.get('tile_id') is not None:
                    imp_count += tile['impressions']

            self.assertEqual(total_imp, imp_count)