public void TestThatDeltagereGetAppointmentUsersWhenMapDataHasBeenCalledAndMapRelationsHasNotBeenCalled() { IAftaleProxy sut = CreateSut(); Assert.That(sut, Is.Not.Null); int systemNo = _fixture.Create <int>(); int calId = _fixture.Create <int>(); MySqlDataReader dataReader = CreateMySqlDataReader(systemNo, calId, subject: _fixture.Create <string>()); ISystemProxy systemProxyMock = MockRepository.GenerateMock <ISystemProxy>(); systemProxyMock.Stub(m => m.Nummer) .Return(systemNo) .Repeat.Any(); IEnumerable <BrugeraftaleProxy> appointmentUserCollection = _fixture.CreateMany <BrugeraftaleProxy>(_random.Next(3, 7)).ToList(); IMySqlDataProvider dataProvider = CreateMySqlDataProvider(systemProxyMock, appointmentUserCollection); sut.MapData(dataReader, dataProvider); IEnumerable <IBrugeraftale> result = sut.Deltagere; // ReSharper disable PossibleMultipleEnumeration Assert.That(result, Is.Not.Null); Assert.That(result, Is.Not.Empty); Assert.That(result, Is.EqualTo(appointmentUserCollection)); // ReSharper restore PossibleMultipleEnumeration IDbCommandTestExecutor commandTester = new DbCommandTestBuilder("SELECT cm.SystemNo,cm.CalId,cm.UserId,cm.Properties,ca.Date,ca.FromTime,ca.ToTime,ca.Properties AS AppointmentProperties,ca.Subject,ca.Note,cu.UserName,cu.Name AS UserFullname,cu.Initials AS UserInitials,s.Title AS SystemTitle,s.Properties AS SystemProperties FROM Calmerge AS cm INNER JOIN Calapps AS ca ON ca.SystemNo=cm.SystemNo AND ca.CalId=cm.CalId INNER JOIN Calusers AS cu ON cu.SystemNo=cm.SystemNo AND cu.UserId=cm.UserId INNER JOIN Systems AS s ON s.SystemNo=cm.SystemNo WHERE cm.SystemNo=@systemNo AND cm.CalId=@calId") .AddSmallIntDataParameter("@systemNo", systemNo, 2) .AddIntDataParameter("@calId", calId, 8) .Build(); dataProvider.AssertWasCalled(m => m.GetCollection <BrugeraftaleProxy>(Arg <MySqlCommand> .Matches(cmd => commandTester.Run(cmd))), opt => opt.Repeat.Once()); }
/// <summary> /// Creates a mockup for the data provider which uses MySQL. /// </summary> /// <returns>Mockup for the data provider which uses MySQL.</returns> private IMySqlDataProvider CreateMySqlDataProvider(ISystemProxy systemProxy = null) { IMySqlDataProvider dataProviderMock = MockRepository.GenerateMock <IMySqlDataProvider>(); dataProviderMock.Stub(m => m.Create(Arg <ISystemProxy> .Is.TypeOf, Arg <MySqlDataReader> .Is.Anything, Arg <string[]> .Is.Anything)) .Return(systemProxy ?? MockRepository.GenerateMock <ISystemProxy>()) .Repeat.Any(); return(dataProviderMock); }
public void TestAtMapDataKasterArgumentNullExceptionHvisDataProviderErNull() { ISystemProxy sut = CreateSut(); Assert.That(sut, Is.Not.Null); ArgumentNullException result = Assert.Throws <ArgumentNullException>(() => sut.MapData(CreateMySqlDataReader(), null)); TestHelper.AssertArgumentNullExceptionIsValid(result, "dataProvider"); }
public void TestThatCreateThrowsArgumentNullExceptionWhenColumnNameCollectionIsNull() { ISystemProxy sut = CreateSut(); Assert.That(sut, Is.Not.Null); ArgumentNullException result = Assert.Throws <ArgumentNullException>(() => sut.Create(CreateMySqlDataReader(), CreateMySqlDataProvider(), null)); TestHelper.AssertArgumentNullExceptionIsValid(result, "columnNameCollection"); }
public void TestThatCreateThrowsArgumentNullExceptionWhenDataProviderIsNull() { ISystemProxy sut = CreateSut(); Assert.That(sut, Is.Not.Null); ArgumentNullException result = Assert.Throws <ArgumentNullException>(() => sut.Create(CreateMySqlDataReader(), null, "SystemNo", "Title", "Properties")); TestHelper.AssertArgumentNullExceptionIsValid(result, "dataProvider"); }
public void TestAtUniqueIdReturnererIdentifikation() { int nummer = _fixture.Create <int>(); ISystemProxy sut = CreateSut(nummer); Assert.That(sut, Is.Not.Null); Assert.That(sut.UniqueId, Is.Not.Null); Assert.That(sut.UniqueId, Is.Not.Null); Assert.That(sut.UniqueId, Is.EqualTo(Convert.ToString(nummer))); }
public void TestAtConstructorInitiererSystemProxy() { ISystemProxy sut = CreateSut(); Assert.That(sut, Is.Not.Null); Assert.That(sut.Nummer, Is.EqualTo(0)); Assert.That(sut.Titel, Is.Not.Null); Assert.That(sut.Titel, Is.Not.Empty); Assert.That(sut.Titel, Is.EqualTo(typeof(OSIntranet.Domain.Fælles.System).Name)); Assert.That(sut.Properties, Is.EqualTo(0)); Assert.That(sut.Kalender, Is.False); }
public void TestAtCreateDeleteCommandReturnererSqlCommand() { int nummer = _fixture.Create <int>(); ISystemProxy sut = CreateSut(nummer); Assert.That(sut, Is.Not.Null); new DbCommandTestBuilder("DELETE FROM Systems WHERE SystemNo=@systemNo") .AddSmallIntDataParameter("@systemNo", nummer, 2) .Build() .Run(sut.CreateDeleteCommand()); }
/// <summary> /// Creates a mockup for the data provider which uses MySQL. /// </summary> /// <returns>Mockup for the data provider which uses MySQL.</returns> private IMySqlDataProvider CreateMySqlDataProvider(ISystemProxy systemProxy = null, IEnumerable <BrugeraftaleProxy> appointmentUserCollection = null) { IMySqlDataProvider dataProviderMock = MockRepository.GenerateMock <IMySqlDataProvider>(); dataProviderMock.Stub(m => m.Clone()) .Return(dataProviderMock) .Repeat.Any(); dataProviderMock.Stub(m => m.Create(Arg <ISystemProxy> .Is.TypeOf, Arg <MySqlDataReader> .Is.Anything, Arg <string[]> .Is.Anything)) .Return(systemProxy ?? MockRepository.GenerateMock <ISystemProxy>()) .Repeat.Any(); dataProviderMock.Stub(m => m.GetCollection <BrugeraftaleProxy>(Arg <MySqlCommand> .Is.Anything)) .Return(appointmentUserCollection ?? _fixture.CreateMany <BrugeraftaleProxy>(_random.Next(3, 7)).ToList()) .Repeat.Any(); return(dataProviderMock); }
/// <summary> /// Creates a mockup for the data provider which uses MySQL. /// </summary> /// <returns>Mockup for the data provider which uses MySQL.</returns> private IMySqlDataProvider CreateMySqlDataProvider(ISystemProxy systemProxy = null, IAftaleProxy appointmentProxy = null, IBrugerProxy calenderUserProxy = null) { IMySqlDataProvider dataProviderMock = MockRepository.GenerateMock <IMySqlDataProvider>(); dataProviderMock.Stub(m => m.Create(Arg <ISystemProxy> .Is.TypeOf, Arg <MySqlDataReader> .Is.Anything, Arg <string[]> .Is.Anything)) .Return(systemProxy ?? MockRepository.GenerateMock <ISystemProxy>()) .Repeat.Any(); dataProviderMock.Stub(m => m.Create(Arg <IAftaleProxy> .Is.TypeOf, Arg <MySqlDataReader> .Is.Anything, Arg <string[]> .Is.Anything)) .Return(appointmentProxy ?? MockRepository.GenerateMock <IAftaleProxy>()) .Repeat.Any(); dataProviderMock.Stub(m => m.Create(Arg <IBrugerProxy> .Is.TypeOf, Arg <MySqlDataReader> .Is.Anything, Arg <string[]> .Is.Anything)) .Return(calenderUserProxy ?? MockRepository.GenerateMock <IBrugerProxy>()) .Repeat.Any(); return(dataProviderMock); }
public void TestAtCreateUpdateCommandReturnererSqlCommand() { int nummer = _fixture.Create <int>(); string title = _fixture.Create <string>(); int properties = _fixture.Create <int>(); ISystemProxy sut = CreateSut(nummer, title, properties); Assert.That(sut, Is.Not.Null); new DbCommandTestBuilder("UPDATE Systems SET Title=@title,Properties=@properties WHERE SystemNo=@systemNo") .AddSmallIntDataParameter("@systemNo", nummer, 2) .AddVarCharDataParameter("@title", title, 50) .AddSmallIntDataParameter("@properties", properties, 5) .Build() .Run(sut.CreateUpdateCommand()); }
public void TestAtCreateInsertCommandReturnererSqlCommand() { int nummer = _fixture.Create <int>(); string title = _fixture.Create <string>(); int properties = _fixture.Create <int>(); ISystemProxy sut = CreateSut(nummer, title, properties); Assert.That(sut, Is.Not.Null); new DbCommandTestBuilder("INSERT INTO Systems (SystemNo,Title,Properties) VALUES(@systemNo,@title,@properties)") .AddSmallIntDataParameter("@systemNo", nummer, 2) .AddVarCharDataParameter("@title", title, 50) .AddSmallIntDataParameter("@properties", properties, 5) .Build() .Run(sut.CreateInsertCommand()); }
/// <summary> /// Creates an instance of the calender user data proxy with values from the data reader. /// </summary> /// <param name="dataReader">Data reader from which column values should be read.</param> /// <param name="dataProvider">Data provider which supports the data reader.</param>> /// <param name="columnNameCollection">Collection of column names which should be read from the data reader.</param> /// <returns>Instance of the calender user proxy with values from the data reader.</returns> /// <exception cref="ArgumentException">Thrown when <paramref name="dataReader"/>, <paramref name="dataProvider"/> or <paramref name="columnNameCollection"/> is null.</exception> public virtual IBrugerProxy Create(MySqlDataReader dataReader, IDataProviderBase <MySqlDataReader, MySqlCommand> dataProvider, params string[] columnNameCollection) { ArgumentNullGuard.NotNull(dataReader, nameof(dataReader)) .NotNull(dataProvider, nameof(dataProvider)) .NotNull(columnNameCollection, nameof(columnNameCollection)); ISystemProxy system = dataProvider.Create(new SystemProxy(), dataReader, columnNameCollection[4], columnNameCollection[5], columnNameCollection[6]); return(new BrugerProxy( system, GetUserId(dataReader, columnNameCollection[0]), GetInitials(dataReader, columnNameCollection[1]), GetName(dataReader, columnNameCollection[2])) { UserName = GetUserName(dataReader, columnNameCollection[3]) }); }
/// <summary> /// Creates an instance of the appointment data proxy with values from the data reader. /// </summary> /// <param name="dataReader">Data reader from which column values should be read.</param> /// <param name="dataProvider">Data provider which supports the data reader.</param>> /// <param name="columnNameCollection">Collection of column names which should be read from the data reader.</param> /// <returns>Instance of the appointment proxy with values from the data reader.</returns> /// <exception cref="ArgumentException">Thrown when <paramref name="dataReader"/>, <paramref name="dataProvider"/> or <paramref name="columnNameCollection"/> is null.</exception> public virtual IAftaleProxy Create(MySqlDataReader dataReader, IDataProviderBase <MySqlDataReader, MySqlCommand> dataProvider, params string[] columnNameCollection) { ArgumentNullGuard.NotNull(dataReader, nameof(dataReader)) .NotNull(dataProvider, nameof(dataProvider)) .NotNull(columnNameCollection, nameof(columnNameCollection)); DateTime fromDate = GetAppointmentDate(dataReader, columnNameCollection[1]); ISystemProxy systemProxy = dataProvider.Create(new SystemProxy(), dataReader, columnNameCollection[7], columnNameCollection[8], columnNameCollection[9]); return(new AftaleProxy( systemProxy, GetAppointmentIdentifier(dataReader, columnNameCollection[0]), fromDate.Add(GetAppointmentTime(dataReader, columnNameCollection[2])), fromDate.Add(GetAppointmentTime(dataReader, columnNameCollection[3])), GetAppointmentSubject(dataReader, columnNameCollection[5]), GetAppointmentProperties(dataReader, columnNameCollection[4]), dataProvider) { Notat = GetAppointmentNote(dataReader, columnNameCollection[6]) }); }
public void TestThatCreateCreatesSystemProxy(bool hasProperties) { ISystemProxy sut = CreateSut(); Assert.That(sut, Is.Not.Null); int number = _fixture.Create <int>(); string title = _fixture.Create <string>(); int? properties = hasProperties ? _fixture.Create <int>() : (int?)null; MySqlDataReader dataReader = CreateMySqlDataReader(number, title, properties); ISystemProxy result = sut.Create(dataReader, CreateMySqlDataProvider(), "SystemNo", "Title", "Properties"); Assert.That(result, Is.Not.Null); Assert.That(result.Nummer, Is.EqualTo(number)); Assert.That(result.Titel, Is.EqualTo(title)); if (hasProperties) { Assert.That(result.Properties, Is.EqualTo(properties)); } else { Assert.That(result.Properties, Is.EqualTo(0)); } dataReader.AssertWasCalled(m => m.GetInt32(Arg <string> .Is.Equal("SystemNo")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.GetString(Arg <string> .Is.Equal("Title")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.GetOrdinal(Arg <string> .Is.Equal("Properties")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.IsDBNull(Arg <int> .Is.Equal(2)), opt => opt.Repeat.Once()); if (hasProperties) { dataReader.AssertWasCalled(m => m.GetInt32(Arg <string> .Is.Equal("Properties")), opt => opt.Repeat.Once()); } else { dataReader.AssertWasNotCalled(m => m.GetInt32(Arg <string> .Is.Equal("Properties"))); } }
public void TestThatCreateCreatesCalenderUserProxy(bool hasProperties, bool hasNote) { IAftaleProxy sut = CreateSut(); Assert.That(sut, Is.Not.Null); int systemNo = _fixture.Create <int>(); int calId = _fixture.Create <int>(); DateTime fromDateTime = DateTime.Today.AddDays(_random.Next(1, 30)).AddHours(_random.Next(8, 16)).AddMinutes(_random.Next(0, 3) * 15); TimeSpan duration = new TimeSpan(0, 0, _random.Next(1, 3) * 15, 0); int? properties = hasProperties ? _fixture.Create <int>() : (int?)null; string subject = _fixture.Create <string>(); string note = hasNote ? _fixture.Create <string>() : null; MySqlDataReader dataReader = CreateMySqlDataReader(systemNo, calId, fromDateTime, duration, properties, subject, note); ISystemProxy systemProxy = MockRepository.GenerateMock <ISystemProxy>(); IMySqlDataProvider dataProvider = CreateMySqlDataProvider(systemProxy); IAftaleProxy result = sut.Create(dataReader, dataProvider, "CalId", "Date", "FromTime", "ToTime", "Properties", "Subject", "Note", "SystemNo", "SystemTitle", "SystemProperties"); Assert.That(result.System, Is.Not.Null); Assert.That(result.System, Is.EqualTo(systemProxy)); Assert.That(result.Id, Is.EqualTo(calId)); Assert.That(result.FraTidspunkt, Is.EqualTo(fromDateTime)); Assert.That(result.TilTidspunkt, Is.EqualTo(fromDateTime.Add(duration))); if (hasProperties) { Assert.That(result.Properties, Is.EqualTo(properties)); } else { Assert.That(result.Properties, Is.EqualTo(0)); } Assert.That(result.Emne, Is.Not.Null); Assert.That(result.Emne, Is.Not.Empty); Assert.That(result.Emne, Is.EqualTo(subject)); if (hasNote) { Assert.That(result.Notat, Is.Not.Null); Assert.That(result.Notat, Is.Not.Empty); Assert.That(result.Notat, Is.EqualTo(note)); } else { Assert.That(result.Notat, Is.Null); } dataReader.AssertWasCalled(m => m.GetInt32(Arg <string> .Is.Equal("CalId")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.GetMySqlDateTime(Arg <string> .Is.Equal("Date")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.GetTimeSpan(Arg <string> .Is.Equal("FromTime")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.GetTimeSpan(Arg <string> .Is.Equal("ToTime")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.GetOrdinal(Arg <string> .Is.Equal("Properties")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.IsDBNull(Arg <int> .Is.Equal(5)), opt => opt.Repeat.Once()); if (hasProperties) { dataReader.AssertWasCalled(m => m.GetInt32(Arg <string> .Is.Equal("Properties")), opt => opt.Repeat.Once()); } else { dataReader.AssertWasNotCalled(m => m.GetInt32(Arg <string> .Is.Equal("Properties"))); } dataReader.AssertWasCalled(m => m.GetOrdinal(Arg <string> .Is.Equal("Subject")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.IsDBNull(Arg <int> .Is.Equal(6)), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.GetString(Arg <string> .Is.Equal("Subject")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.GetOrdinal(Arg <string> .Is.Equal("Note")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.IsDBNull(Arg <int> .Is.Equal(7)), opt => opt.Repeat.Once()); if (hasNote) { dataReader.AssertWasCalled(m => m.GetString(Arg <string> .Is.Equal("Note")), opt => opt.Repeat.Once()); } else { dataReader.AssertWasNotCalled(m => m.GetString(Arg <string> .Is.Equal("Note"))); } 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] == "SystemTitle" && e[2] == "SystemProperties")), opt => opt.Repeat.Once()); dataProvider.AssertWasNotCalled(m => m.Clone()); }
public void TestThatCreateCreatesCalenderUserProxy(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); IBrugerProxy result = sut.Create(dataReader, dataProvider, "UserId", "Initials", "Name", "UserName", "SystemNo", "Title", "Properties"); Assert.That(result, Is.Not.Null); Assert.That(result.System, Is.Not.Null); Assert.That(result.System, Is.EqualTo(systemProxy)); Assert.That(result.Id, Is.EqualTo(userId)); if (hasUserName) { Assert.That(result.UserName, Is.Not.Null); Assert.That(result.UserName, Is.Not.Empty); Assert.That(result.UserName, Is.EqualTo(userName)); } else { Assert.That(result.UserName, Is.Null); } Assert.That(result.Navn, Is.Not.Null); Assert.That(result.Navn, Is.Not.Empty); Assert.That(result.Navn, Is.EqualTo(name)); Assert.That(result.Initialer, Is.Not.Null); Assert.That(result.Initialer, Is.Not.Empty); Assert.That(result.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()); }
public SafeSystemProxy(ILogger logger, ISystemProxy proxy) { _logger = logger; _proxy = proxy; }
public SystemProxyNotification(ISystemProxy proxy, IDialogs dialogs) { _proxy = proxy; _dialogs = dialogs; }
public void TestAtMapDataMapperBrugeraftaleProxy(bool hasProperties) { IBrugeraftaleProxy sut = CreateSut(); Assert.That(sut, Is.Not.Null); int systemNo = _fixture.Create <int>(); int calId = _fixture.Create <int>(); int userId = _fixture.Create <int>(); int? properties = hasProperties ? _fixture.Create <int>() : (int?)null; MySqlDataReader dataReader = CreateMySqlDataReader(systemNo, calId, userId, properties); ISystemProxy systemProxy = MockRepository.GenerateMock <ISystemProxy>(); IAftaleProxy appointmentProxy = MockRepository.GenerateMock <IAftaleProxy>(); IBrugerProxy calenderUserProxy = MockRepository.GenerateMock <IBrugerProxy>(); IMySqlDataProvider dataProvider = CreateMySqlDataProvider(systemProxy, appointmentProxy, calenderUserProxy); sut.MapData(dataReader, dataProvider); Assert.That(sut.System, Is.Not.Null); Assert.That(sut.System, Is.EqualTo(systemProxy)); Assert.That(sut.Aftale, Is.Not.Null); Assert.That(sut.Aftale, Is.EqualTo(appointmentProxy)); Assert.That(sut.Bruger, Is.Not.Null); Assert.That(sut.Bruger, Is.EqualTo(calenderUserProxy)); if (hasProperties) { Assert.That(sut.Properties, Is.EqualTo(properties)); } else { Assert.That(sut.Properties, Is.EqualTo(0)); } dataReader.AssertWasCalled(m => m.GetOrdinal(Arg <string> .Is.Equal("Properties")), opt => opt.Repeat.Once()); dataReader.AssertWasCalled(m => m.IsDBNull(Arg <int> .Is.Equal(3)), opt => opt.Repeat.Once()); if (hasProperties) { dataReader.AssertWasCalled(m => m.GetInt32(Arg <string> .Is.Equal("Properties")), opt => opt.Repeat.Once()); } else { dataReader.AssertWasNotCalled(m => m.GetInt32(Arg <string> .Is.Equal("Properties"))); } 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] == "SystemTitle" && e[2] == "SystemProperties")), opt => opt.Repeat.Once()); dataProvider.AssertWasCalled(m => m.Create( Arg <IAftaleProxy> .Is.TypeOf, Arg <MySqlDataReader> .Is.Equal(dataReader), Arg <string[]> .Matches(e => e != null && e.Length == 10 && e[0] == "CalId" && e[1] == "Date" && e[2] == "FromTime" && e[3] == "ToTime" && e[4] == "AppointmentProperties" && e[5] == "Subject" && e[6] == "Note" && e[7] == "SystemNo" && e[8] == "SystemTitle" && e[9] == "SystemProperties")), opt => opt.Repeat.Once()); dataProvider.AssertWasCalled(m => m.Create( Arg <IBrugerProxy> .Is.TypeOf, Arg <MySqlDataReader> .Is.Equal(dataReader), Arg <string[]> .Matches(e => e != null && e.Length == 7 && e[0] == "UserId" && e[1] == "UserInitials" && e[2] == "UserFullname" && e[3] == "UserName" && e[4] == "SystemNo" && e[5] == "SystemTitle" && e[6] == "SystemProperties")), opt => opt.Repeat.Once()); }