Browse Source

filter -> [... if]s

pull/384/head
Ross McFarland 6 years ago
parent
commit
00fa158c59
No known key found for this signature in database GPG Key ID: 61C10C4FC8FE4A89
4 changed files with 24 additions and 30 deletions
  1. +1
    -2
      octodns/manager.py
  2. +1
    -1
      octodns/provider/base.py
  3. +6
    -6
      tests/test_octodns_provider_mythicbeasts.py
  4. +16
    -21
      tests/test_octodns_provider_yaml.py

+ 1
- 2
octodns/manager.py View File

@ -271,8 +271,7 @@ class Manager(object):
raise ManagerException('Zone {} is missing targets'
.format(zone_name))
if eligible_targets:
targets = list(filter(lambda d: d in eligible_targets,
targets))
targets = [t for t in targets if t in eligible_targets]
if not targets:
# Don't bother planning (and more importantly populating) zones


+ 1
- 1
octodns/provider/base.py View File

@ -60,7 +60,7 @@ class BaseProvider(BaseSource):
# allow the provider to filter out false positives
before = len(changes)
changes = list(filter(self._include_change, changes))
changes = [c for c in changes if self._include_change(c)]
after = len(changes)
if before != after:
self.log.info('plan: filtered out %s changes', before - after)


+ 6
- 6
tests/test_octodns_provider_mythicbeasts.py View File

@ -441,11 +441,11 @@ class TestMythicBeastsProvider(TestCase):
plan = provider.plan(wanted)
# Octo ignores NS records (15-1)
self.assertEquals(1, len(list(filter(
lambda u: isinstance(u, Update), plan.changes))))
self.assertEquals(1, len(list(filter(
lambda d: isinstance(d, Delete), plan.changes))))
self.assertEquals(14, len(list(filter(
lambda c: isinstance(c, Create), plan.changes))))
self.assertEquals(1, len([c for c in plan.changes
if isinstance(c, Update)]))
self.assertEquals(1, len([c for c in plan.changes
if isinstance(c, Delete)]))
self.assertEquals(14, len([c for c in plan.changes
if isinstance(c, Create)]))
self.assertEquals(16, provider.apply(plan))
self.assertTrue(plan.exists)

+ 16
- 21
tests/test_octodns_provider_yaml.py View File

@ -58,9 +58,8 @@ class TestYamlProvider(TestCase):
# We add everything
plan = target.plan(zone)
self.assertEquals(15, len(list(filter(lambda c:
isinstance(c, Create),
plan.changes))))
self.assertEquals(15, len([c for c in plan.changes
if isinstance(c, Create)]))
self.assertFalse(isfile(yaml_file))
# Now actually do it
@ -69,9 +68,8 @@ class TestYamlProvider(TestCase):
# Dynamic plan
plan = target.plan(dynamic_zone)
self.assertEquals(5, len(list(filter(lambda c:
isinstance(c, Create),
plan.changes))))
self.assertEquals(5, len([c for c in plan.changes
if isinstance(c, Create)]))
self.assertFalse(isfile(dynamic_yaml_file))
# Apply it
self.assertEquals(5, target.apply(plan))
@ -82,17 +80,15 @@ class TestYamlProvider(TestCase):
target.populate(reloaded)
self.assertDictEqual(
{'included': ['test']},
list(filter(
lambda x: x.name == 'included', reloaded.records
))[0]._octodns)
[x for x in reloaded.records
if x.name == 'included'][0]._octodns)
self.assertFalse(zone.changes(reloaded, target=source))
# A 2nd sync should still create everything
plan = target.plan(zone)
self.assertEquals(15, len(list(filter(lambda c:
isinstance(c, Create),
plan.changes))))
self.assertEquals(15, len([c for c in plan.changes
if isinstance(c, Create)]))
with open(yaml_file) as fh:
data = safe_load(fh.read())
@ -255,8 +251,8 @@ class TestSplitYamlProvider(TestCase):
# We add everything
plan = target.plan(zone)
self.assertEquals(15, len(list(filter(
lambda c: isinstance(c, Create), plan.changes))))
self.assertEquals(15, len([c for c in plan.changes
if isinstance(c, Create)]))
self.assertFalse(isdir(zone_dir))
# Now actually do it
@ -264,8 +260,8 @@ class TestSplitYamlProvider(TestCase):
# Dynamic plan
plan = target.plan(dynamic_zone)
self.assertEquals(5, len(list(filter(
lambda c: isinstance(c, Create), plan.changes))))
self.assertEquals(5, len([c for c in plan.changes
if isinstance(c, Create)]))
self.assertFalse(isdir(dynamic_zone_dir))
# Apply it
self.assertEquals(5, target.apply(plan))
@ -276,16 +272,15 @@ class TestSplitYamlProvider(TestCase):
target.populate(reloaded)
self.assertDictEqual(
{'included': ['test']},
list(filter(
lambda x: x.name == 'included', reloaded.records
))[0]._octodns)
[x for x in reloaded.records
if x.name == 'included'][0]._octodns)
self.assertFalse(zone.changes(reloaded, target=source))
# A 2nd sync should still create everything
plan = target.plan(zone)
self.assertEquals(15, len(list(filter(
lambda c: isinstance(c, Create), plan.changes))))
self.assertEquals(15, len([c for c in plan.changes
if isinstance(c, Create)]))
yaml_file = join(zone_dir, '$unit.tests.yaml')
self.assertTrue(isfile(yaml_file))


Loading…
Cancel
Save