@@ -173,6 +173,43 @@ public void Test_MSSQL_FetchData_Dictionary_DataTypes_Check()
173
173
Assert . AreEqual ( "<root><element>XmlData</element></root>" , dataType . ReferenceData [ "Xml_Column" ] ) ;
174
174
}
175
175
176
+ [ TestMethod ]
177
+ [ TestCategory ( DB_TESTS ) , TestCategory ( MSSQL_TESTS ) ]
178
+ public void Test_MSSQL_FetchData_Dictionary_UnsupportedCommands ( )
179
+ {
180
+ var sqlStatements = new List < string >
181
+ {
182
+ Queries . MSSQLQueries . TestDB . DDL . Create_Table ,
183
+ Queries . MSSQLQueries . TestDB . DDL . Alter_Table ,
184
+ Queries . MSSQLQueries . TestDB . DDL . Comment_Table ,
185
+ Queries . MSSQLQueries . TestDB . DDL . Truncate_Table ,
186
+ Queries . MSSQLQueries . TestDB . DDL . Drop_Table ,
187
+
188
+ Queries . MSSQLQueries . TestDB . DML . InsertSql ,
189
+ Queries . MSSQLQueries . TestDB . DML . UpdateSql ,
190
+ Queries . MSSQLQueries . TestDB . DML . DeleteSql ,
191
+
192
+ Queries . MSSQLQueries . TestDB . DCL . GrantSql_Command_Table_User ,
193
+ Queries . MSSQLQueries . TestDB . DCL . RevokeSql_Command_Table_User
194
+ } ;
195
+
196
+ foreach ( var sqlStatement in sqlStatements )
197
+ {
198
+ try
199
+ {
200
+ var dbContext = new DBContext ( DB . MSSQL , MSSQLConnectionString ) ;
201
+ dbContext . FetchData ( sqlStatement ) ;
202
+ Assert . Fail ( "No Exception" ) ;
203
+ }
204
+ catch ( QueryDBException ex )
205
+ {
206
+ Assert . AreEqual ( "Only SELECT queries are supported here." , ex . Message ) ;
207
+ Assert . AreEqual ( "UnsupportedCommand" , ex . ErrorType ) ;
208
+ Assert . AreEqual ( "'FetchData' only supports SELECT queries that return result set." , ex . AdditionalInfo ) ;
209
+ }
210
+ }
211
+ }
212
+
176
213
#endregion
177
214
178
215
#region Fetch Data Async Tests - << Task<List<DataDictionary>> FetchDataAsync(string selectSql, bool upperCaseKeys = false) >>
@@ -316,6 +353,43 @@ public async Task Test_MSSQL_FetchDataAsync_Dictionary_DataTypes_Check()
316
353
Assert . AreEqual ( "<root><element>XmlData</element></root>" , dataType . ReferenceData [ "Xml_Column" ] ) ;
317
354
}
318
355
356
+ [ TestMethod ]
357
+ [ TestCategory ( DB_TESTS ) , TestCategory ( MSSQL_TESTS ) ]
358
+ public async Task Test_MSSQL_FetchDataAsync_Dictionary_UnsupportedCommands ( )
359
+ {
360
+ var sqlStatements = new List < string >
361
+ {
362
+ Queries . MSSQLQueries . TestDB . DDL . Create_Table ,
363
+ Queries . MSSQLQueries . TestDB . DDL . Alter_Table ,
364
+ Queries . MSSQLQueries . TestDB . DDL . Comment_Table ,
365
+ Queries . MSSQLQueries . TestDB . DDL . Truncate_Table ,
366
+ Queries . MSSQLQueries . TestDB . DDL . Drop_Table ,
367
+
368
+ Queries . MSSQLQueries . TestDB . DML . InsertSql ,
369
+ Queries . MSSQLQueries . TestDB . DML . UpdateSql ,
370
+ Queries . MSSQLQueries . TestDB . DML . DeleteSql ,
371
+
372
+ Queries . MSSQLQueries . TestDB . DCL . GrantSql_Command_Table_User ,
373
+ Queries . MSSQLQueries . TestDB . DCL . RevokeSql_Command_Table_User
374
+ } ;
375
+
376
+ foreach ( var sqlStatement in sqlStatements )
377
+ {
378
+ try
379
+ {
380
+ var dbContext = new DBContext ( DB . MSSQL , MSSQLConnectionString ) ;
381
+ await dbContext . FetchDataAsync ( sqlStatement ) ;
382
+ Assert . Fail ( "No Exception" ) ;
383
+ }
384
+ catch ( QueryDBException ex )
385
+ {
386
+ Assert . AreEqual ( "Only SELECT queries are supported here." , ex . Message ) ;
387
+ Assert . AreEqual ( "UnsupportedCommand" , ex . ErrorType ) ;
388
+ Assert . AreEqual ( "'FetchData' only supports SELECT queries that return result set." , ex . AdditionalInfo ) ;
389
+ }
390
+ }
391
+ }
392
+
319
393
#endregion
320
394
321
395
#region Fetch Data Tests - << List<T> FetchData<T>(string selectSql, bool strict = false) >>
@@ -453,6 +527,43 @@ public void Test_MSSQL_FetchData_Entity_Strict_Error_Check()
453
527
}
454
528
}
455
529
530
+ [ TestMethod ]
531
+ [ TestCategory ( DB_TESTS ) , TestCategory ( MSSQL_TESTS ) ]
532
+ public void Test_MSSQL_FetchData_Entity_UnsupportedCommands ( )
533
+ {
534
+ var sqlStatements = new List < string >
535
+ {
536
+ Queries . MSSQLQueries . TestDB . DDL . Create_Table ,
537
+ Queries . MSSQLQueries . TestDB . DDL . Alter_Table ,
538
+ Queries . MSSQLQueries . TestDB . DDL . Comment_Table ,
539
+ Queries . MSSQLQueries . TestDB . DDL . Truncate_Table ,
540
+ Queries . MSSQLQueries . TestDB . DDL . Drop_Table ,
541
+
542
+ Queries . MSSQLQueries . TestDB . DML . InsertSql ,
543
+ Queries . MSSQLQueries . TestDB . DML . UpdateSql ,
544
+ Queries . MSSQLQueries . TestDB . DML . DeleteSql ,
545
+
546
+ Queries . MSSQLQueries . TestDB . DCL . GrantSql_Command_Table_User ,
547
+ Queries . MSSQLQueries . TestDB . DCL . RevokeSql_Command_Table_User
548
+ } ;
549
+
550
+ foreach ( var sqlStatement in sqlStatements )
551
+ {
552
+ try
553
+ {
554
+ var dbContext = new DBContext ( DB . MSSQL , MSSQLConnectionString ) ;
555
+ dbContext . FetchData < Entities . MSSQL . Orders > ( sqlStatement ) ;
556
+ Assert . Fail ( "No Exception" ) ;
557
+ }
558
+ catch ( QueryDBException ex )
559
+ {
560
+ Assert . AreEqual ( "Only SELECT queries are supported here." , ex . Message ) ;
561
+ Assert . AreEqual ( "UnsupportedCommand" , ex . ErrorType ) ;
562
+ Assert . AreEqual ( "'FetchData' only supports SELECT queries that return result set." , ex . AdditionalInfo ) ;
563
+ }
564
+ }
565
+ }
566
+
456
567
#endregion
457
568
458
569
#region Fetch Data Async Tests - << Task<List<T>> FetchDataAsync<T>(string selectSql, bool strict = false) >>
@@ -590,6 +701,43 @@ public async Task Test_MSSQL_FetchDataAsync_Entity_Strict_Error_Check()
590
701
}
591
702
}
592
703
704
+ [ TestMethod ]
705
+ [ TestCategory ( DB_TESTS ) , TestCategory ( MSSQL_TESTS ) ]
706
+ public async Task Test_MSSQL_FetchDataAsync_Entity_UnsupportedCommands ( )
707
+ {
708
+ var sqlStatements = new List < string >
709
+ {
710
+ Queries . MSSQLQueries . TestDB . DDL . Create_Table ,
711
+ Queries . MSSQLQueries . TestDB . DDL . Alter_Table ,
712
+ Queries . MSSQLQueries . TestDB . DDL . Comment_Table ,
713
+ Queries . MSSQLQueries . TestDB . DDL . Truncate_Table ,
714
+ Queries . MSSQLQueries . TestDB . DDL . Drop_Table ,
715
+
716
+ Queries . MSSQLQueries . TestDB . DML . InsertSql ,
717
+ Queries . MSSQLQueries . TestDB . DML . UpdateSql ,
718
+ Queries . MSSQLQueries . TestDB . DML . DeleteSql ,
719
+
720
+ Queries . MSSQLQueries . TestDB . DCL . GrantSql_Command_Table_User ,
721
+ Queries . MSSQLQueries . TestDB . DCL . RevokeSql_Command_Table_User
722
+ } ;
723
+
724
+ foreach ( var sqlStatement in sqlStatements )
725
+ {
726
+ try
727
+ {
728
+ var dbContext = new DBContext ( DB . MSSQL , MSSQLConnectionString ) ;
729
+ await dbContext . FetchDataAsync < Entities . MSSQL . Orders > ( sqlStatement ) ;
730
+ Assert . Fail ( "No Exception" ) ;
731
+ }
732
+ catch ( QueryDBException ex )
733
+ {
734
+ Assert . AreEqual ( "Only SELECT queries are supported here." , ex . Message ) ;
735
+ Assert . AreEqual ( "UnsupportedCommand" , ex . ErrorType ) ;
736
+ Assert . AreEqual ( "'FetchData' only supports SELECT queries that return result set." , ex . AdditionalInfo ) ;
737
+ }
738
+ }
739
+ }
740
+
593
741
#endregion
594
742
595
743
#region Execute Scalar Tests - << string ExecuteScalar(string sqlStatement) >>
0 commit comments