mirror of
https://github.com/OpenKMIP/PyKMIP.git
synced 2025-07-20 12:34:22 +02:00
Merge pull request #213 from OpenKMIP/feat/update-attribute
Adding string utilites to the Attribute object
This commit is contained in:
commit
ccf5c41e79
@ -129,6 +129,27 @@ class Attribute(Struct):
|
|||||||
super(Attribute, self).write(ostream)
|
super(Attribute, self).write(ostream)
|
||||||
ostream.write(tstream.buffer)
|
ostream.write(tstream.buffer)
|
||||||
|
|
||||||
|
def __repr__(self):
|
||||||
|
attribute_name = "attribute_name={0}".format(repr(self.attribute_name))
|
||||||
|
attribute_index = "attribute_index={0}".format(
|
||||||
|
repr(self.attribute_index)
|
||||||
|
)
|
||||||
|
attribute_value = "attribute_value={0}".format(
|
||||||
|
repr(self.attribute_value)
|
||||||
|
)
|
||||||
|
return "Attribute({0}, {1}, {2})".format(
|
||||||
|
attribute_name,
|
||||||
|
attribute_index,
|
||||||
|
attribute_value
|
||||||
|
)
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return str({
|
||||||
|
'attribute_name': str(self.attribute_name),
|
||||||
|
'attribute_index': str(self.attribute_index),
|
||||||
|
'attribute_value': str(self.attribute_value)
|
||||||
|
})
|
||||||
|
|
||||||
def __eq__(self, other):
|
def __eq__(self, other):
|
||||||
if isinstance(other, Attribute):
|
if isinstance(other, Attribute):
|
||||||
if self.attribute_name != other.attribute_name:
|
if self.attribute_name != other.attribute_name:
|
||||||
@ -143,7 +164,10 @@ class Attribute(Struct):
|
|||||||
return NotImplemented
|
return NotImplemented
|
||||||
|
|
||||||
def __ne__(self, other):
|
def __ne__(self, other):
|
||||||
return not self.__eq__(other)
|
if isinstance(other, Attribute):
|
||||||
|
return not self.__eq__(other)
|
||||||
|
else:
|
||||||
|
return NotImplemented
|
||||||
|
|
||||||
|
|
||||||
# 2.1.2
|
# 2.1.2
|
||||||
|
110
kmip/tests/unit/core/objects/test_attribute.py
Normal file
110
kmip/tests/unit/core/objects/test_attribute.py
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||||
|
# not use this file except in compliance with the License. You may obtain
|
||||||
|
# a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||||
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||||
|
# License for the specific language governing permissions and limitations
|
||||||
|
# under the License.
|
||||||
|
|
||||||
|
import testtools
|
||||||
|
|
||||||
|
from kmip.core import attributes
|
||||||
|
from kmip.core import objects
|
||||||
|
|
||||||
|
|
||||||
|
class TestAttribute(testtools.TestCase):
|
||||||
|
"""
|
||||||
|
Test suite for the Attribute object.
|
||||||
|
"""
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
super(TestAttribute, self).setUp()
|
||||||
|
|
||||||
|
def tearDown(self):
|
||||||
|
super(TestAttribute, self).tearDown()
|
||||||
|
|
||||||
|
def test_init(self):
|
||||||
|
"""
|
||||||
|
Test that an Attribute object can be created.
|
||||||
|
"""
|
||||||
|
objects.Attribute()
|
||||||
|
|
||||||
|
def test_init_with_args(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_read(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_write(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_repr(self):
|
||||||
|
"""
|
||||||
|
Test that repr can be applied to an Attribute object.
|
||||||
|
"""
|
||||||
|
attribute = objects.Attribute(
|
||||||
|
attribute_name=objects.Attribute.AttributeName('test-name'),
|
||||||
|
attribute_index=objects.Attribute.AttributeIndex(0),
|
||||||
|
attribute_value=attributes.CustomAttribute('test-value')
|
||||||
|
)
|
||||||
|
|
||||||
|
self.assertEqual(
|
||||||
|
"Attribute("
|
||||||
|
"attribute_name=AttributeName(value='test-name'), "
|
||||||
|
"attribute_index=AttributeIndex(value=0), "
|
||||||
|
"attribute_value=CustomAttribute(value='test-value'))",
|
||||||
|
repr(attribute)
|
||||||
|
)
|
||||||
|
|
||||||
|
def test_str(self):
|
||||||
|
"""
|
||||||
|
Test that str can be applied to an Attribute object.
|
||||||
|
"""
|
||||||
|
attribute = objects.Attribute(
|
||||||
|
attribute_name=objects.Attribute.AttributeName('test-name'),
|
||||||
|
attribute_index=objects.Attribute.AttributeIndex(0),
|
||||||
|
attribute_value=attributes.CustomAttribute('test-value')
|
||||||
|
)
|
||||||
|
|
||||||
|
self.assertEqual(
|
||||||
|
str({
|
||||||
|
'attribute_name': 'test-name',
|
||||||
|
'attribute_index': '0',
|
||||||
|
'attribute_value': 'test-value'
|
||||||
|
}),
|
||||||
|
str(attribute)
|
||||||
|
)
|
||||||
|
|
||||||
|
def test_equal_on_equal(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_equal_on_not_equal_name(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_equal_on_not_equal_index(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_equal_on_not_equal_value(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_equal_on_type_mismatch(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_not_equal_on_equal(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_not_equal_on_not_equal_name(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_not_equal_on_not_equal_index(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_not_equal_on_not_equal_value(self):
|
||||||
|
self.skip('')
|
||||||
|
|
||||||
|
def test_not_equal_on_type_mismatch(self):
|
||||||
|
self.skip('')
|
Loading…
x
Reference in New Issue
Block a user