public ValueTask <bool> IsMetAsync() { var isMet = true; if (Conditions.HasFlag(SqlServerCondition.SupportsHiddenColumns)) { isMet &= TestEnvironment.IsHiddenColumnsSupported; } if (Conditions.HasFlag(SqlServerCondition.SupportsMemoryOptimized)) { isMet &= TestEnvironment.IsMemoryOptimizedTablesSupported; } if (Conditions.HasFlag(SqlServerCondition.IsSqlAzure)) { isMet &= TestEnvironment.IsSqlAzure; } if (Conditions.HasFlag(SqlServerCondition.IsNotSqlAzure)) { isMet &= !TestEnvironment.IsSqlAzure; } if (Conditions.HasFlag(SqlServerCondition.SupportsAttach)) { var defaultConnection = new SqlConnectionStringBuilder(TestEnvironment.DefaultConnection); isMet &= defaultConnection.DataSource.Contains("(localdb)", StringComparison.OrdinalIgnoreCase) || defaultConnection.UserInstance; } if (Conditions.HasFlag(SqlServerCondition.IsNotCI)) { isMet &= !TestEnvironment.IsCI; } if (Conditions.HasFlag(SqlServerCondition.SupportsFullTextSearch)) { isMet &= TestEnvironment.IsFullTextSearchSupported; } if (Conditions.HasFlag(SqlServerCondition.SupportsOnlineIndexes)) { isMet &= TestEnvironment.IsOnlineIndexingSupported; } if (Conditions.HasFlag(SqlServerCondition.SupportsTemporalTablesCascadeDelete)) { isMet &= TestEnvironment.IsTemporalTablesCascadeDeleteSupported; } if (Conditions.HasFlag(SqlServerCondition.SupportsUtf8)) { isMet &= TestEnvironment.IsUtf8Supported; } return(new ValueTask <bool>(isMet)); }
public ValueTask <bool> IsMetAsync() { var isMet = true; if (Conditions.HasFlag(SqlServerCondition.SupportsSequences)) { isMet &= TestEnvironment.GetFlag(nameof(SqlServerCondition.SupportsSequences)) ?? true; } if (Conditions.HasFlag(SqlServerCondition.SupportsOffset)) { isMet &= TestEnvironment.GetFlag(nameof(SqlServerCondition.SupportsOffset)) ?? true; } if (Conditions.HasFlag(SqlServerCondition.SupportsHiddenColumns)) { isMet &= TestEnvironment.GetFlag(nameof(SqlServerCondition.SupportsHiddenColumns)) ?? false; } if (Conditions.HasFlag(SqlServerCondition.SupportsMemoryOptimized)) { isMet &= TestEnvironment.GetFlag(nameof(SqlServerCondition.SupportsMemoryOptimized)) ?? false; } if (Conditions.HasFlag(SqlServerCondition.IsSqlAzure)) { isMet &= TestEnvironment.IsSqlAzure; } if (Conditions.HasFlag(SqlServerCondition.IsNotSqlAzure)) { isMet &= !TestEnvironment.IsSqlAzure; } if (Conditions.HasFlag(SqlServerCondition.SupportsAttach)) { var defaultConnection = new SqlConnectionStringBuilder(TestEnvironment.DefaultConnection); isMet &= defaultConnection.DataSource.Contains("(localdb)") || defaultConnection.UserInstance; } if (Conditions.HasFlag(SqlServerCondition.IsNotCI)) { isMet &= !TestEnvironment.IsCI; } if (Conditions.HasFlag(SqlServerCondition.SupportsFullTextSearch)) { isMet &= TestEnvironment.IsFullTestSearchSupported; } return(new ValueTask <bool>(isMet)); }