public async Task ExportsAtCursor() { var cursor = new DateTime(2018, 9, 13); var component = new TestComponent("hi"); ComponentExporter .Setup(x => x.Export()) .Returns(component); var events = new Event[0]; EventExporter .Setup(x => x.Export(cursor)) .Returns(events); var lastUpdated = new DateTime(2018, 9, 12); Cursor .Setup(x => x.Get(StatusUpdater.LastUpdatedCursorName)) .ReturnsAsync(lastUpdated); await Exporter.Export(cursor); Serializer .Verify( x => x.Serialize(cursor, lastUpdated, component, events), Times.Once()); }
private IEnumerator SendComponents(GC_GameObject obj) { foreach (var child in obj.Childs) { ComponentExporter.ExportComponents(child.Transform.GetComponents <Component>()); yield return(new WaitForEndOfFrame()); } foreach (var child in obj.Childs) { yield return(SendComponents(child)); } }
public ComponentExporterTest() { var level3AFrom2A = new TestComponent("3A"); var level3BFrom2A = new TestComponent("3B"); var level2A = new TestComponent("2A", new[] { level3AFrom2A, level3BFrom2A }); var level3AFrom2B = new TestComponent("3A"); var level3BFrom2B = new TestComponent("3B"); var level2B = new TestComponent("2B", new[] { level3AFrom2B, level3BFrom2B }); Root = new TestComponent("Root", new[] { level2A, level2B }); // We have to get the subcomponents by iterating through the tree. // Components only have a path in the context of accessing them through a parent. Level2A = Root .SubComponents.Single(c => c.Name == "2A"); Level3AFrom2A = Root .SubComponents.Single(c => c.Name == "2A") .SubComponents.Single(c => c.Name == "3A"); Level3BFrom2A = Root .SubComponents.Single(c => c.Name == "2A") .SubComponents.Single(c => c.Name == "3B"); Level2B = Root .SubComponents.Single(c => c.Name == "2B"); Level3AFrom2B = Root .SubComponents.Single(c => c.Name == "2B") .SubComponents.Single(c => c.Name == "3A"); Level3BFrom2B = Root .SubComponents.Single(c => c.Name == "2B") .SubComponents.Single(c => c.Name == "3B"); Factory = new Mock <IComponentFactory>(); Factory .Setup(x => x.Create()) .Returns(Root); Table = new Mock <ITableWrapper>(); Exporter = new ComponentExporter( Table.Object, Factory.Object, Mock.Of <ILogger <ComponentExporter> >()); }
public async Task ExportsAtCursor() { var cursor = new DateTime(2018, 9, 13); var component = new TestComponent("hi"); ComponentExporter .Setup(x => x.Export()) .Returns(component); var events = new Event[0]; EventExporter .Setup(x => x.Export(cursor)) .Returns(events); await Exporter.Export(cursor); Serializer .Verify( x => x.Serialize(cursor, component, events), Times.Once()); }