示例#1
0
    def test_xml(self):
        now = datetime.utcnow()
        domain = "test"
        now_plus_30 = now + timedelta(days=30)
        now_minus_30 = now - timedelta(days=30)
        record = new_key_record(None, None, now=now)
        xml = get_mobile_auth_payload([record], domain, now=now)
        check_xml_line_by_line(
            self,
            xml,
            """
            <OpenRosaResponse xmlns="http://openrosa.org/http/response">
                <message nature="submit_success">Here are your keys!</message>
                <auth_keys domain="{domain}" issued="{now}">
                    <key_record valid="{now}" expires="{now_plus_30}">
                        <uuid>{record.uuid}</uuid>
                        <key type="{record.type}">{record.key}</key>
                    </key_record>
                </auth_keys>
            </OpenRosaResponse>
        """.format(
                now=json_format_datetime(now),
                now_plus_30=json_format_datetime(now_plus_30),
                record=record,
                domain=domain,
            ),
        )

        record = new_key_record(None, None, now=now, valid=now_minus_30)
        xml = get_mobile_auth_payload([record], domain, now=now)
        check_xml_line_by_line(
            self,
            xml,
            """
            <OpenRosaResponse xmlns="http://openrosa.org/http/response">
                <message nature="submit_success">Here are your keys!</message>
                <auth_keys domain="{domain}" issued="{now}">
                    <key_record valid="{now_minus_30}" expires="{now_plus_30}">
                        <uuid>{record.uuid}</uuid>
                        <key type="{record.type}">{record.key}</key>
                    </key_record>
                </auth_keys>
            </OpenRosaResponse>
        """.format(
                now=json_format_datetime(now),
                now_plus_30=json_format_datetime(now_plus_30),
                now_minus_30=json_format_datetime(now_minus_30),
                record=record,
                domain=domain,
            ),
        )
示例#2
0
    def test_xml(self):
        now = datetime.utcnow()
        domain = 'test'
        now_plus_30 = now + timedelta(days=30)
        now_minus_30 = now - timedelta(days=30)
        record = new_key_record(None, None, now=now)
        xml = get_mobile_auth_payload([record], domain, now=now)
        check_xml_line_by_line(
            self, xml, """
            <OpenRosaResponse xmlns="http://openrosa.org/http/response">
                <message nature="submit_success">Here are your keys!</message>
                <auth_keys domain="{domain}" issued="{now}">
                    <key_record valid="{now}" expires="{now_plus_30}">
                        <uuid>{record.uuid}</uuid>
                        <key type="{record.type}">{record.key}</key>
                    </key_record>
                </auth_keys>
            </OpenRosaResponse>
        """.format(
                now=self.format_datetime_no_usec(now),
                now_plus_30=self.format_datetime_no_usec(now_plus_30),
                record=record,
                domain=domain,
            ))

        record = new_key_record(None, None, now=now, valid=now_minus_30)
        xml = get_mobile_auth_payload([record], domain, now=now)
        check_xml_line_by_line(
            self, xml, """
            <OpenRosaResponse xmlns="http://openrosa.org/http/response">
                <message nature="submit_success">Here are your keys!</message>
                <auth_keys domain="{domain}" issued="{now}">
                    <key_record valid="{now_minus_30}" expires="{now_plus_30}">
                        <uuid>{record.uuid}</uuid>
                        <key type="{record.type}">{record.key}</key>
                    </key_record>
                </auth_keys>
            </OpenRosaResponse>
        """.format(
                now=self.format_datetime_no_usec(now),
                now_plus_30=self.format_datetime_no_usec(now_plus_30),
                now_minus_30=self.format_datetime_no_usec(now_minus_30),
                record=record,
                domain=domain,
            ))
示例#3
0
    def test_mobile_auth(self):
        for domain_name in [self.domain.name, self.domain2.name]:
            record = new_key_record(domain=domain_name, user_id='123')
            record.save()

        self.domain.delete()

        self._assert_mobile_auth_counts(self.domain.name, 0)
        self._assert_mobile_auth_counts(self.domain2.name, 1)
示例#4
0
 def get_or_create_current_record(self):
     key_record = self.key_for_time(self.now)
     if not key_record:
         key_record = new_key_record(
             domain=self.domain,
             user_id=self.user_id,
             now=self.now,
             valid=self.now - datetime.timedelta(days=30),
         )
         key_record.save()
     elif key_record.expires <= self.now:
         bump_expiry(key_record, now=self.now)
         key_record.save()
     return key_record
示例#5
0
 def get_or_create_current_record(self):
     key_record = self.key_for_time(self.now)
     if not key_record:
         key_record = new_key_record(
             domain=self.domain,
             user_id=self.user_id,
             now=self.now,
             valid=self.now - datetime.timedelta(days=30),
         )
         key_record.save()
     elif key_record.expires <= self.now:
         bump_expiry(key_record, now=self.now)
         key_record.save()
     return key_record
示例#6
0
 def get_or_create_current_record(self):
     key_record = self.key_for_time(self.now)
     if not key_record:
         key_record = new_key_record(self.domain, self.user_id, self.now)
         key_record.save()
     return key_record