Skip to content

Commit 3d222bf

Browse files
committed
[ksqlDB.RestApi.Client]: added FieldTypeBuilder pseudocolumn unit tests #96
1 parent 8ac70ec commit 3d222bf

File tree

1 file changed

+29
-1
lines changed

1 file changed

+29
-1
lines changed

Tests/ksqlDB.RestApi.Client.Tests/FluentAPI/FieldTypeBuilderTests.cs

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
1+
using System.Linq.Expressions;
12
using FluentAssertions;
23
using ksqlDb.RestApi.Client.FluentAPI.Builders;
4+
using ksqlDB.RestApi.Client.KSql.Query;
35
using ksqlDb.RestApi.Client.Metadata;
46
using ksqlDb.RestApi.Client.Tests.Models;
57
using NUnit.Framework;
8+
using Assert = Microsoft.VisualStudio.TestTools.UnitTesting.Assert;
69

710
namespace ksqlDb.RestApi.Client.Tests.FluentAPI
811
{
@@ -95,9 +98,15 @@ public void AsStruct()
9598
}
9699

97100
[Test]
98-
public void AsPseudoColumn()
101+
public void AsPseudoColumn_IsValid()
99102
{
100103
//Arrange
104+
Expression<Func<Record, long>> expression = c => c.RowTime;
105+
fieldMetadata = new()
106+
{
107+
MemberInfo = ((MemberExpression)expression.Body).Member
108+
};
109+
builder = new(fieldMetadata);
101110

102111
//Act
103112
var fieldTypeBuilder = builder.AsPseudoColumn();
@@ -107,6 +116,25 @@ public void AsPseudoColumn()
107116
fieldMetadata.IsPseudoColumn.Should().BeTrue();
108117
}
109118

119+
[Test]
120+
public void AsPseudoColumn_IsNotValid()
121+
{
122+
//Arrange
123+
Expression<Func<Tweet, double>> expression = c => c.Amount;
124+
fieldMetadata = new()
125+
{
126+
MemberInfo = ((MemberExpression)expression.Body).Member
127+
};
128+
builder = new(fieldMetadata);
129+
130+
//Act
131+
Assert.ThrowsException<InvalidOperationException>(() =>
132+
{
133+
//Act
134+
builder.AsPseudoColumn();
135+
});
136+
}
137+
110138
[Test]
111139
public void HasColumnName()
112140
{

0 commit comments

Comments
 (0)