diff options
| author | crupest <crupest@outlook.com> | 2024-11-11 01:12:29 +0800 | 
|---|---|---|
| committer | Yuqian Yang <crupest@crupest.life> | 2024-12-19 21:42:01 +0800 | 
| commit | f9aa02ec1a4c24e80a206857d4f68198bb027bb4 (patch) | |
| tree | 5994f0a62733b13f9f330e3515260ae20dc4a0bd /dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/TableInfoTest.cs | |
| parent | 7b4d49e4bbdff6ddf1f8f7e937130e700024d5e9 (diff) | |
| download | crupest-f9aa02ec1a4c24e80a206857d4f68198bb027bb4.tar.gz crupest-f9aa02ec1a4c24e80a206857d4f68198bb027bb4.tar.bz2 crupest-f9aa02ec1a4c24e80a206857d4f68198bb027bb4.zip | |
HALF WORK: 2024.12.19
Re-organize file structure.
Diffstat (limited to 'dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/TableInfoTest.cs')
| -rw-r--r-- | dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/TableInfoTest.cs | 35 | 
1 files changed, 35 insertions, 0 deletions
| diff --git a/dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/TableInfoTest.cs b/dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/TableInfoTest.cs new file mode 100644 index 0000000..b0aa702 --- /dev/null +++ b/dropped/docker/crupest-api/CrupestApi/CrupestApi.Commons.Tests/Crud/TableInfoTest.cs @@ -0,0 +1,35 @@ +using Microsoft.Extensions.Logging.Abstractions; + +namespace CrupestApi.Commons.Crud.Tests; + +public class TableInfoTest +{ +    private static TableInfoFactory TableInfoFactory = new TableInfoFactory(new ColumnTypeProvider(), NullLoggerFactory.Instance); + +    private TableInfo _tableInfo; + +    public TableInfoTest() +    { +        _tableInfo = TableInfoFactory.Get(typeof(TestEntity)); +    } + +    [Fact] +    public void TestColumnCount() +    { +        Assert.Equal(5, _tableInfo.Columns.Count); +        Assert.Equal(4, _tableInfo.PropertyColumns.Count); +        Assert.Equal(4, _tableInfo.ColumnProperties.Count); +        Assert.Equal(1, _tableInfo.NonColumnProperties.Count); +    } + +    [Fact] +    public void GenerateSelectSqlTest() +    { +        var (sql, parameters) = _tableInfo.GenerateSelectSql(null, WhereClause.Create().Eq("Name", "Hello")); +        var parameterName = parameters.First().Name; + +        // TODO: Is there a way to auto detect parameters? +        SqlCompareHelper.SqlEqual($"SELECT * FROM TestEntity WHERE (Name = @{parameterName})", sql); +        Assert.Equal("Hello", parameters.Get<string>(parameterName)); +    } +} | 
