Skip to content

Commit c3822bd

Browse files
iss-581: test coverage
1 parent bf4e3c2 commit c3822bd

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

QueryBuilder.Tests/SelectTests.cs

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -903,5 +903,33 @@ public void SelectWithFilter()
903903
Assert.Equal("SELECT [Title], SUM(CASE WHEN [Published_Month] = 'Jan' THEN [ViewCount] END) AS [Published_Jan], SUM(CASE WHEN [Published_Month] = 'Feb' THEN [ViewCount] END) AS [Published_Feb] FROM [Posts]", sqlServer.ToString());
904904
}
905905

906+
[Fact]
907+
public void SelectWithExists()
908+
{
909+
var q = new Query("Posts").WhereExists(
910+
new Query("Comments").WhereColumns("Comments.PostId", "=", "Posts.Id")
911+
);
912+
913+
var sqlServer = Compilers.CompileFor(EngineCodes.SqlServer, q);
914+
Assert.Equal("SELECT * FROM [Posts] WHERE EXISTS (SELECT 1 FROM [Comments] WHERE [Comments].[PostId] = [Posts].[Id])", sqlServer.ToString());
915+
}
916+
917+
[Fact]
918+
public void SelectWithExists_OmitSelectIsFalse()
919+
{
920+
var q = new Query("Posts").WhereExists(
921+
new Query("Comments").Select("Id").WhereColumns("Comments.PostId", "=", "Posts.Id")
922+
);
923+
924+
925+
var compiler = new SqlServerCompiler
926+
{
927+
OmitSelectInsideExists = false,
928+
};
929+
930+
var sqlServer = compiler.Compile(q).ToString();
931+
Assert.Equal("SELECT * FROM [Posts] WHERE EXISTS (SELECT [Id] FROM [Comments] WHERE [Comments].[PostId] = [Posts].[Id])", sqlServer.ToString());
932+
}
933+
906934
}
907935
}

0 commit comments

Comments
 (0)