public void ExecuteNullSpecimenThrows() { var sut = new DictionaryFiller(); var dummyContext = new DelegatingSpecimenContext(); Assert.Throws<ArgumentNullException>(() => sut.Execute(null, dummyContext)); }
public void ExecuteNullContextThrows() { var sut = new DictionaryFiller(); var dummyDictionary = new Dictionary<object, object>(); Assert.Throws<ArgumentNullException>(() => sut.Execute(dummyDictionary, null)); }
public void SutIsSpecimenCommand() { var sut = new DictionaryFiller(); Assert.IsAssignableFrom<ISpecimenCommand>(sut); }
public void ExecuteFillsDictionary() { // Fixture setup var dictionary = new Dictionary<int, string>(); var expectedRequest = new MultipleRequest(typeof(KeyValuePair<int, string>)); var expectedResult = Enumerable.Range(1, 3).Select(i => new KeyValuePair<int, string>(i, i.ToString())); var context = new DelegatingSpecimenContext { OnResolve = r => expectedRequest.Equals(r) ? (object)expectedResult : new NoSpecimen(r) }; var sut = new DictionaryFiller(); // Exercise system sut.Execute(dictionary, context); // Verify outcome Assert.True(expectedResult.SequenceEqual(dictionary)); // Teardown }
public void ExecuteNonDictionaryThrows(object specimen) { // Fixture setup var sut = new DictionaryFiller(); var dummyContext = new DelegatingSpecimenContext(); // Exercise system and verify outcome Assert.Throws<ArgumentException>(() => sut.Execute(specimen, dummyContext)); // Teardown }
public void DoesNotThrowWithDuplicateEntries() { // Fixture setup var dictionary = new Dictionary<int, string>(); var request = new MultipleRequest(typeof(KeyValuePair<int, string>)); var sequence = Enumerable.Repeat(0, 3).Select(i => new KeyValuePair<int, string>(i, i.ToString())); var context = new DelegatingSpecimenContext { OnResolve = r => request.Equals(r) ? (object)sequence : new NoSpecimen(r) }; var sut = new DictionaryFiller(); // Exercise system & Verify outcome Assert.DoesNotThrow(() => sut.Execute(dictionary, context)); // Teardown }