public void DanglingHave() { // Arrange var parent = new Container() { Subs = RandomValueGen.GetRandomArray <Sub>(2) }; var search = RandomValueGen.GetRandomFrom(parent.Subs); // Pre-assert // Act Assert.That(() => { Expect(parent).Not.To.Have.Child(search); }, Throws.Exception.InstanceOf <UnmetExpectationException>()); Assert.That(() => { Expect(parent).To.Not.Have.Child(search); }, Throws.Exception.InstanceOf <UnmetExpectationException>()); Assert.That(() => { Expect(parent).To.Have.Child(search); }, Throws.Nothing); // Assert }
public void Count_ShouldReturnActualCount() { // Arrange var sut = Create <string, bool>(); var items = RandomValueGen.GetRandomArray <KeyValuePair <string, bool> >(); items.ForEach(sut.Add); // Pre-assert // Act var result = sut.Count; // Assert Expect(result).To.Equal(items.Length); }
public void Values_ShouldReturnKnownValues() { // Arrange var items = RandomValueGen.GetRandomArray <KeyValuePair <string, string> >(); var sut = Create <string, string>(); items.ForEach(sut.Add); // Pre-assert // Act var result = sut.Values; // Assert // TODO: swap out with To.Be.Equivalent.To() when the syntax is available in NExpect Assert.That(result, Is.EquivalentTo(items.Select(i => i.Value))); }
public void CopyTo_ShouldCopyKnownKeyValuePairs() { // Arrange var start = RandomValueGen.GetRandomInt(2, 4); var arraySize = RandomValueGen.GetRandomInt(10, 15); var items = RandomValueGen.GetRandomArray <KeyValuePair <string, string> >(2, 4); var target = new KeyValuePair <string, string> [arraySize]; var sut = Create <string, string>(); items.ForEach(sut.Add); // Pre-assert // Act sut.CopyTo(target, start); // Assert var defaultValue = default(KeyValuePair <string, string>); PyLike.Range(start).ForEach(i => Expect(target[i]).To.Equal(defaultValue)); PyLike.Range(start + items.Length, arraySize).ForEach( i => Expect(target[i]).To.Equal(defaultValue)); items.ForEach(i => Expect(target).To.Contain.Exactly(1).Equal.To(i)); }