public void TestThatCreateInsertCommandReturnsSqlCommandForInsert(bool hasDescription) { Guid identifier = Guid.NewGuid(); Guid householdIdentifier = Guid.NewGuid(); IHousehold householdMock = DomainObjectMockBuilder.BuildHouseholdMock(householdIdentifier); int sortOrder = GetLegalSortOrder(); Guid storageTypeIdentifier = Guid.NewGuid(); IStorageType storageTypeMock = DomainObjectMockBuilder.BuildStorageTypeMock(storageTypeIdentifier); int temperature = GetLegalTemperature(storageTypeMock.TemperatureRange); DateTime creationTime = DateTime.Now; string description = hasDescription ? _fixture.Create <string>() : null; IStorageProxy sut = CreateSut(identifier, householdMock, sortOrder, storageTypeMock, temperature, creationTime, description); Assert.That(sut, Is.Not.Null); // ReSharper disable StringLiteralTypo new DbCommandTestBuilder("INSERT INTO Storages (StorageIdentifier,HouseholdIdentifier,SortOrder,StorageTypeIdentifier,Descr,Temperature,CreationTime) VALUES(@storageIdentifier,@householdIdentifier,@sortOrder,@storageTypeIdentifier,@descr,@temperature,@creationTime)") // ReSharper restore StringLiteralTypo .AddCharDataParameter("@storageIdentifier", identifier) .AddCharDataParameter("@householdIdentifier", householdIdentifier) .AddTinyIntDataParameter("@sortOrder", sortOrder, 4) .AddCharDataParameter("@storageTypeIdentifier", storageTypeIdentifier) // ReSharper disable StringLiteralTypo .AddVarCharDataParameter("@descr", description, 2048, true) // ReSharper restore StringLiteralTypo .AddTinyIntDataParameter("@temperature", temperature, 4) .AddDateTimeDataParameter("@creationTime", creationTime.ToUniversalTime()) .Build() .Run(sut.CreateInsertCommand()); }