test(config_management): testing of config_groups rendered config
!22 #43
This commit is contained in:
@ -0,0 +1,88 @@
|
|||||||
|
import pytest
|
||||||
|
import unittest
|
||||||
|
|
||||||
|
from django.test import TestCase
|
||||||
|
|
||||||
|
from access.models import Organization
|
||||||
|
|
||||||
|
from config_management.models.groups import ConfigGroups
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.django_db
|
||||||
|
class ConfigGroupsModel(TestCase):
|
||||||
|
|
||||||
|
model = ConfigGroups
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def setUpTestData(self):
|
||||||
|
"""Setup Test
|
||||||
|
|
||||||
|
1. Create an organization for user and item
|
||||||
|
2. Create an item
|
||||||
|
|
||||||
|
"""
|
||||||
|
|
||||||
|
self.organization = Organization.objects.create(name='test_org')
|
||||||
|
|
||||||
|
|
||||||
|
self.item = self.model.objects.create(
|
||||||
|
organization = self.organization,
|
||||||
|
name = 'one',
|
||||||
|
config = dict({"key": "one", "existing": "dont_over_write"})
|
||||||
|
)
|
||||||
|
|
||||||
|
self.second_item = self.model.objects.create(
|
||||||
|
organization = self.organization,
|
||||||
|
name = 'one_two',
|
||||||
|
config = dict({"key": "two"}),
|
||||||
|
parent = self.item
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def test_config_groups_count_child_groups(self):
|
||||||
|
""" Test function count_children """
|
||||||
|
|
||||||
|
assert self.item.count_children() == 1
|
||||||
|
|
||||||
|
|
||||||
|
def test_config_groups_rendered_config_not_empty(self):
|
||||||
|
""" Rendered Config must be returned """
|
||||||
|
|
||||||
|
assert self.item.config is not None
|
||||||
|
|
||||||
|
|
||||||
|
def test_config_groups_rendered_config_is_dict(self):
|
||||||
|
""" Rendered Config is a string """
|
||||||
|
|
||||||
|
assert type(self.item.render_config()) is str
|
||||||
|
|
||||||
|
|
||||||
|
def test_config_groups_rendered_config_is_correct(self):
|
||||||
|
""" Rendered Config is correct """
|
||||||
|
|
||||||
|
assert self.item.config['key'] == 'one'
|
||||||
|
|
||||||
|
|
||||||
|
def test_config_groups_rendered_config_inheritence_overwrite(self):
|
||||||
|
""" rendered config from parent group merged correctly """
|
||||||
|
|
||||||
|
assert self.second_item.config['key'] == 'two'
|
||||||
|
|
||||||
|
|
||||||
|
def test_config_groups_rendered_config_inheritence_existing_key_present(self):
|
||||||
|
""" rendered config from parent group merge existing key present
|
||||||
|
|
||||||
|
during merge, a key that doesn't exist in the child group that exists in the
|
||||||
|
parent group should be within the child groups rendered config
|
||||||
|
"""
|
||||||
|
|
||||||
|
assert self.second_item.config['key'] == 'two'
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.skip(reason="to be written")
|
||||||
|
def test_config_groups_config_keys_valid_ansible_variable():
|
||||||
|
""" All config keys must be valid ansible variables """
|
||||||
|
pass
|
||||||
|
|
@ -1,20 +0,0 @@
|
|||||||
import pytest
|
|
||||||
import unittest
|
|
||||||
|
|
||||||
from django.test import TestCase
|
|
||||||
|
|
||||||
from config_management.models.groups import ConfigGroups
|
|
||||||
|
|
||||||
|
|
||||||
class ConfigGroups(TestCase):
|
|
||||||
|
|
||||||
model = ConfigGroups
|
|
||||||
|
|
||||||
model_name = 'configgroups'
|
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.skip(reason="to be written")
|
|
||||||
def test_config_groups_config_keys_valid_ansible_variable():
|
|
||||||
""" All config keys must be valid ansible variables """
|
|
||||||
pass
|
|
||||||
|
|
Reference in New Issue
Block a user