public void Contains_ShouldReturnTrue() { // Arrange var have = RandomValueGen.GetRandom <KeyValuePair <string, string> >(); var missing = RandomValueGen.GetAnother(have); var sut = Create <string, string>(); sut.Add(have); // Pre-assert // Act var haveResult = sut.Contains(have); var missingResult = sut.Contains(missing); // Assert Expect(haveResult).To.Be.True(); Expect(missingResult).To.Be.True(); }
public void ContainsKey_ShouldReturnTrue() { // Arrange var haveKey = RandomValueGen.GetRandomString(); var missingKey = RandomValueGen.GetAnother(haveKey); var sut = Create <string, string>(); sut[haveKey] = RandomValueGen.GetRandomString(); // Pre-assert // Act var haveResult = sut.ContainsKey(haveKey); var missingResult = sut.ContainsKey(missingKey); // Assert Expect(haveResult).To.Be.True(); Expect(missingResult).To.Be.True(); }
public void Remove_GivenKey_ShouldPassThrough() { // Arrange var have = RandomValueGen.GetRandom <KeyValuePair <string, string> >(); var missing = RandomValueGen.GetAnother(have); var sut = Create <string, string>(); sut.Add(have); Expect(sut[have.Key]).Not.To.Be.Null(); // Pre-assert // Act var haveResult = sut.Remove(have.Key); var missingResult = sut.Remove(missing.Key); // Assert Expect(haveResult).To.Be.True(); Expect(missingResult).To.Be.False(); Expect(sut[have.Key]).To.Be.Null(); }
public void WithCustomMessage() { // Arrange var expected = RandomValueGen.GetRandomString(); var test = RandomValueGen.GetRandomString(); var nonMatch = RandomValueGen.GetAnother(test); // Pre-Assert // Act Assert.That(() => { Expect(test).To.Equal(nonMatch, expected); }, Throws.Exception.InstanceOf <UnmetExpectationException>() .With.Message.Contains(expected)); Assert.That(() => { Expect(test).To.Equal(nonMatch, () => expected); }, Throws.Exception.InstanceOf <UnmetExpectationException>() .With.Message.Contains(expected)); // Assert }
public void GetEnumerator_ShouldEnumerateOverDistinctKeyValuePairsWithPriority() { // Arrange var key1 = RandomValueGen.GetRandomString(); var key2 = RandomValueGen.GetAnother(key1); var key3 = RandomValueGen.GetAnother <string>(new[] { key1, key2 }); var expected1 = RandomValueGen.GetRandomString(); var expected2 = RandomValueGen.GetAnother(expected1); var expected3 = RandomValueGen.GetAnother <string>(new[] { expected1, expected2 }); var unexpected = RandomValueGen.GetAnother <string>(new[] { expected1, expected2, expected3 }); var sut = Create( new Dictionary <string, string>() { [key1] = expected1, [key2] = expected2 }, new Dictionary <string, string>() { [key1] = unexpected, [key3] = expected3 }); var collector = new List <KeyValuePair <string, string> >(); // Pre-assert // Act foreach (var kvp in sut) { collector.Add(kvp); } // Assert Expectations.Expect(collector.Count).To.Equal(3); Expectations.Expect(collector.Any(kvp => kvp.Key == key1 && kvp.Value == expected1)).To.Be.True(); Expectations.Expect(collector.Any(kvp => kvp.Key == key2 && kvp.Value == expected2)).To.Be.True(); Expectations.Expect(collector.Any(kvp => kvp.Key == key3 && kvp.Value == expected3)).To.Be.True(); }
public void GivenTwoDictionarisWhicCollide_ShouldReturnValueFromFirst() { // Arrange var key = RandomValueGen.GetRandomString(); var value1 = RandomValueGen.GetRandomString(); var value2 = RandomValueGen.GetAnother(value1); var dict1 = new Dictionary <string, string>() { [key] = value1 }; var dict2 = new Dictionary <string, string>() { [key] = value2 }; var sut = Create(dict1, dict2); // Pre-assert // Act var result = sut[key]; // Assert Expectations.Expect(result).To.Equal(value1); }
public void Keys_ShouldReturnAllDistinctKeys() { // Arrange var k1 = RandomValueGen.GetRandomString(); var k2 = RandomValueGen.GetAnother(k1); var sut = Create(new Dictionary <string, string>() { [k1] = RandomValueGen.GetRandomString(), [k2] = RandomValueGen.GetRandomString() }, new Dictionary <string, string>() { [k1] = RandomValueGen.GetRandomString() }); // Pre-assert // Act var result = sut.Keys; // Assert Expectations.Expect(result.Count).To.Equal(2); Expectations.Expect(result).To.Contain.Exactly(1).Equal.To(k1); Expectations.Expect(result).To.Contain.Exactly(1).Equal.To(k2); }