def test_no_nodes_with_metadata(self, mock_user): mock_user.id = 'cfc9500f-dc7f-4c83-9ea7-2c581c1b38cf' mock_user.do_not_track = True metadata = ManifestMetadata( project_id='098f6bcd4621d373cade4e832627b4f6') manifest = Manifest(nodes={}, macros={}, docs={}, generated_at=datetime.utcnow(), disabled=[], metadata=metadata, files={}) self.assertEqual( manifest.writable_manifest().to_dict(), { 'nodes': {}, 'macros': {}, 'parent_map': {}, 'child_map': {}, 'generated_at': '2018-02-14T09:15:13Z', 'docs': {}, 'metadata': { 'project_id': '098f6bcd4621d373cade4e832627b4f6', 'user_id': 'cfc9500f-dc7f-4c83-9ea7-2c581c1b38cf', 'send_anonymous_usage_stats': False, }, 'disabled': [], 'files': {}, })
def test__nested_nodes(self): nodes = copy.copy(self.nested_nodes) manifest = Manifest(nodes=nodes, macros={}, docs={}, generated_at=datetime.utcnow(), disabled=[], files={}) serialized = manifest.writable_manifest().to_dict() self.assertEqual(serialized['generated_at'], '2018-02-14T09:15:13Z') self.assertEqual(serialized['docs'], {}) self.assertEqual(serialized['disabled'], []) self.assertEqual(serialized['files'], {}) parent_map = serialized['parent_map'] child_map = serialized['child_map'] # make sure there aren't any extra/missing keys. self.assertEqual(set(parent_map), set(nodes)) self.assertEqual(set(child_map), set(nodes)) self.assertEqual(parent_map['model.root.sibling'], ['model.root.events']) self.assertEqual(parent_map['model.root.nested'], ['model.root.dep']) self.assertEqual(parent_map['model.root.dep'], ['model.root.events']) # order doesn't matter. self.assertEqual(set(parent_map['model.root.multi']), set(['model.root.nested', 'model.root.sibling'])) self.assertEqual( parent_map['model.root.events'], [], ) self.assertEqual( parent_map['model.snowplow.events'], [], ) self.assertEqual( child_map['model.root.sibling'], ['model.root.multi'], ) self.assertEqual( child_map['model.root.nested'], ['model.root.multi'], ) self.assertEqual(child_map['model.root.dep'], ['model.root.nested']) self.assertEqual(child_map['model.root.multi'], []) self.assertEqual(set(child_map['model.root.events']), set(['model.root.dep', 'model.root.sibling'])) self.assertEqual(child_map['model.snowplow.events'], [])
def test__no_nodes(self): manifest = Manifest(nodes={}, macros={}, docs={}, generated_at=datetime.utcnow(), disabled=[], files={}) self.assertEqual( manifest.writable_manifest().to_dict(), { 'nodes': {}, 'macros': {}, 'parent_map': {}, 'child_map': {}, 'generated_at': '2018-02-14T09:15:13Z', 'docs': {}, 'metadata': {}, 'disabled': [], 'files': {}, })