Beispiel #1
0
    def test_not_equal_on_not_equal_unique_identifier(self):
        """
        Test that the inequality operator returns True when comparing two
        ObtainLease response payloads with different unique identifiers.
        """
        a = payloads.ObtainLeaseResponsePayload(unique_identifier='a')
        b = payloads.ObtainLeaseResponsePayload(unique_identifier='b')

        self.assertTrue(a != b)
        self.assertTrue(b != a)
Beispiel #2
0
    def test_not_equal_on_not_equal_last_change_time(self):
        """
        Test that the inequality operator returns True when comparing two
        ObtainLease response payloads with different last change time.
        """
        a = payloads.ObtainLeaseResponsePayload(lease_time=0)
        b = payloads.ObtainLeaseResponsePayload(lease_time=1511882848)

        self.assertTrue(a != b)
        self.assertTrue(b != a)
Beispiel #3
0
    def test_equal_on_not_equal_last_change_date(self):
        """
        Test that the equality operator returns False when comparing two
        ObtainLease response payloads with different last change dates.
        """
        a = payloads.ObtainLeaseResponsePayload(last_change_date=0)
        b = payloads.ObtainLeaseResponsePayload(last_change_date=1511882848)

        self.assertFalse(a == b)
        self.assertFalse(b == a)
Beispiel #4
0
    def test_not_equal_on_type_mismatch(self):
        """
        Test that the inequality operator returns True when comparing two
        ObtainLease response payloads with different types.
        """
        a = payloads.ObtainLeaseResponsePayload()
        b = 'invalid'

        self.assertTrue(a != b)
        self.assertTrue(b != a)
Beispiel #5
0
    def test_init(self):
        """
        Test that an ObtainLease response payload can be constructed with no
        arguments.
        """
        payload = payloads.ObtainLeaseResponsePayload()

        self.assertEqual(None, payload.unique_identifier)
        self.assertEqual(None, payload.lease_time)
        self.assertEqual(None, payload.last_change_date)
Beispiel #6
0
    def test_write_empty(self):
        """
        Test that an empty ObtainLease response payload can be written to a
        data stream.
        """
        payload = payloads.ObtainLeaseResponsePayload()
        stream = utils.BytearrayStream()
        payload.write(stream)

        self.assertEqual(len(self.empty_encoding), len(stream))
        self.assertEqual(str(self.empty_encoding), str(stream))
Beispiel #7
0
    def test_write_partial(self):
        """
        Test that a partial ObtainLease response payload can be written to a
        data stream.
        """
        payload = payloads.ObtainLeaseResponsePayload(
            unique_identifier='f4152f17-9312-431a-b3fb-4fe86a86a7a1')
        stream = utils.BytearrayStream()
        payload.write(stream)

        self.assertEqual(len(self.partial_encoding), len(stream))
        self.assertEqual(str(self.partial_encoding), str(stream))
Beispiel #8
0
    def test_not_equal_on_equal(self):
        """
        Test that the inequality operator returns False when comparing two
        ObtainLease response payloads with the same data.
        """
        a = payloads.ObtainLeaseResponsePayload()
        b = payloads.ObtainLeaseResponsePayload()

        self.assertFalse(a != b)
        self.assertFalse(b != a)

        a = payloads.ObtainLeaseResponsePayload(
            unique_identifier='49a1ca88-6bea-4fb2-b450-7e58802c3038',
            lease_time=1511882848,
            last_change_date=0)
        b = payloads.ObtainLeaseResponsePayload(
            unique_identifier='49a1ca88-6bea-4fb2-b450-7e58802c3038',
            lease_time=1511882848,
            last_change_date=0)

        self.assertFalse(a != b)
        self.assertFalse(b != a)
Beispiel #9
0
    def test_invalid_lease_time(self):
        """
        Test that a TypeError is raised when an invalid value is used to set
        the lease time of an ObtainLease response payload.
        """
        kwargs = {'lease_time': 'invalid'}
        self.assertRaisesRegex(TypeError, "Lease time must be an integer.",
                               payloads.ObtainLeaseResponsePayload, **kwargs)

        payload = payloads.ObtainLeaseResponsePayload()
        args = (payload, 'lease_time', 'invalid')
        self.assertRaisesRegex(TypeError, "Lease time must be an integer.",
                               setattr, *args)
Beispiel #10
0
    def test_write(self):
        """
        Test that an ObtainLease response payload can be written to a data
        stream.
        """
        payload = payloads.ObtainLeaseResponsePayload(
            unique_identifier='f4152f17-9312-431a-b3fb-4fe86a86a7a1',
            lease_time=0,
            last_change_date=1335514468)
        stream = utils.BytearrayStream()
        payload.write(stream)

        self.assertEqual(len(self.full_encoding), len(stream))
        self.assertEqual(str(self.full_encoding), str(stream))
Beispiel #11
0
    def test_init_with_args(self):
        """
        Test that an ObtainLease response payload can be constructed with valid
        values.
        """
        payload = payloads.ObtainLeaseResponsePayload(
            unique_identifier='00000000-1111-2222-3333-444444444444',
            lease_time=1000000000,
            last_change_date=1512400153)

        self.assertEqual('00000000-1111-2222-3333-444444444444',
                         payload.unique_identifier)
        self.assertEqual(1000000000, payload.lease_time)
        self.assertEqual(1512400153, payload.last_change_date)
Beispiel #12
0
    def test_invalid_unique_identifier(self):
        """
        Test that a TypeError is raised when an invalid value is used to set
        the unique identifier of an ObtainLease response payload.
        """
        kwargs = {'unique_identifier': 0}
        self.assertRaisesRegex(TypeError,
                               "Unique identifier must be a string.",
                               payloads.ObtainLeaseResponsePayload, **kwargs)

        payload = payloads.ObtainLeaseResponsePayload()
        args = (payload, 'unique_identifier', 0)
        self.assertRaisesRegex(TypeError,
                               "Unique identifier must be a string.", setattr,
                               *args)
Beispiel #13
0
    def test_repr(self):
        """
        Test that repr can be applied to an ObtainLease response payload.
        """
        payload = payloads.ObtainLeaseResponsePayload(
            unique_identifier='49a1ca88-6bea-4fb2-b450-7e58802c3038',
            lease_time=1511882898,
            last_change_date=1512410153)
        expected = (
            "ObtainLeaseResponsePayload("
            "unique_identifier='49a1ca88-6bea-4fb2-b450-7e58802c3038', "
            "lease_time=1511882898, "
            "last_change_date=1512410153)")
        observed = repr(payload)

        self.assertEqual(expected, observed)
Beispiel #14
0
    def test_read_empty(self):
        """
        Test that an ObtainLease response payload can be read from an empty
        data stream.
        """
        payload = payloads.ObtainLeaseResponsePayload()

        self.assertEqual(None, payload.unique_identifier)
        self.assertEqual(None, payload.lease_time)
        self.assertEqual(None, payload.last_change_date)

        payload.read(self.empty_encoding)

        self.assertEqual(None, payload.unique_identifier)
        self.assertEqual(None, payload.lease_time)
        self.assertEqual(None, payload.last_change_date)
Beispiel #15
0
    def test_str(self):
        """
        Test that str can be applied to an ObtainLease response payload.
        """
        payload = payloads.ObtainLeaseResponsePayload(
            unique_identifier='49a1ca88-6bea-4fb2-b450-7e58802c3038',
            lease_time=1511882898,
            last_change_date=1512410153)

        expected = str({
            'unique_identifier': '49a1ca88-6bea-4fb2-b450-7e58802c3038',
            'lease_time': 1511882898,
            'last_change_date': 1512410153
        })
        observed = str(payload)

        self.assertEqual(expected, observed)
Beispiel #16
0
    def test_read_partial(self):
        """
        Test that an ObtainLease response payload can be read from a partial
        data stream.
        """
        payload = payloads.ObtainLeaseResponsePayload()

        self.assertEqual(None, payload.unique_identifier)
        self.assertEqual(None, payload.lease_time)
        self.assertEqual(None, payload.last_change_date)

        payload.read(self.partial_encoding)

        self.assertEqual('f4152f17-9312-431a-b3fb-4fe86a86a7a1',
                         payload.unique_identifier)
        self.assertEqual(None, payload.lease_time)
        self.assertEqual(None, payload.last_change_date)