@@ -7,18 +7,21 @@ namespace CosmoSQLClient.MsSql.Tests;
77public class MsSqlIntegrationTests : IAsyncLifetime
88{
99 private static readonly string ? EnvConn = Environment . GetEnvironmentVariable ( "MSSQL_TEST_CONNECTION" ) ;
10- private const string DefaultConn = "" ;
10+ private static readonly bool IsCi = ! string . IsNullOrEmpty ( Environment . GetEnvironmentVariable ( "GITHUB_ACTIONS" ) ) ;
1111 private static bool ? _shouldSkip ;
1212
1313 private static bool ShouldSkip {
1414 get {
1515 if ( _shouldSkip . HasValue ) return _shouldSkip . Value ;
1616 if ( string . IsNullOrEmpty ( EnvConn ) ) { _shouldSkip = true ; return true ; }
17- if ( EnvConn ! . Contains ( "localhost" ) || EnvConn . Contains ( "127.0.0.1" ) ) {
17+ if ( IsCi && ( EnvConn . Contains ( "localhost" ) || EnvConn . Contains ( "127.0.0.1" ) || EnvConn . Contains ( "." ) ) ) {
18+ _shouldSkip = true ; return true ;
19+ }
20+ if ( EnvConn . Contains ( "localhost" ) || EnvConn . Contains ( "127.0.0.1" ) ) {
1821 try {
1922 using var tcp = new TcpClient ( ) ;
20- var connectTask = tcp . ConnectAsync ( "localhost " , 1433 ) ;
21- if ( ! connectTask . Wait ( 500 ) ) { _shouldSkip = true ; return true ; }
23+ var connectTask = tcp . ConnectAsync ( "127.0.0.1 " , 1433 ) ;
24+ if ( ! connectTask . Wait ( 200 ) ) { _shouldSkip = true ; return true ; }
2225 } catch { _shouldSkip = true ; return true ; }
2326 }
2427 _shouldSkip = false ;
@@ -27,14 +30,13 @@ private static bool ShouldSkip {
2730 }
2831
2932 private MsSqlConnection ? _conn ;
30- private static string ConnectionString => EnvConn ?? DefaultConn ;
33+ private static string ConnectionString => EnvConn ?? "" ;
3134 private const string TempTable = "##TestTable_DotNetty" ;
3235
3336 public async Task InitializeAsync ( )
3437 {
3538 if ( ShouldSkip ) return ;
3639 _conn = await MsSqlConnection . OpenAsync ( ConnectionString ) ;
37-
3840 await _conn . ExecuteAsync ( $ "IF OBJECT_ID('tempdb..{ TempTable } ') IS NOT NULL DROP TABLE { TempTable } ") ;
3941 await _conn . ExecuteAsync ( $ "CREATE TABLE { TempTable } (Id INT, Name NVARCHAR(100))") ;
4042 }
@@ -105,8 +107,6 @@ public async Task QueryJsonStreamAsync_SmallDataset_YieldsCorrectCount()
105107 $ "SELECT Id, Name FROM { TempTable } ORDER BY Id FOR JSON PATH") )
106108 {
107109 count ++ ;
108- Assert . True ( elem . TryGetProperty ( "Id" , out _ ) ) ;
109- Assert . True ( elem . TryGetProperty ( "Name" , out _ ) ) ;
110110 }
111111 Assert . Equal ( 20 , count ) ;
112112 }
0 commit comments