public void TestAtMapDataKasterArgumentNullExceptionHvisDataProviderErNull() { IBrugerProxy sut = CreateSut(); Assert.That(sut, Is.Not.Null); ArgumentNullException result = Assert.Throws <ArgumentNullException>(() => sut.MapData(CreateMySqlDataReader(), null)); TestHelper.AssertArgumentNullExceptionIsValid(result, "dataProvider"); }
public void TestAtMapDataMapperBrugerProxy(bool hasUserName) { IBrugerProxy sut = CreateSut(); Assert.That(sut, Is.Not.Null); int systemNo = _fixture.Create <int>(); int userId = _fixture.Create <int>(); string userName = hasUserName ? _fixture.Create <string>() : null; string name = _fixture.Create <string>(); string initials = _fixture.Create <string>(); MySqlDataReader dataReader = CreateMySqlDataReader(systemNo, userId, userName, name, initials); ISystemProxy systemProxy = MockRepository.GenerateMock <ISystemProxy>(); IMySqlDataProvider dataProvider = CreateMySqlDataProvider(systemProxy); sut.MapData(dataReader, dataProvider); Assert.That(sut.System, Is.Not.Null); Assert.That(sut.System, Is.EqualTo(systemProxy)); Assert.That(sut.Id, Is.EqualTo(userId)); if (hasUserName) { Assert.That(sut.UserName, Is.Not.Null); Assert.That(sut.UserName, Is.Not.Empty); Assert.That(sut.UserName, Is.EqualTo(userName)); } else { Assert.That(sut.UserName, Is.Null); } Assert.That(sut.Navn, Is.Not.Null); Assert.That(sut.Navn, Is.Not.Empty); Assert.That(sut.Navn, Is.EqualTo(name)); Assert.That(sut.Initialer, Is.Not.Null); Assert.That(sut.Initialer, Is.Not.Empty); Assert.That(sut.Initialer, Is.EqualTo(initials)); dataReader.AssertWasCalled(m => m.GetInt32(Arg <string> .Is.Equal("UserId")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.GetOrdinal(Arg <string> .Is.Equal("UserName")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.IsDBNull(Arg <int> .Is.Equal(2)), opt => opt.Repeat.Once()); if (hasUserName) { dataReader.AssertWasCalled(m => m.GetString(Arg <string> .Is.Equal("UserName")), opt => opt.Repeat.Once()); } else { dataReader.AssertWasNotCalled(m => m.GetString(Arg <string> .Is.Equal("UserName"))); } dataReader.AssertWasCalled(m => m.GetString(Arg <string> .Is.Equal("Name")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.GetString(Arg <string> .Is.Equal("Initials")), opt => opt.Repeat.Once()); dataProvider.AssertWasCalled(m => m.Create( Arg <ISystemProxy> .Is.TypeOf, Arg <MySqlDataReader> .Is.Equal(dataReader), Arg <string[]> .Matches(e => e != null && e.Length == 3 && e[0] == "SystemNo" && e[1] == "Title" && e[2] == "Properties")), opt => opt.Repeat.Once()); }