-
Notifications
You must be signed in to change notification settings - Fork 22
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Command Timeout is not being honored in PostgreSQL and MySQL #490
ToObjectStream #92
- Loading branch information
1 parent
38d5b56
commit ef30cde
Showing
42 changed files
with
2,914 additions
and
524 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
81 changes: 81 additions & 0 deletions
81
Tortuga.Chain/Shared/Tests/Materializers/ObjectStreamTests.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
using Tests.Models; | ||
|
||
namespace Tests.Materializers; | ||
|
||
[TestClass] | ||
public class ToObjectStreamTests : TestBase | ||
{ | ||
[DataTestMethod, BasicData(DataSourceGroup.Primary)] | ||
public void ToObjectStream(string dataSourceName, DataSourceType mode) | ||
{ | ||
var dataSource = DataSource(dataSourceName, mode); | ||
|
||
try | ||
{ | ||
var uniqueKey = Guid.NewGuid().ToString(); | ||
|
||
var empA1 = new Employee() { FirstName = "A", LastName = "1", Title = uniqueKey }; | ||
dataSource.Insert(EmployeeTableName, empA1).ToObject<Employee>().Execute(); | ||
|
||
var empA2 = new Employee() { FirstName = "B", LastName = "2", Title = uniqueKey }; | ||
dataSource.Insert(EmployeeTableName, empA2).ToObject<Employee>().Execute(); | ||
|
||
var empB1 = new Employee() { FirstName = "B", LastName = "1", Title = uniqueKey }; | ||
dataSource.Insert(EmployeeTableName, empB1).ToObject<Employee>().Execute(); | ||
|
||
var empB2 = new Employee() { FirstName = "B", LastName = "2", Title = uniqueKey }; | ||
dataSource.Insert(EmployeeTableName, empB2).ToObject<Employee>().Execute(); | ||
|
||
var empB3 = new Employee() { FirstName = "B", LastName = "3", Title = uniqueKey }; | ||
dataSource.Insert(EmployeeTableName, empB3).ToObject<Employee>().Execute(); | ||
|
||
using var objectStream = dataSource.From<Employee>(new { Title = uniqueKey }).ToObjectStream<Employee>().Execute(); | ||
foreach (var item in objectStream) | ||
{ | ||
Assert.AreEqual(uniqueKey, item.Title); | ||
} | ||
} | ||
finally | ||
{ | ||
Release(dataSource); | ||
} | ||
} | ||
|
||
#if NET6_0_OR_GREATER | ||
[DataTestMethod, BasicData(DataSourceGroup.Primary)] | ||
public async Task ToObjectStreamAsync(string dataSourceName, DataSourceType mode) | ||
{ | ||
var dataSource = DataSource(dataSourceName, mode); | ||
|
||
try | ||
{ | ||
var uniqueKey = Guid.NewGuid().ToString(); | ||
|
||
var empA1 = new Employee() { FirstName = "A", LastName = "1", Title = uniqueKey }; | ||
dataSource.Insert(EmployeeTableName, empA1).ToObject<Employee>().Execute(); | ||
|
||
var empA2 = new Employee() { FirstName = "B", LastName = "2", Title = uniqueKey }; | ||
dataSource.Insert(EmployeeTableName, empA2).ToObject<Employee>().Execute(); | ||
|
||
var empB1 = new Employee() { FirstName = "B", LastName = "1", Title = uniqueKey }; | ||
dataSource.Insert(EmployeeTableName, empB1).ToObject<Employee>().Execute(); | ||
|
||
var empB2 = new Employee() { FirstName = "B", LastName = "2", Title = uniqueKey }; | ||
dataSource.Insert(EmployeeTableName, empB2).ToObject<Employee>().Execute(); | ||
|
||
var empB3 = new Employee() { FirstName = "B", LastName = "3", Title = uniqueKey }; | ||
dataSource.Insert(EmployeeTableName, empB3).ToObject<Employee>().Execute(); | ||
|
||
await using var objectStream = await dataSource.From<Employee>(new { Title = uniqueKey }).ToObjectStream<Employee>().ExecuteAsync(); | ||
await foreach (var item in objectStream) | ||
{ | ||
Assert.AreEqual(uniqueKey, item.Title); | ||
} | ||
} | ||
finally | ||
{ | ||
Release(dataSource); | ||
} | ||
} | ||
#endif | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.