/
krasninja
/
querycat
Обзор
Документация
Войти
/
krasninja
/
querycat
Код
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/QueryCat.UnitTests/Relational/ClassBuilderTests.cs
48 строк
1 KB
Ivan Kozhin
Introduce RowsOutputExtensions
28 дек 2023, 08:34
28 дек 2023, 08:34
e396399
Код
Авторство
О чём код?
using Xunit; using QueryCat.Backend.Core.Fetch; using QueryCat.Backend.Core.Types; using QueryCat.Backend.Relational; namespace QueryCat.UnitTests.Relational; /// <summary> /// Tests for <see cref="ClassRowsFrameBuilder{T}" />. /// </summary> public class ClassBuilderTests { private class User { public int Id { get; } public string Name { get; } public User(int id, string name) { Id = id; Name = name; } } [Fact] public void Build_UserClass_CorrectRowsFrame() { // Arrange. var builder = new ClassRowsFrameBuilder<User>(); builder.AddProperty("Id", u => u.Id); builder.AddProperty(u => u.Name); var users = new List<User> { new(10, "Ivan"), new(20, "Marina") }; // Act. var frame = builder.BuildRowsFrame(); frame.AddRows(users); // Assert. Assert.Equal(2, frame.Columns.Length); Assert.Equal(2, frame.TotalRows); Assert.Equal(DataType.Integer, frame.Columns[0].DataType); } }