@@ -32,6 +32,25 @@ public async Task InsertAsync()
3232 Assert . True ( await accessor . ExistsAsync < UserModel > ( Condition . Equal ( nameof ( UserModel . UserId ) , model . UserId ) ) ) ;
3333 }
3434
35+ [ Fact ]
36+ public async Task InsertWithSequenceValueAsync ( )
37+ {
38+ if ( ! Global . IsTestingEnabled )
39+ return ;
40+
41+ var accessor = _database . Accessor ;
42+ var model = Model . Build < UserModel > ( model =>
43+ {
44+ model . UserId = 404 ;
45+ model . Name = $ "${ Zongsoft . Common . Randomizer . GenerateString ( ) } ";
46+ } ) ;
47+
48+ var count = await accessor . InsertAsync ( model ) ;
49+ Assert . Equal ( 1 , count ) ;
50+ Assert . Equal ( 404U , model . UserId ) ;
51+ Assert . True ( await accessor . ExistsAsync < UserModel > ( Condition . Equal ( nameof ( UserModel . UserId ) , model . UserId ) ) ) ;
52+ }
53+
3554 [ Fact ]
3655 public async Task InsertWithChildrenAsync ( )
3756 {
@@ -85,6 +104,31 @@ public async Task InsertWithChildrenAsync()
85104 Assert . Equal ( MemberType . Role , members [ 1 ] . MemberType ) ;
86105 }
87106
107+ [ Fact ]
108+ public async Task InsertManyWithSequenceValueAsync ( )
109+ {
110+ const int COUNT = 100 ;
111+ const int OFFSET = 5000 ;
112+
113+ if ( ! Global . IsTestingEnabled )
114+ return ;
115+
116+ var accessor = _database . Accessor ;
117+ var models = Model . Build < UserModel > ( COUNT , ( model , index ) =>
118+ {
119+ model . UserId = ( uint ) ( OFFSET + index ) ;
120+ model . Name = $ "${ Zongsoft . Common . Randomizer . GenerateString ( ) } _{ index } ";
121+ } ) . ToArray ( ) ;
122+
123+ var count = await accessor . InsertManyAsync ( models ) ;
124+ Assert . Equal ( COUNT , count ) ;
125+ for ( int i = 0 ; i < models . Length ; i ++ )
126+ Assert . Equal ( ( uint ) ( OFFSET + i ) , models [ i ] . UserId ) ;
127+
128+ count = await accessor . CountAsync < UserModel > ( Condition . In ( nameof ( UserModel . UserId ) , models . Select ( model => model . UserId ) ) ) ;
129+ Assert . Equal ( COUNT , count ) ;
130+ }
131+
88132 [ Fact ]
89133 public async Task InsertManyAsync ( )
90134 {
@@ -133,7 +177,7 @@ public async Task InsertManyWithChildrenAsync()
133177 ] ;
134178 } ) . ToArray ( ) ;
135179
136- var count = await accessor . InsertManyAsync ( models , $ "*,{ nameof ( RoleModel . Children ) } {{*}}", DataInsertOptions . SuppressSequence ( ) ) ;
180+ var count = await accessor . InsertManyAsync ( models , $ "*,{ nameof ( RoleModel . Children ) } {{*}}") ;
137181 Assert . Equal ( 3 * COUNT , count ) ;
138182
139183 for ( int i = 0 ; i < models . Length ; i ++ )
0 commit comments