Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
Dapper
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
tsai
Dapper
Commits
3684dc4d
Commit
3684dc4d
authored
Nov 26, 2015
by
Marc Gravell
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Extra tests for FirstOrDefault code
parent
86902061
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
55 additions
and
1 deletion
+55
-1
Tests.Async.cs
Dapper.Tests/Tests.Async.cs
+33
-1
Tests.cs
Dapper.Tests/Tests.cs
+22
-0
No files found.
Dapper.Tests/Tests.Async.cs
View file @
3684dc4d
...
@@ -363,6 +363,19 @@ public async Task TypeBasedViaTypeAsync()
...
@@ -363,6 +363,19 @@ public async Task TypeBasedViaTypeAsync()
b
.
IsEqualTo
(
"abc"
);
b
.
IsEqualTo
(
"abc"
);
}
}
[
Fact
]
public
async
Task
TypeBasedViaTypeAsyncFirstOrDefault
()
{
Type
type
=
GetSomeType
();
dynamic
actual
=
(
await
marsConnection
.
QueryFirstOrDefaultAsync
(
type
,
"select @A as [A], @B as [B]"
,
new
{
A
=
123
,
B
=
"abc"
}));
((
object
)
actual
).
GetType
().
IsEqualTo
(
type
);
int
a
=
actual
.
A
;
string
b
=
actual
.
B
;
a
.
IsEqualTo
(
123
);
b
.
IsEqualTo
(
"abc"
);
}
[
Fact
]
[
Fact
]
public
async
Task
Issue22_ExecuteScalarAsync
()
public
async
Task
Issue22_ExecuteScalarAsync
()
{
{
...
@@ -589,6 +602,25 @@ class AsyncFoo0 { public int Id { get; set; } }
...
@@ -589,6 +602,25 @@ class AsyncFoo0 { public int Id { get; set; } }
class
AsyncFoo1
{
public
int
Id
{
get
;
set
;
}
}
class
AsyncFoo1
{
public
int
Id
{
get
;
set
;
}
}
class
AsyncFoo2
{
public
int
Id
{
get
;
set
;
}
}
class
AsyncFoo2
{
public
int
Id
{
get
;
set
;
}
}
[
Fact
]
public
async
Task
TestSchemaChangedViaFirstOrDefaultAsync
()
{
await
connection
.
ExecuteAsync
(
"create table #dog(Age int, Name nvarchar(max)) insert #dog values(1, 'Alf')"
);
try
{
var
d
=
await
connection
.
QueryFirstOrDefaultAsync
<
Dog
>(
"select * from #dog"
);
d
.
Name
.
IsEqualTo
(
"Alf"
);
d
.
Age
.
IsEqualTo
(
1
);
connection
.
Execute
(
"alter table #dog drop column Name"
);
d
=
await
connection
.
QueryFirstOrDefaultAsync
<
Dog
>(
"select * from #dog"
);
d
.
Name
.
IsNull
();
d
.
Age
.
IsEqualTo
(
1
);
}
finally
{
await
connection
.
ExecuteAsync
(
"drop table #dog"
);
}
}
[
Fact
]
[
Fact
]
public
async
Task
TestMultiMapArbitraryMapsAsync
()
public
async
Task
TestMultiMapArbitraryMapsAsync
()
...
...
Dapper.Tests/Tests.cs
View file @
3684dc4d
...
@@ -258,6 +258,26 @@ public void TestSchemaChanged()
...
@@ -258,6 +258,26 @@ public void TestSchemaChanged()
}
}
}
}
[
Fact
]
public
void
TestSchemaChangedViaFirstOrDefault
()
{
connection
.
Execute
(
"create table #dog(Age int, Name nvarchar(max)) insert #dog values(1, 'Alf')"
);
try
{
var
d
=
connection
.
QueryFirstOrDefault
<
Dog
>(
"select * from #dog"
);
d
.
Name
.
IsEqualTo
(
"Alf"
);
d
.
Age
.
IsEqualTo
(
1
);
connection
.
Execute
(
"alter table #dog drop column Name"
);
d
=
connection
.
QueryFirstOrDefault
<
Dog
>(
"select * from #dog"
);
d
.
Name
.
IsNull
();
d
.
Age
.
IsEqualTo
(
1
);
}
finally
{
connection
.
Execute
(
"drop table #dog"
);
}
}
[
Fact
]
[
Fact
]
public
void
TestSchemaChangedMultiMap
()
public
void
TestSchemaChangedMultiMap
()
{
{
...
@@ -845,6 +865,8 @@ public void TestFastExpandoSupportsIDictionary()
...
@@ -845,6 +865,8 @@ public void TestFastExpandoSupportsIDictionary()
public
void
TestDapperSetsPrivates
()
public
void
TestDapperSetsPrivates
()
{
{
connection
.
Query
<
PrivateDan
>(
"select 'one' ShadowInDB"
).
First
().
Shadow
.
IsEqualTo
(
1
);
connection
.
Query
<
PrivateDan
>(
"select 'one' ShadowInDB"
).
First
().
Shadow
.
IsEqualTo
(
1
);
connection
.
QueryFirstOrDefault
<
PrivateDan
>(
"select 'one' ShadowInDB"
).
Shadow
.
IsEqualTo
(
1
);
}
}
class
PrivateDan
class
PrivateDan
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment