public void UTSignalFragmentGetChildrenTouching4() { ISignalContainer testItem1 = new SignalFragment( new List <ISignalContent> { new Wave(1, 0), new Wave(1, -3), //si new SignalFragment(6, new List <ISignalContent> { //si new Wave(1, 9), //si new SignalFragment(-2, new List <ISignalContent> { //si new Wave(1, -1) //si }), new SignalFragment(2, new List <ISignalContent> { new Wave(1, 0), new Wave(1, 2) }) }), new SignalFragment(24, new List <ISignalContent> { //si new Wave(1, 0), new Wave(1, 27) //si }), new SignalFragment(3, new List <ISignalContent> { new Wave(1, 3) }) } ) as ISignalContainer; Assert.AreEqual(3, testItem1.GetChildrenTouching(3, recursive: true).Count); Assert.AreEqual(7, testItem1.GetChildrenTouching(3, loopLength: 6, recursive: true).Count); }
public void UTSignalFragmentGetChildrenTouching6() { ISignalContainer testItem1 = new SignalFragment( new List <ISignalContent> { new Wave(1, 0), new Wave(1, 3), new SignalFragment(new List <ISignalContent> { new Wave(1, 3), new SignalFragment(new List <ISignalContent> { new Wave(1, 0) }), new SignalFragment(2, new List <ISignalContent> { new Wave(1, 0), new Wave(1, 1) }) }), new SignalFragment(2, new List <ISignalContent> { new Wave(1, 0), new Wave(1, 1) }), new SignalFragment(1, new List <ISignalContent> { new Wave(1, 0) }) } ) as ISignalContainer; Assert.AreEqual(5, testItem1.GetChildrenTouching(3, recursive: false, collectorArray: new List <ISignalContent> { new Wave(1, 0), new Wave(1, 3) }).Count); }
public void UTSignalFragmentConstructor2() { SignalFragment testItem = new SignalFragment(3); Assert.IsNotNull(testItem); Assert.AreEqual((testItem as ISignalContent).Offset, 3); }
public void UTSignalFragmentHasValuesAt4() { SignalFragment testItem1 = new SignalFragment(0, new List <ISignalContent> { new Wave(1, 0), new SignalFragment(-3, new List <ISignalContent> { new Wave(-3, 0), new Wave(1, 2) }), new SignalFragment(6, new List <ISignalContent> { new Wave(4, 4), new Wave(4, 8), }) } ); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(0, 6)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(1, 6)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(2, 6)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(3, 6)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(4, 6)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(5, 6)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(0, 6, recursive: false)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(2, 6, recursive: false)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(3, 6, recursive: false)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(4, 6, recursive: false)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(5, 6, recursive: false)); }
public void UTSignalFragmentHasValuesAt3() { SignalFragment testItem1 = new SignalFragment(0, new List <ISignalContent> { new Wave(1, 0), new SignalFragment(0, new List <ISignalContent> { new Wave(1, 0), new Wave(1, 1) }), new SignalFragment(3, new List <ISignalContent> { new Wave(3, 0), new Wave(1, 3) }), new SignalFragment(6, new List <ISignalContent> { new Wave(4, 4), new Wave(4, -2), }) } ); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(0)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(1)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(3)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(4)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(10)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(2)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(5)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(0, recursive: false)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(1, recursive: false)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(3, recursive: false)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(4, recursive: false)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(10, recursive: false)); }
public void UTSignalFragmentConstructor3() { List <ISignalContent> newContents = new List <ISignalContent> { new Wave(1), new Wave(2, 2) }; SignalFragment testItem = new SignalFragment(newContents); Assert.IsNotNull(testItem); Assert.IsTrue((testItem as ISignalHandler).HasValuesAt(0)); Assert.IsTrue((testItem as ISignalHandler).HasValuesAt(2)); Assert.IsFalse((testItem as ISignalHandler).HasValuesAt(3)); Assert.IsFalse((testItem as ISignalHandler).HasValuesAt(5)); }
public void UTSignalFragmentHasValuesAt2() { SignalFragment testItem1 = new SignalFragment(0, new List <ISignalContent> { new Wave(-3, -3), new Wave(6, 6), new Wave(8, 8) } ); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(-4, 6)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(3, 6)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(0, 6)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(2, 6)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(6, 7)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(1, 7)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(1, 6)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(-4)); SignalFragment testItem2 = new SignalFragment(-3, new List <ISignalContent> { new Wave(2, 5), new Wave(-5, -2) } ); Assert.IsTrue((testItem2 as ISignalHandler).HasValuesAt(2, 6)); Assert.IsTrue((testItem2 as ISignalHandler).HasValuesAt(-4, 6)); Assert.IsTrue((testItem2 as ISignalHandler).HasValuesAt(14, 6)); Assert.IsTrue((testItem2 as ISignalHandler).HasValuesAt(1, 6)); Assert.IsFalse((testItem2 as ISignalHandler).HasValuesAt(-4)); Assert.IsFalse((testItem2 as ISignalHandler).HasValuesAt(3, 6)); Assert.IsFalse((testItem2 as ISignalHandler).HasValuesAt(4, 6)); Assert.IsFalse((testItem2 as ISignalHandler).HasValuesAt(5, 6)); Assert.IsFalse((testItem2 as ISignalHandler).HasValuesAt(0, 6)); SignalFragment testItem3 = new SignalFragment(2, new List <ISignalContent> { new Wave(2, 0), new Wave(-2, -4), new Wave(7, 5) } ); Assert.IsTrue((testItem3 as ISignalHandler).HasValuesAt(2, 6)); Assert.IsTrue((testItem3 as ISignalHandler).HasValuesAt(4, 6)); Assert.IsTrue((testItem3 as ISignalHandler).HasValuesAt(1, 6)); Assert.IsFalse((testItem3 as ISignalHandler).HasValuesAt(3, 6)); Assert.IsFalse((testItem3 as ISignalHandler).HasValuesAt(5, 6)); }
public void UTSignalFragmentAddChild2() { ISignalContainer testItem1 = new SignalFragment(0, new List <ISignalContent> { new Wave(1, 0) } ) as ISignalContainer; Assert.IsTrue(testItem1.HasValuesAt(0)); Assert.AreEqual(testItem1.GetChildren(new List <ISignalContent>()).Count, 1); testItem1.AddChild(null); Assert.AreEqual(testItem1.GetChildren(new List <ISignalContent>()).Count, 1); }
public void UTSignalFragmentGetChildrenTouching2() { ISignalContainer testItem1 = new SignalFragment( new List <ISignalContent> { new Wave(1, 0), new Wave(1, -3), //si new SignalFragment(6, new List <ISignalContent> { //si new Wave(1, 3), //si new SignalFragment(-2, new List <ISignalContent> { //si new Wave(1, -1) //si }), new SignalFragment(2, new List <ISignalContent> { new Wave(1, 0), new Wave(1, 2) }) }), new SignalFragment(24, new List <ISignalContent> { //si new Wave(1, 0), new Wave(1, 27) //si }), new SignalFragment(3, new List <ISignalContent> { new Wave(1, 3) }) } ) as ISignalContainer; Assert.AreEqual(3, testItem1.GetChildrenTouching(3, loopLength: 6, recursive: false).Count); //non-existent ISignalContainer testItem2 = new SignalFragment( new List <ISignalContent> { new Wave(1, 0), new Wave(1, -3), new SignalFragment(3, new List <ISignalContent> { new Wave(1, 5), new Wave(1, 7), }), new SignalFragment(24, new List <ISignalContent> { new Wave(1, 11), }), new SignalFragment(-9, new List <ISignalContent> { new Wave(1, -5), }) } ) as ISignalContainer; Assert.AreEqual(0, testItem2.GetChildrenTouching(1, loopLength: 6, recursive: true).Count); }
public void UTSignalFragmentGetValuesAt3() { SignalFragment testItem1 = new SignalFragment(0, new List <ISignalContent> { new Wave(1, 0), new Wave(1, 2), new SignalFragment(0, new List <ISignalContent> { new Wave(1, 0), new Wave(1, 2) }) } ); Assert.AreEqual(2, (testItem1 as ISignalHandler).GetValuesAt(0).Value); Assert.AreEqual(2, (testItem1 as ISignalHandler).GetValuesAt(2).Value); Assert.AreEqual(1, (testItem1 as ISignalHandler).GetValuesAt(0, recursive: false).Value); Assert.AreEqual(1, (testItem1 as ISignalHandler).GetValuesAt(2, recursive: false).Value); }
public void UTSignalFragmentAddChildAt2() { ISignalContainer testItem1 = new SignalFragment(1, new List <ISignalContent> { new Wave(1, 0) } ) as ISignalContainer; ISignalContent testWave1 = new Wave(1, -2) as ISignalContent; Assert.IsTrue(testItem1.HasValuesAt(1)); Assert.IsFalse(testItem1.HasValuesAt(3)); Assert.AreEqual(testItem1.GetChildren(new List <ISignalContent>()).Count, 1); testItem1.AddChildAt(testWave1, 2, true); Assert.IsTrue(testItem1.HasValuesAt(1)); Assert.IsTrue(testItem1.HasValuesAt(3)); Assert.IsFalse(testItem1.HasValuesAt(-2)); Assert.AreEqual(testItem1.GetChildren(new List <ISignalContent>()).Count, 2); }
public void UTSignalFragmentGetValuesAt2() { SignalFragment testItem1 = new SignalFragment(0, new List <ISignalContent> { new Wave(1, 0), new SignalFragment(-3, new List <ISignalContent> { new Wave(1, 3), new Wave(1, -1) }), new SignalFragment(6, new List <ISignalContent> { new Wave(1, 0), new Wave(1, 8), }) } ); Assert.AreEqual(1, (testItem1 as ISignalHandler).GetValuesAt(0, loopLength: 6, recursive: false).Value); Assert.AreEqual(0, (testItem1 as ISignalHandler).GetValuesAt(2, loopLength: 6, recursive: false).Value); Assert.AreEqual(3, (testItem1 as ISignalHandler).GetValuesAt(0, loopLength: 6, recursive: true).Value); Assert.AreEqual(2, (testItem1 as ISignalHandler).GetValuesAt(2, loopLength: 6, recursive: true).Value); }
public void UTSignalFragmentHasValuesAt1() { SignalFragment testItem1 = new SignalFragment(0, new List <ISignalContent> { new Wave(0, 0), new Wave(2, 2) } ); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(0)); Assert.IsTrue((testItem1 as ISignalHandler).HasValuesAt(2)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(1)); Assert.IsFalse((testItem1 as ISignalHandler).HasValuesAt(-4)); SignalFragment testItem2 = new SignalFragment(3, new List <ISignalContent> { new Wave(8, 5), new Wave(1, -2) } ); Assert.IsFalse((testItem2 as ISignalHandler).HasValuesAt(-2)); Assert.IsFalse((testItem2 as ISignalHandler).HasValuesAt(5)); Assert.IsTrue((testItem2 as ISignalHandler).HasValuesAt(8)); Assert.IsTrue((testItem2 as ISignalHandler).HasValuesAt(1)); SignalFragment testItem3 = new SignalFragment(-2, new List <ISignalContent> { new Wave(0, 2), new Wave(-4, -2), new Wave(5, 7) } ); Assert.IsTrue((testItem3 as ISignalHandler).HasValuesAt(0)); Assert.IsTrue((testItem3 as ISignalHandler).HasValuesAt(-4)); Assert.IsTrue((testItem3 as ISignalHandler).HasValuesAt(5)); Assert.IsFalse((testItem3 as ISignalHandler).HasValuesAt(2)); Assert.IsFalse((testItem3 as ISignalHandler).HasValuesAt(7)); }
public void UTSignalFragmentGetValuesAt4() { SignalFragment testItem1 = new SignalFragment(0, new List <ISignalContent> { new Wave(1, 0), new Wave(1, 2), new SignalFragment(0, new List <ISignalContent> { new Wave(1, 2) }) } ); ISignalStack testCollector = new WaveStack(); (testItem1 as ISignalHandler).GetValuesAt(0, collectorStack: testCollector); Assert.AreEqual(1, testCollector.Value); testCollector = new WaveStack(); (testItem1 as ISignalHandler).GetValuesAt(2, collectorStack: testCollector); Assert.AreEqual(2, testCollector.Value); }
public void UTSignalFragmentGetChildren2() { ISignalContainer testItem1 = new SignalFragment( new List <ISignalContent> { new Wave(1, 0), new Wave(1, 0), new SignalFragment(new List <ISignalContent> { new Wave(1, 0), new SignalFragment(new List <ISignalContent> { new Wave(1, 0) }), new SignalFragment(new List <ISignalContent> { new Wave(1, 0) }) }), new SignalFragment(new List <ISignalContent> { new Wave(1, 0) }) } ) as ISignalContainer; Assert.AreEqual(testItem1.GetChildren().Count, 10); }
public void UTSignalFragmentAutoRebaseOffsets2() { ISignalContainer testItem1 = new SignalFragment(-3, new List <ISignalContent> { new Wave(-6, -3), new Wave(-7, -4), new SignalFragment(-5, new List <ISignalContent> { new Wave(-9, -1) }) } ) as ISignalContainer; Assert.AreEqual(-6, testItem1.GetValuesAt(-6).Value); Assert.AreEqual(-7, testItem1.GetValuesAt(-7).Value); Assert.AreEqual(-9, testItem1.GetValuesAt(-9).Value); testItem1.AutoRebaseOffsets(); Assert.AreEqual(-6, testItem1.GetValuesAt(-6).Value); Assert.AreEqual(-7, testItem1.GetValuesAt(-7).Value); Assert.AreEqual(-9, testItem1.GetValuesAt(-9).Value); Assert.AreEqual(-9, (testItem1 as ISignalContent).Offset); Assert.AreEqual(0, (testItem1.GetChildrenTouching(-9, recursive: false)[0] as ISignalContent).Offset); }
public void UTSignalFragmentAutoRebaseOffsets1() { ISignalContainer testItem1 = new SignalFragment(3, new List <ISignalContent> { new Wave(6, 3), new Wave(7, 4), new SignalFragment(5, new List <ISignalContent> { new Wave(9, 1) }) } ) as ISignalContainer; Assert.AreEqual(6, testItem1.GetValuesAt(6).Value); Assert.AreEqual(7, testItem1.GetValuesAt(7).Value); Assert.AreEqual(9, testItem1.GetValuesAt(9).Value); testItem1.AutoRebaseOffsets(); Assert.AreEqual(6, testItem1.GetValuesAt(6).Value); Assert.AreEqual(7, testItem1.GetValuesAt(7).Value); Assert.AreEqual(9, testItem1.GetValuesAt(9).Value); Assert.AreEqual(6, (testItem1 as ISignalContent).Offset); Assert.AreEqual(3, (testItem1.GetChildrenTouching(9, recursive: false)[0] as ISignalContent).Offset); }