@@ -240,6 +240,16 @@ func TestOnErrorCommand(t *testing.T) {
240240 err = runSqlCmd (t , s , []string {":ONERROR exit" , "printtgit N'message'" , "SELECT @@versionn" , "GO" })
241241 assert .NoError (t , err , "runSqlCmd" )
242242 assert .Equal (t , 1 , s .Exitcode , "ExitCode" )
243+ // -b sets ExitOnError true
244+ s .Connect .ExitOnError = true
245+ err = runSqlCmd (t , s , []string {":ONERROR ignore" , "printtgit N'message'" , "SELECT @@versionn" , "GO" })
246+ // when ignore is set along with -b command , ignore takes precedence and resets ExitOnError
247+ assert .Equal (t , false , s .Connect .ExitOnError , "ExitOnError" )
248+ assert .NoError (t , err , "runSqlCmd" )
249+ // checking ExitonError with Exit option
250+ err = runSqlCmd (t , s , []string {":ONERROR exit" , "printtgit N'message'" , "SELECT @@versionn" , "GO" })
251+ assert .Equal (t , true , s .Connect .ExitOnError , "ExitOnError" )
252+ assert .NoError (t , err , "runSqlCmd" )
243253}
244254func TestResolveArgumentVariables (t * testing.T ) {
245255 type argTest struct {
0 commit comments