Ejemplo n.º 1
0
    public void Create_Throws_On_Wrong_DatabaseOperation(DatabaseOperation operation)
    {
        // Arrange
        var sut = new IdentityDatabaseCommandProviderMock(new[] { new PagedDatabaseEntityRetrieverSettingsProviderMock() });

        // Act
        sut.Invoking(x => x.Create(new TestEntityIdentity("A", "B"), operation))
        .Should().Throw <ArgumentOutOfRangeException>()
        .And.ParamName.Should().Be("operation");
    }
Ejemplo n.º 2
0
    public void Create_Throws_On_Unsupported_PagedDatabaseEntityRetrieverSettings()
    {
        // Arrange
        var sut = new IdentityDatabaseCommandProviderMock(new[] { new Mock <IPagedDatabaseEntityRetrieverSettingsProvider>().Object });

        // Act & Assert
        sut.Invoking(x => x.Create(new TestEntityIdentity("NOTIMPLEMENTED", "NOTIMPLEMENTED"), DatabaseOperation.Select))
        .Should().ThrowExactly <InvalidOperationException>()
        .WithMessage("Could not obtain paged database entity retriever settings for type [CrossCutting.Data.Core.Tests.TestFixtures.TestEntityIdentity]");
    }
Ejemplo n.º 3
0
    public void Create_Generates_Where_Statement_For_Both_Simple_Fields_And_Fields_With_Different_Name_In_Database()
    {
        // Arrange
        var sut = new IdentityDatabaseCommandProviderMock(new[] { new PagedDatabaseEntityRetrieverSettingsProviderMock() });

        // Act
        var actual = sut.Create(new TestEntityIdentity("A", "B"), DatabaseOperation.Select);

        // Assert
        actual.CommandText.Should().Be(@"SELECT A, B, C FROM Table WHERE [Field1] = @Field1 AND [Field2] = @Field2Alias");
    }