class HostFactory(factory.DjangoModelFactory): class Meta: model = models.Host facts = utils.compressed_obj(HOST_FACTS) name = "hostname" playbook = factory.SubFactory(PlaybookFactory)
def test_playbook_serializer_compress_arguments(self): serializer = serializers.PlaybookSerializer( data={"ansible_version": "2.4.0", "path": "/path/playbook.yml", "arguments": factories.PLAYBOOK_ARGUMENTS} ) serializer.is_valid() playbook = serializer.save() playbook.refresh_from_db() self.assertEqual(playbook.arguments, utils.compressed_obj(factories.PLAYBOOK_ARGUMENTS))
class RecordFactory(factory.DjangoModelFactory): class Meta: model = models.Record key = "record-key" value = utils.compressed_obj(RECORD_LIST) type = "list" playbook = factory.SubFactory(PlaybookFactory)
class PlaybookFactory(factory.DjangoModelFactory): class Meta: model = models.Playbook name = "test-playbook" ansible_version = "2.4.0" status = "running" arguments = utils.compressed_obj(PLAYBOOK_ARGUMENTS) path = "/path/playbook.yml"
def test_host_serializer_compress_facts(self): playbook = factories.PlaybookFactory() serializer = serializers.HostSerializer( data={"name": "compress", "facts": factories.HOST_FACTS, "playbook": playbook.id} ) serializer.is_valid() host = serializer.save() host.refresh_from_db() self.assertEqual(host.facts, utils.compressed_obj(factories.HOST_FACTS))
class ResultFactory(factory.DjangoModelFactory): class Meta: model = models.Result content = utils.compressed_obj(RESULT_CONTENTS) status = "ok" host = factory.SubFactory(HostFactory) task = factory.SubFactory(TaskFactory) play = factory.SubFactory(PlayFactory) playbook = factory.SubFactory(PlaybookFactory) changed = False ignore_errors = False
class HostFactory(DjangoModelFactory): class Meta: model = models.Host facts = utils.compressed_obj(HOST_FACTS) name = "hostname" playbook = factory.SubFactory(PlaybookFactory) changed = 0 failed = 0 ok = 0 skipped = 0 unreachable = 0
class TaskFactory(factory.DjangoModelFactory): class Meta: model = models.Task name = "test task" status = "running" action = "setup" lineno = 2 handler = False tags = utils.compressed_obj(TASK_TAGS) play = factory.SubFactory(PlayFactory) file = factory.SubFactory(FileFactory) playbook = factory.SubFactory(PlaybookFactory)
def test_record_serializer(self): playbook = factories.PlaybookFactory() serializer = serializers.RecordSerializer( data={ "key": "test", "value": factories.RECORD_LIST, "type": "list", "playbook": playbook.id }) serializer.is_valid() record = serializer.save() record.refresh_from_db() self.assertEqual(record.key, "test") self.assertEqual(record.value, utils.compressed_obj(factories.RECORD_LIST)) self.assertEqual(record.type, "list")
def test_result_serializer_compress_content(self): host = factories.HostFactory() task = factories.TaskFactory() serializer = serializers.ResultSerializer( data={ "content": factories.RESULT_CONTENTS, "status": "ok", "host": host.id, "task": task.id, "play": task.play.id, "playbook": task.playbook.id, }) serializer.is_valid() result = serializer.save() result.refresh_from_db() self.assertEqual(result.content, utils.compressed_obj(factories.RESULT_CONTENTS))
class ResultFactory(DjangoModelFactory): class Meta: model = models.Result content = utils.compressed_obj(RESULT_CONTENTS) status = "ok" host = factory.SubFactory(HostFactory) # delegated_to expects a HostFactory to be assigned but it can also be [] # when no delegation is done. # Though [] can't be declared here: # TypeError: Direct assignment to the forward side of a many-to-many set is prohibited. # delegated_to = [] task = factory.SubFactory(TaskFactory) play = factory.SubFactory(PlayFactory) playbook = factory.SubFactory(PlaybookFactory) changed = False ignore_errors = False
def test_task_serializer_compress_tags(self): play = factories.PlayFactory() file = factories.FileFactory() serializer = serializers.TaskSerializer( data={ "name": "compress", "action": "test", "lineno": 2, "status": "running", "handler": False, "play": play.id, "file": file.id, "tags": factories.TASK_TAGS, "playbook": play.playbook.id, }) serializer.is_valid() task = serializer.save() task.refresh_from_db() self.assertEqual(task.tags, utils.compressed_obj(factories.TASK_TAGS))
def test_task_serializer_decompress_tags(self): task = factories.TaskFactory( tags=utils.compressed_obj(factories.TASK_TAGS)) serializer = serializers.TaskSerializer(instance=task) self.assertEqual(serializer.data["tags"], factories.TASK_TAGS)
def test_playbook_serializer_decompress_arguments(self): playbook = factories.PlaybookFactory(arguments=utils.compressed_obj(factories.PLAYBOOK_ARGUMENTS)) serializer = serializers.PlaybookSerializer(instance=playbook) self.assertEqual(serializer.data["arguments"], factories.PLAYBOOK_ARGUMENTS)
def test_host_serializer_decompress_facts(self): host = factories.HostFactory( facts=utils.compressed_obj(factories.HOST_FACTS)) serializer = serializers.HostSerializer(instance=host) self.assertEqual(serializer.data["facts"], factories.HOST_FACTS)
def test_result_serializer_decompress_content(self): result = factories.ResultFactory( content=utils.compressed_obj(factories.RESULT_CONTENTS)) serializer = serializers.ResultSerializer(instance=result) self.assertEqual(serializer.data["content"], factories.RESULT_CONTENTS)