summaryrefslogtreecommitdiff
path: root/designate/tests/unit/objects/test_recordset.py
diff options
context:
space:
mode:
Diffstat (limited to 'designate/tests/unit/objects/test_recordset.py')
-rw-r--r--designate/tests/unit/objects/test_recordset.py58
1 files changed, 54 insertions, 4 deletions
diff --git a/designate/tests/unit/objects/test_recordset.py b/designate/tests/unit/objects/test_recordset.py
index ab1c9ddb..ddb00553 100644
--- a/designate/tests/unit/objects/test_recordset.py
+++ b/designate/tests/unit/objects/test_recordset.py
@@ -14,7 +14,6 @@
# License for the specific language governing permissions and limitations
# under the License.
import itertools
-import unittest
import mock
import oslotest.base
@@ -111,16 +110,16 @@ class RecordSetTest(oslotest.base.BaseTestCase):
)
self.assertEqual('DELETE', record_set.action)
- @unittest.expectedFailure # bug
def test_status_error(self):
- statuses = ('ERROR', 'PENDING', 'ACTIVE')
- for s1, s2, s3 in itertools.permutations(statuses):
+ statuses = ('ERROR', 'PENDING', 'ACTIVE', 'DELETED')
+ for s1, s2, s3, s4 in itertools.permutations(statuses):
record_set = objects.RecordSet(
name='www.example.org.', type='A',
records=objects.RecordList(objects=[
objects.Record(data='192.0.2.1', status=s1),
objects.Record(data='192.0.2.2', status=s2),
objects.Record(data='192.0.2.3', status=s3),
+ objects.Record(data='192.0.2.4', status=s4),
])
)
self.assertEqual(record_set.status, 'ERROR')
@@ -163,6 +162,57 @@ class RecordSetTest(oslotest.base.BaseTestCase):
)
self.assertEqual('DELETED', record_set.status)
+ def test_status_many_expect_error(self):
+ rs = objects.RecordSet(
+ name='www.example.org.', type='A',
+ records=objects.RecordList(objects=[
+ objects.Record(data='192.0.2.2', status='ACTIVE'),
+ objects.Record(data='192.0.2.3', status='DELETED'),
+ objects.Record(data='192.0.2.4', status='DELETED'),
+ objects.Record(data='192.0.2.5', status='DELETED'),
+ objects.Record(data='192.0.2.6', status='ACTIVE'),
+ objects.Record(data='192.0.2.7', status='ACTIVE'),
+ objects.Record(data='192.0.2.8', status='ERROR'),
+ objects.Record(data='192.0.2.9', status='ACTIVE'),
+ objects.Record(data='192.0.2.10', status='ACTIVE'),
+ ])
+ )
+ self.assertEqual('ERROR', rs.status)
+
+ def test_status_many_expect_pending(self):
+ rs = objects.RecordSet(
+ name='www.example.org.', type='A',
+ records=objects.RecordList(objects=[
+ objects.Record(data='192.0.2.2', status='ACTIVE'),
+ objects.Record(data='192.0.2.3', status='DELETED'),
+ objects.Record(data='192.0.2.4', status='PENDING'),
+ objects.Record(data='192.0.2.5', status='DELETED'),
+ objects.Record(data='192.0.2.6', status='PENDING'),
+ objects.Record(data='192.0.2.7', status='ACTIVE'),
+ objects.Record(data='192.0.2.8', status='DELETED'),
+ objects.Record(data='192.0.2.9', status='PENDING'),
+ objects.Record(data='192.0.2.10', status='ACTIVE'),
+ ])
+ )
+ self.assertEqual('PENDING', rs.status)
+
+ def test_status_many_expect_active(self):
+ rs = objects.RecordSet(
+ name='www.example.org.', type='A',
+ records=objects.RecordList(objects=[
+ objects.Record(data='192.0.2.2', status='ACTIVE'),
+ objects.Record(data='192.0.2.3', status='DELETED'),
+ objects.Record(data='192.0.2.4', status='DELETED'),
+ objects.Record(data='192.0.2.5', status='DELETED'),
+ objects.Record(data='192.0.2.6', status='ACTIVE'),
+ objects.Record(data='192.0.2.7', status='ACTIVE'),
+ objects.Record(data='192.0.2.8', status='DELETED'),
+ objects.Record(data='192.0.2.9', status='ACTIVE'),
+ objects.Record(data='192.0.2.10', status='ACTIVE'),
+ ])
+ )
+ self.assertEqual('ACTIVE', rs.status)
+
def test_validate(self):
record_set = create_test_recordset()
record_set.validate()