Exemplo n.º 1
0
def index_webapps(ids, **kw):
    # DEPRECATED: call WebappIndexer.index_ids directly.
    homescreens = set(
        Webapp.tags.through.objects.filter(
            webapp_id__in=ids,
            tag__tag_text='homescreen').values_list('webapp_id', flat=True))
    webapps = set(ids) - homescreens
    if homescreens:
        HomescreenIndexer.index_ids(list(homescreens), no_delay=True)
    if webapps:
        WebappIndexer.index_ids(list(webapps), no_delay=True)
Exemplo n.º 2
0
def index_webapps(ids, **kw):
    # DEPRECATED: call WebappIndexer.index_ids directly.
    homescreens = set(
        Webapp.tags.through.objects.filter(
            webapp_id__in=ids,
            tag__tag_text='homescreen')
        .values_list('webapp_id', flat=True))
    webapps = set(ids) - homescreens
    if homescreens:
        HomescreenIndexer.index_ids(list(homescreens), no_delay=True)
    if webapps:
        WebappIndexer.index_ids(list(webapps), no_delay=True)
Exemplo n.º 3
0
 def make_homescreen(self):
     self.homescreen = app_factory(name=u'Elegant Waffle',
                                   description=u'homescreen runner',
                                   created=self.days_ago(5),
                                   manifest_url='http://h.testmanifest.com')
     Tag(tag_text='homescreen').save_tag(self.homescreen)
     self.homescreen.addondevicetype_set.create(
         device_type=mkt.DEVICE_GAIA.id)
     self.homescreen.update(categories=['health-fitness', 'productivity'])
     self.homescreen.update_version()
     HomescreenIndexer.index_ids([self.homescreen.pk], no_delay=True)
     self.refresh(('webapp', 'website', 'extension', 'homescreen'))
     return self.homescreen
Exemplo n.º 4
0
 def make_homescreen(self):
     self.homescreen = app_factory(name=u'Elegant Waffle',
                                   description=u'homescreen runner',
                                   created=self.days_ago(5),
                                   manifest_url='http://h.testmanifest.com')
     Tag(tag_text='homescreen').save_tag(self.homescreen)
     self.homescreen.addondevicetype_set.create(
         device_type=mkt.DEVICE_GAIA.id)
     self.homescreen.update(categories=['health-fitness', 'productivity'])
     self.homescreen.update_version()
     HomescreenIndexer.index_ids([self.homescreen.pk], no_delay=True)
     self.refresh(('webapp', 'website', 'extension', 'homescreen'))
     return self.homescreen
Exemplo n.º 5
0
    def tearDown(self):
        for o in Webapp.objects.all():
            o.delete()
        for o in Extension.objects.all():
            o.delete()
        super(TestMultiSearchView, self).tearDown()

        # Make sure to delete and unindex *all* things. Normally we wouldn't
        # care about stray deleted content staying in the index, but they can
        # have an impact on relevancy scoring so we need to make sure. This
        # needs to happen after super() has been called since it'll process the
        # indexing tasks that should happen post_request, and we need to wait
        # for ES to have done everything before continuing.
        Webapp.get_indexer().unindexer(_all=True)
        Extension.get_indexer().unindexer(_all=True)
        HomescreenIndexer.unindexer(_all=True)
        self.refresh(('webapp', 'extension', 'homescreen'))
Exemplo n.º 6
0
 def test_indexable(self):
     homescreen = app_factory(name=u'Elegant Waffle',
                              description=u'homescreen runner',
                              created=self.days_ago(5),
                              manifest_url='http://h.testmanifest.com')
     Tag(tag_text='homescreen').save_tag(homescreen)
     homescreen.save()
     q = HomescreenIndexer.get_indexable()
     eq_(list(q), [homescreen])
Exemplo n.º 7
0
 def test_indexable(self):
     homescreen = app_factory(name=u'Elegant Waffle',
                              description=u'homescreen runner',
                              created=self.days_ago(5),
                              manifest_url='http://h.testmanifest.com')
     Tag(tag_text='homescreen').save_tag(homescreen)
     homescreen.save()
     q = HomescreenIndexer.get_indexable()
     eq_(list(q), [homescreen])
Exemplo n.º 8
0
    def get_homescreen_queue(self):
        # Both unreviewed homescreens and published homescreens with new
        # unreviewed versions go in this queue.
        if self.use_es:
            must = [
                es_filter.Term(**{'latest_version.status':
                                  mkt.STATUS_PENDING}),
                es_filter.Term(is_escalated=False),
                es_filter.Term(is_disabled=False),
            ]
            return HomescreenIndexer.search().filter('bool', must=must)

        return (Version.objects.filter(
            files__status=mkt.STATUS_PENDING,
            addon__disabled_by_user=False,
            addon__tags__tag_text='homescreen')
            .exclude(addon__id__in=self.excluded_ids)
            .order_by('nomination', 'created')
            .select_related('addon', 'files').no_transforms())
Exemplo n.º 9
0
    def get_homescreen_queue(self):
        # Both unreviewed homescreens and published homescreens with new
        # unreviewed versions go in this queue.
        if self.use_es:
            must = [
                es_filter.Term(**{'latest_version.status':
                                  mkt.STATUS_PENDING}),
                es_filter.Term(is_escalated=False),
                es_filter.Term(is_disabled=False),
            ]
            return HomescreenIndexer.search().filter('bool', must=must)

        return (Version.objects.filter(
            files__status=mkt.STATUS_PENDING,
            addon__disabled_by_user=False,
            addon__tags__tag_text='homescreen')
            .exclude(addon__id__in=self.excluded_ids)
            .order_by('nomination', 'created')
            .select_related('addon', 'files').no_transforms())
Exemplo n.º 10
0
 def test_index(self):
     with self.settings(ES_INDEXES={'homescreen': 'homescreens'}):
         eq_(HomescreenIndexer.get_index(), 'homescreens')
Exemplo n.º 11
0
 def test_mapping(self):
     mapping = HomescreenIndexer.get_mapping()
     eq_(mapping.keys(), ['homescreen'])
Exemplo n.º 12
0
 def test_model(self):
     eq_(HomescreenIndexer.get_model(), Webapp)
Exemplo n.º 13
0
 def test_index(self):
     with self.settings(ES_INDEXES={'homescreen': 'homescreens'}):
         eq_(HomescreenIndexer.get_index(), 'homescreens')
Exemplo n.º 14
0
 def test_mapping_type_name(self):
     eq_(HomescreenIndexer.get_mapping_type_name(), 'homescreen')
Exemplo n.º 15
0
 def test_mapping(self):
     mapping = HomescreenIndexer.get_mapping()
     eq_(mapping.keys(), ['homescreen'])
Exemplo n.º 16
0
 def test_mapping_type_name(self):
     eq_(HomescreenIndexer.get_mapping_type_name(), 'homescreen')
Exemplo n.º 17
0
def unindex_webapps(ids, **kw):
    # DEPRECATED: call WebappIndexer.unindexer directly.
    HomescreenIndexer.unindexer(ids)
    WebappIndexer.unindexer(ids)
Exemplo n.º 18
0
def unindex_webapps(ids, **kw):
    # DEPRECATED: call WebappIndexer.unindexer directly.
    HomescreenIndexer.unindexer(ids)
    WebappIndexer.unindexer(ids)
Exemplo n.º 19
0
 def test_model(self):
     eq_(HomescreenIndexer.get_model(), Webapp)