Ejemplo n.º 1
0
 def test_only_code(self):
     """GeoIP code is included when the country name is missing."""
     req = RequestFactory()
     req.COOKIES = {
         'geoip_country_code': 'US',
     }
     val = geoip_cache_detector(req)
     eq_(val['include_geoip'], True)
Ejemplo n.º 2
0
def create_mock_request():
    """
    Creates and returns a mock request object for testing.
    """
    request = RequestFactory()
    request.COOKIES = {}
    request.META = {}
    request.path = '/'
    return request
Ejemplo n.º 3
0
def create_mock_request():
    """
    Creates and returns a mock request object for testing.
    """
    request = RequestFactory()
    request.COOKIES = {}
    request.META = {}
    request.path = '/'
    return request
Ejemplo n.º 4
0
 def test_when_both(self):
     """GeoIP code is not included when both name and code already exist."""
     req = RequestFactory()
     req.COOKIES = {
         'geoip_country_name': 'United States',
         'geoip_country_code': 'US',
     }
     val = geoip_cache_detector(req)
     eq_(val['include_geoip'], False)
Ejemplo n.º 5
0
def get_request_for_user(user):
    """Create a request object for user."""
    request = RequestFactory()
    request.user = user
    request.COOKIES = {}
    request.META = {}
    request.is_secure = lambda: True
    request.get_host = lambda: "edx.org"
    request.method = 'GET'
    return request
Ejemplo n.º 6
0
def get_request_for_user(user):
    """Create a request object for user."""
    request = RequestFactory()
    request.user = user
    request.COOKIES = {}
    request.META = {}
    request.is_secure = lambda: True
    request.get_host = lambda: "edx.org"
    request.method = 'GET'
    return request
Ejemplo n.º 7
0
 def generate_request(self):
     """
     Create http request
     """
     request = RequestFactory()
     request.COOKIES = {}
     request.META = {}
     request.user = AnonymousUser()
     SessionMiddleware().process_request(request)
     return request
Ejemplo n.º 8
0
    def test_get_kissmetrics_instance(self):
        request = RequestFactory()
        request.COOKIES = {}
        km_ai = '1234'
        km_ni = 'asdf'

        # invalid object
        self.assertRaises(ValueError, base.get_kissmetrics_instance, {})

        # no identity error
        self.assertRaises(ValueError, base.get_kissmetrics_instance, request)

        # fetch identity from the cookies
        request.COOKIES = {'km_ai': km_ai, 'km_ni': km_ni}
        km = base.get_kissmetrics_instance(request)
        self.assertEquals(km_ni, km._id)

        # fetch the identity from the user
        request.user = self.user
        km = base.get_kissmetrics_instance(request)
        self.assertEquals(self.user.id, km._id)
Ejemplo n.º 9
0
    def test_get_kissmetrics_instance(self):
        request = RequestFactory()
        request.COOKIES = {}
        km_ai = '1234'
        km_ni = 'asdf'

        # invalid object
        self.assertRaises(ValueError, base.get_kissmetrics_instance, {})

        # no identity error
        self.assertRaises(ValueError, base.get_kissmetrics_instance, request)

        # fetch identity from the cookies
        request.COOKIES = {'km_ai': km_ai, 'km_ni': km_ni}
        km = base.get_kissmetrics_instance(request)
        self.assertEquals(km_ni, km._id)

        # fetch the identity from the user
        request.user = self.user
        km = base.get_kissmetrics_instance(request)
        self.assertEquals(self.user.id, km._id)
Ejemplo n.º 10
0
    def test_echo_view_no_saml_session(self):
        settings.SAML_CONFIG = conf.create_conf(
            sp_host='sp.example.com',
            idp_hosts=['idp.example.com'],
            metadata_file='remote_metadata_one_idp.xml',
        )
        self.do_login()

        request = RequestFactory().get('/bar/foo')
        request.COOKIES = self.client.cookies
        request.user = User.objects.last()

        middleware = SamlSessionMiddleware()
        middleware.process_request(request)

        response = EchoAttributesView.as_view()(request)
        self.assertEqual(response.status_code, 200)
        self.assertEqual(response.content.decode(
        ), 'No active SAML identity found. Are you sure you have logged in via SAML?')
Ejemplo n.º 11
0
    def create_coupon(
            self,
            title='Test coupon',
            price=100,
            client=None,
            partner=None,
            catalog=None,
            code='',
            benefit_value=100,
            note=None,
            max_uses=None,
            quantity=5
    ):
        """Helper method for creating a coupon.

        Arguments:
            title(str): Title of the coupon
            price(int): Price of the coupon
            partner(Partner): Partner used for creating a catalog
            catalog(Catalog): Catalog of courses for which the coupon applies
            code(str): Custom coupon code
            benefit_value(int): The voucher benefit value

        Returns:
            coupon (Coupon)

        """
        if partner is None:
            partner = PartnerFactory(name='Tester')
        if client is None:
            client, __ = BusinessClient.objects.get_or_create(name='Test Client')
        if catalog is None:
            catalog = Catalog.objects.create(partner=partner)
        if code is not '':
            quantity = 1
        data = {
            'partner': partner,
            'benefit_type': Benefit.PERCENTAGE,
            'benefit_value': benefit_value,
            'catalog': catalog,
            'end_date': datetime.date(2020, 1, 1),
            'code': code,
            'quantity': quantity,
            'start_date': datetime.date(2015, 1, 1),
            'voucher_type': Voucher.SINGLE_USE,
            'categories': [self.category],
            'note': note,
            'max_uses': max_uses,
        }

        coupon = CouponViewSet().create_coupon_product(
            title=title,
            price=price,
            data=data
        )

        request = RequestFactory()
        request.site = self.site
        request.user = factories.UserFactory()
        request.COOKIES = {}

        self.basket = prepare_basket(request, coupon)

        self.response_data = CouponViewSet().create_order_for_invoice(self.basket, coupon_id=coupon.id, client=client)
        coupon.client = client

        return coupon
Ejemplo n.º 12
0
 def test_only_code(self):
     """GeoIP code is included when the country name is missing."""
     req = RequestFactory()
     req.COOKIES = {"geoip_country_code": "US"}
     val = geoip_cache_detector(req)
     eq_(val["include_geoip"], True)
Ejemplo n.º 13
0
 def test_when_both(self):
     """GeoIP code is not included when both name and code already exist."""
     req = RequestFactory()
     req.COOKIES = {"geoip_country_name": "United States", "geoip_country_code": "US"}
     val = geoip_cache_detector(req)
     eq_(val["include_geoip"], False)
Ejemplo n.º 14
0
    def create_coupon(self,
                      title='Test coupon',
                      price=100,
                      client=None,
                      partner=None,
                      catalog=None,
                      code='',
                      benefit_value=100,
                      note=None,
                      max_uses=None,
                      quantity=5):
        """Helper method for creating a coupon.

        Arguments:
            title(str): Title of the coupon
            price(int): Price of the coupon
            partner(Partner): Partner used for creating a catalog
            catalog(Catalog): Catalog of courses for which the coupon applies
            code(str): Custom coupon code
            benefit_value(int): The voucher benefit value

        Returns:
            coupon (Coupon)

        """
        if partner is None:
            partner = PartnerFactory(name='Tester')
        if client is None:
            client, __ = BusinessClient.objects.get_or_create(
                name='Test Client')
        if catalog is None:
            catalog = Catalog.objects.create(partner=partner)
        if code is not '':
            quantity = 1
        data = {
            'partner': partner,
            'benefit_type': Benefit.PERCENTAGE,
            'benefit_value': benefit_value,
            'catalog': catalog,
            'end_date': datetime.date(2020, 1, 1),
            'code': code,
            'quantity': quantity,
            'start_date': datetime.date(2015, 1, 1),
            'voucher_type': Voucher.SINGLE_USE,
            'categories': [self.category],
            'note': note,
            'max_uses': max_uses,
        }

        coupon = CouponViewSet().create_coupon_product(title=title,
                                                       price=price,
                                                       data=data)

        request = RequestFactory()
        request.site = self.site
        request.user = factories.UserFactory()
        request.COOKIES = {}

        self.basket = prepare_basket(request, coupon)

        self.response_data = CouponViewSet().create_order_for_invoice(
            self.basket, coupon_id=coupon.id, client=client)
        coupon.client = client

        return coupon