7
7
using System . Linq . Expressions ;
8
8
using System . Text ;
9
9
using Tests . FakeDomain ;
10
+ using Tests . FakeDomain . Models ;
10
11
11
12
namespace Tests
12
13
{
@@ -32,6 +33,25 @@ public void SingleInclude_LoadsChildren()
32
33
}
33
34
}
34
35
36
+ [ TestMethod ]
37
+ public void SingleInclude_LoadsChildren_BlogPost ( )
38
+ {
39
+ SetupSmallTestSet ( ) ;
40
+ using ( var db = Context . Sql ( ) )
41
+ {
42
+ var result = db . BlogPosts . IncludeEFU ( db , x => x . Comments ) . ToList ( ) ;
43
+ var bp1 = result . First ( x => x . Title == "BP1" ) ;
44
+ var bp2 = result . First ( x => x . Title == "BP2" ) ;
45
+ var bp3 = result . First ( x => x . Title == "BP3" ) ;
46
+
47
+ Assert . AreEqual ( 1 , bp1 . Comments . Count ) ;
48
+ Assert . AreEqual ( "C1" , bp1 . Comments . First ( ) . Text ) ;
49
+ Assert . AreEqual ( 2 , bp2 . Comments . Count ) ;
50
+ Assert . AreEqual ( "C2" , bp2 . Comments . First ( ) . Text ) ;
51
+ Assert . AreEqual ( 3 , bp3 . Comments . Count ) ;
52
+ }
53
+ }
54
+
35
55
[ TestMethod ]
36
56
public void SingleInclude_SortedParent_LoadsChildren ( )
37
57
{
@@ -526,6 +546,30 @@ private static void CreateSmallTestSet(Context db)
526
546
}
527
547
} ) ;
528
548
549
+ var blogPost1 = BlogPost . Create ( "BP1" ) ;
550
+ blogPost1 . Comments = new List < Comment > ( )
551
+ {
552
+ new Comment ( ) { Text = "C1" }
553
+ } ;
554
+ db . BlogPosts . Add ( blogPost1 ) ;
555
+
556
+ var blogPost2 = BlogPost . Create ( "BP2" ) ;
557
+ blogPost2 . Comments = new List < Comment > ( )
558
+ {
559
+ new Comment ( ) { Text = "C2" } ,
560
+ new Comment ( ) { Text = "C3" }
561
+ } ;
562
+ db . BlogPosts . Add ( blogPost2 ) ;
563
+
564
+ var blogPost3 = BlogPost . Create ( "BP3" ) ;
565
+ blogPost3 . Comments = new List < Comment > ( )
566
+ {
567
+ new Comment ( ) { Text = "C4" } ,
568
+ new Comment ( ) { Text = "C5" } ,
569
+ new Comment ( ) { Text = "C6" }
570
+ } ;
571
+ db . BlogPosts . Add ( blogPost3 ) ;
572
+
529
573
db . SaveChanges ( ) ;
530
574
}
531
575
}
0 commit comments