Merge "Add Resource.name property"
This commit is contained in:
@@ -334,6 +334,23 @@ class Resource(collections.MutableMapping):
|
||||
def id(self):
|
||||
del self._attrs[self.id_attribute]
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
"""The name associated with this resource.
|
||||
|
||||
The true value of the ``name`` property comes from the
|
||||
attribute set as :data:`name_attribute`.
|
||||
"""
|
||||
return self._attrs.get(self.name_attribute, None)
|
||||
|
||||
@name.setter
|
||||
def name(self, value):
|
||||
self._attrs[self.name_attribute] = value
|
||||
|
||||
@name.deleter
|
||||
def name(self):
|
||||
del self._attrs[self.name_attribute]
|
||||
|
||||
@property
|
||||
def is_dirty(self):
|
||||
"""True if the resource needs to be updated to the remote."""
|
||||
|
@@ -552,6 +552,23 @@ class TestFind(base.TestCase):
|
||||
faker.id_attribute = 'id'
|
||||
self.assertEqual(fake_id, faker.id)
|
||||
|
||||
def test_name_attribute(self):
|
||||
class Person_ES(resource.Resource):
|
||||
name_attribute = "nombre"
|
||||
nombre = resource.prop('nombre')
|
||||
|
||||
name = "Brian"
|
||||
args = {'nombre': name}
|
||||
|
||||
person = Person_ES(args)
|
||||
self.assertEqual(person.nombre, name)
|
||||
self.assertEqual(person.name, name)
|
||||
|
||||
new_name = "Julien"
|
||||
person.name = new_name
|
||||
self.assertEqual(person.nombre, new_name)
|
||||
self.assertEqual(person.name, new_name)
|
||||
|
||||
def test_boolstr_prop(self):
|
||||
faker = FakeResource(fake_data)
|
||||
self.assertEqual(True, faker.enabled)
|
||||
|
Reference in New Issue
Block a user