Skip to content

Commit 9017d79

Browse files
committed
Add test
1 parent d3dfcc7 commit 9017d79

File tree

3 files changed

+25
-12
lines changed

3 files changed

+25
-12
lines changed

DuckDB.NET.Test/DuckDBManagedAppenderTests.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,8 +272,7 @@ public void TemporalValues()
272272
result.Select(tuple => tuple.Item4).Should().BeEquivalentTo(dates);
273273
result.Select(tuple => tuple.Item5).Should().BeEquivalentTo(dates);
274274
result.Select(tuple => tuple.Item6).Should().BeEquivalentTo(dates);
275-
result.Select(tuple => tuple.Item7).Should().BeEquivalentTo(dates.Select(time => time.ToDateTimeOffset(TimeSpan.FromHours(1))),
276-
options => options.ComparingByMembers<DateTimeOffset>().Including(offset => offset.Offset).Including(offset => offset.TimeOfDay));
275+
result.Select(tuple => tuple.Item7).Should().BeEquivalentTo(dates.Select(time => time.ToDateTimeOffset(TimeSpan.FromHours(1))));
277276
result.Select(tuple => tuple.Item8).Should().BeEquivalentTo(dates.Select(TimeOnly.FromDateTime));
278277
}
279278

DuckDB.NET.Test/ModuleInit.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
using DuckDB.NET.Test.Helpers;
2+
using FluentAssertions;
23
using System;
3-
using System.IO;
4-
using System.Reflection;
54
using System.Runtime.CompilerServices;
6-
using System.Runtime.InteropServices;
75

86
#nullable enable
97
namespace DuckDB.NET.Test;
@@ -13,5 +11,9 @@ public static class ModuleInit
1311
public static void Init()
1412
{
1513
NativeLibraryHelper.TryLoad();
14+
15+
AssertionOptions.AssertEquivalencyUsing(options => options.ComparingByMembers<DateTimeOffset>().Including(info =>
16+
info.Name == nameof(DateTimeOffset.Offset) ||
17+
info.Name == nameof(DateTimeOffset.TimeOfDay)));
1618
}
1719
}

DuckDB.NET.Test/Parameters/ListParameterTests.cs

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using DuckDB.NET.Data;
33
using DuckDB.NET.Native;
44
using FluentAssertions;
5+
using FluentAssertions.Common;
56
using System;
67
using System.Collections.Generic;
78
using System.Linq;
@@ -72,8 +73,7 @@ public void CanBindLongList()
7273
[Fact]
7374
public void CanBindHugeIntList()
7475
{
75-
TestInsertSelect("HugeInt",
76-
faker => BigInteger.Subtract(DuckDBHugeInt.HugeIntMaxValue, faker.Random.Int(min: 0)));
76+
TestInsertSelect("HugeInt", faker => BigInteger.Subtract(DuckDBHugeInt.HugeIntMaxValue, faker.Random.Int(min: 0)));
7777
}
7878

7979
[Fact]
@@ -130,11 +130,23 @@ public void CanBindDateTimeList()
130130
TestInsertSelect("Date", faker => faker.Date.Past().Date);
131131
}
132132

133-
//[Fact]
134-
//public void CanBindDateTimeOffsetList()
135-
//{
136-
// TestInsertSelect("TimeTZ", faker => faker.Date.PastOffset());
137-
//}
133+
[Fact]
134+
public void CanBindDateTimeOffsetList()
135+
{
136+
TestInsertSelect("TimeTZ", faker =>
137+
{
138+
var dateTime = faker.Date.Between(DateTime.Now.AddYears(-100), DateTime.Now.AddYears(100));
139+
140+
if (dateTime.Hour < 1)
141+
{
142+
dateTime = dateTime.AddHours(1);
143+
}
144+
145+
dateTime = dateTime.AddTicks(-dateTime.Ticks % 10);
146+
147+
return dateTime.ToDateTimeOffset(TimeSpan.FromHours(1));
148+
});
149+
}
138150

139151
[Fact]
140152
public void CanBindStringList()

0 commit comments

Comments
 (0)