Exemplo n.º 1
0
    def test_version_sidebar(self):
        request = RequestFactory()
        request.GET = {}
        request.APP = amo.FIREFOX

        request.get(reverse("search.search"))
        facets = {
            u"platforms": [{u"count": 58, u"term": 1}],
            u"appversions": [{u"count": 58, u"term": 5000000200100}],
            u"categories": [{u"count": 55, u"term": 1}],
            u"tags": [],
        }
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected

        versions = version_sidebar(request, {"appver": "5.0"}, facets)
        assert versions[1].selected

        # We're not storing the version in the session anymore: no memories.
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected

        # We read the appver from the cleaned form data.
        request.GET["appver"] = "123.4"
        # No form data, fallback to default (first entry).
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected
        # Form data has the proper version, use it.
        versions = version_sidebar(request, {"appver": "5.0"}, facets)
        assert versions[1].selected
        # Form data has the proper version, which is new: add it.
        versions = version_sidebar(request, {"appver": "123.4"}, facets)
        assert versions[1].selected
        eq_(len(versions), 3)
Exemplo n.º 2
0
    def test_version_sidebar(self):
        request = RequestFactory()
        request.GET = {}
        request.APP = amo.FIREFOX

        request.get(reverse('search.search'))
        facets = {
            u'platforms': [{u'count': 58, u'term': 1}],
            u'appversions': [{u'count': 58, u'term': 5000000200100}],
            u'categories': [{u'count': 55, u'term': 1}],
            u'tags': [],
        }
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected

        versions = version_sidebar(request, {'appver': '5.0'}, facets)
        assert versions[1].selected

        # We're not storing the version in the session anymore: no memories.
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected

        # We read the appver from the cleaned form data.
        request.GET['appver'] = '123.4'
        # No form data, fallback to default (first entry).
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected
        # Form data has the proper version, use it.
        versions = version_sidebar(request, {'appver': '5.0'}, facets)
        assert versions[1].selected
        # Form data has the proper version, which is new: add it.
        versions = version_sidebar(request, {'appver': '123.4'}, facets)
        assert versions[1].selected
        eq_(len(versions), 3)
Exemplo n.º 3
0
    def check_appver_filters(self, appver, expected):
        request = RequestFactory()
        request.APP = amo.FIREFOX

        facets = {
            u'platforms': [{
                u'count': 58,
                u'term': 1
            }],
            u'appversions': [{
                u'count': 58,
                u'term': 5000000200100
            }],
            u'categories': [{
                u'count': 55,
                u'term': 1
            }],
            u'tags': []
        }

        versions = version_sidebar(request, {'appver': floor_version(appver)},
                                   facets)

        all_ = versions.pop(0)
        eq_(all_.text, 'Any %s' % unicode(request.APP.pretty))
        eq_(all_.selected, not expected)

        return [v.__dict__ for v in versions]
Exemplo n.º 4
0
    def test_session_version_sidebar(self):
        request = RequestFactory()
        request.GET = {}
        request.session = {}
        request.APP = amo.FIREFOX

        request.get(reverse('search.search'))
        facets = {
            u'platforms': [{u'count': 58, u'term': 1}],
            u'appversions': [{u'count': 58, u'term': 5000000200100}],
            u'categories': [{u'count': 55, u'term': 1}],
            u'tags': [],
        }
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected

        versions = version_sidebar(request, {'appver': '5.0'}, facets)
        assert versions[1].selected

        versions = version_sidebar(request, {}, facets)
        assert versions[1].selected

        request.GET['appver'] = ''
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected
Exemplo n.º 5
0
    def check_appver_filters(self, appver, expected):
        request = RequestFactory()
        request.APP = amo.FIREFOX

        facets = {
            u'platforms': [{
                u'count': 58,
                u'term': 1
            }],
            u'appversions': [{
                u'count': 58,
                u'term': 5000000200100
            }],
            u'categories': [{
                u'count': 55,
                u'term': 1
            }],
            u'tags': []
        }

        versions = version_sidebar(request, {'appver': floor_version(appver)},
                                   facets)

        all_ = versions.pop(0)
        eq_(all_.text, 'Any %s' % unicode(request.APP.pretty))
        eq_(all_.selected, not expected)

        return [v.__dict__ for v in versions]
Exemplo n.º 6
0
    def test_session_version_sidebar(self):
        request = RequestFactory()
        request.GET = {}
        request.session = {}
        request.APP = amo.FIREFOX

        request.get(reverse('search.search'))
        facets = {
            u'platforms': [{
                u'count': 58,
                u'term': 1
            }],
            u'appversions': [{
                u'count': 58,
                u'term': 5000000200100
            }],
            u'categories': [{
                u'count': 55,
                u'term': 1
            }],
            u'tags': [],
        }
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected

        versions = version_sidebar(request, {'appver': '5.0'}, facets)
        assert versions[1].selected

        versions = version_sidebar(request, {}, facets)
        assert versions[1].selected

        request.GET['appver'] = ''
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected
Exemplo n.º 7
0
    def test_version_sidebar(self):
        request = RequestFactory()
        request.GET = {}
        request.APP = amo.FIREFOX

        request.get(reverse('search.search'))
        facets = {
            u'platforms': [{u'count': 58, u'term': 1}],
            u'appversions': [{u'count': 58, u'term': 5000000200100}],
            u'categories': [{u'count': 55, u'term': 1}],
            u'tags': [],
        }
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected

        versions = version_sidebar(request, {'appver': '5.0'}, facets)
        assert versions[1].selected

        # We're not storing the version in the session anymore: no memories.
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected

        # We read the appver from the cleaned form data.
        request.GET['appver'] = '123.4'
        # No form data, fallback to default (first entry).
        versions = version_sidebar(request, {}, facets)
        assert versions[0].selected
        # Form data has the proper version, use it.
        versions = version_sidebar(request, {'appver': '5.0'}, facets)
        assert versions[1].selected
        # Form data has the proper version, which is new: add it.
        versions = version_sidebar(request, {'appver': '123.4'}, facets)
        assert versions[1].selected
        eq_(len(versions), 3)
Exemplo n.º 8
0
 def process(self, authenticated, view=None, lang='en-US', app='firefox'):
     if not view:
         view = normal_view
     request = RequestFactory().get('/', HTTP_X_PJAX=True)
     request.user = Mock()
     request.APP = amo.APPS[app]
     request.LANG = lang
     request.user.is_authenticated.return_value = authenticated
     return LoginRequiredMiddleware().process_view(request, view, [], {})
Exemplo n.º 9
0
 def process(self, authenticated, view=None, lang='en-US', app='firefox'):
     if not view:
         view = normal_view
     request = RequestFactory().get('/', HTTP_X_PJAX=True)
     request.user = Mock()
     request.APP = amo.APPS[app]
     request.LANG = lang
     request.user.is_authenticated.return_value = authenticated
     return LoginRequiredMiddleware().process_view(request, view, [], {})
Exemplo n.º 10
0
def req_factory_factory(url, user=None, post=False, data=None):
    """Creates a request factory, logged in with the user."""
    req = RequestFactory()
    if post:
        req = req.post(url, data or {})
    else:
        req = req.get(url, data or {})
    if user:
        req.amo_user = RequestUser.objects.get(id=user.id)
        req.user = user.user
        req.groups = req.user.get_profile().groups.all()
    req.APP = None
    req.check_ownership = partial(check_ownership, req)
    return req
Exemplo n.º 11
0
def req_factory_factory(url, user=None, post=False, data=None):
    """Creates a request factory, logged in with the user."""
    req = RequestFactory()
    if post:
        req = req.post(url, data or {})
    else:
        req = req.get(url, data or {})
    if user:
        req.amo_user = RequestUser.objects.get(id=user.id)
        req.user = user.user
        req.groups = req.user.get_profile().groups.all()
    req.APP = None
    req.check_ownership = partial(check_ownership, req)
    return req
Exemplo n.º 12
0
    def check_appver_filters(self, appver, expected):
        request = RequestFactory()
        request.APP = amo.FIREFOX

        facets = {
            u"platforms": [{u"count": 58, u"term": 1}],
            u"appversions": [{u"count": 58, u"term": 5000000200100}],
            u"categories": [{u"count": 55, u"term": 1}],
            u"tags": [],
        }

        versions = version_sidebar(request, {"appver": floor_version(appver)}, facets)

        all_ = versions.pop(0)
        eq_(all_.text, "Any %s" % unicode(request.APP.pretty))
        eq_(all_.selected, not expected)

        return [v.__dict__ for v in versions]