From 755f1a77e2e8db7f7ffed398bb6634cd975f9cc7 Mon Sep 17 00:00:00 2001 From: Bradley Grainger Date: Thu, 19 Oct 2023 19:03:22 -0700 Subject: [PATCH] Update xunit to 2.5.3. Update AdoNet.Specification.Tests to 2.2.0 Beta 2 to match. Fix xunit analyzer errors. --- global.json | 5 ++ .../Conformance.Tests.csproj | 8 +-- tests/IntegrationTests/CancelTests.cs | 14 +++-- tests/IntegrationTests/ConnectionPool.cs | 22 +++---- tests/IntegrationTests/DataTypes.cs | 50 ++++++++-------- .../IntegrationTests/IntegrationTests.csproj | 6 +- tests/IntegrationTests/QueryTests.cs | 16 ++--- tests/IntegrationTests/Transaction.cs | 60 +++++++++---------- .../IntegrationTests/TransactionScopeTests.cs | 2 + tests/IntegrationTests/UpdateTests.cs | 10 ++-- .../MySqlConnector.Tests.csproj | 6 +- 11 files changed, 104 insertions(+), 95 deletions(-) create mode 100644 global.json diff --git a/global.json b/global.json new file mode 100644 index 000000000..3e3cfd9ca --- /dev/null +++ b/global.json @@ -0,0 +1,5 @@ +{ + "sdk": { + "version": "7.0.402" + } +} diff --git a/tests/Conformance.Tests/Conformance.Tests.csproj b/tests/Conformance.Tests/Conformance.Tests.csproj index e04c1dc8e..bfba7909c 100644 --- a/tests/Conformance.Tests/Conformance.Tests.csproj +++ b/tests/Conformance.Tests/Conformance.Tests.csproj @@ -11,10 +11,10 @@ - - - - + + + + runtime; build; native; contentfiles; analyzers; buildtransitive all diff --git a/tests/IntegrationTests/CancelTests.cs b/tests/IntegrationTests/CancelTests.cs index e7fcdfc0a..6fbfbfb49 100644 --- a/tests/IntegrationTests/CancelTests.cs +++ b/tests/IntegrationTests/CancelTests.cs @@ -35,7 +35,9 @@ public void CancelCommand() TestUtilities.AssertExecuteScalarReturnsOneOrIsCanceled(cmd); Assert.InRange(stopwatch.ElapsedMilliseconds, 250, 2500); +#pragma warning disable xUnit1031 // Do not use blocking task operations in test method task.Wait(); // shouldn't throw +#pragma warning restore xUnit1031 // Do not use blocking task operations in test method } #if !MYSQL_DATA @@ -246,13 +248,13 @@ public async Task CancelCompletedCommand() create table cancel_completed_command ( id bigint unsigned, value varchar(45) -);").ConfigureAwait(false); +);").ConfigureAwait(true); using (var cmd = m_database.Connection.CreateCommand()) { cmd.CommandText = @"insert into cancel_completed_command (id, value) values (1, null);"; - using (await cmd.ExecuteReaderAsync().ConfigureAwait(false)) + using (await cmd.ExecuteReaderAsync().ConfigureAwait(true)) cmd.Cancel(); } @@ -260,7 +262,7 @@ value varchar(45) { cmd.CommandText = @"update cancel_completed_command SET value = ""value"" where id = 1;"; - await cmd.ExecuteNonQueryAsync().ConfigureAwait(false); + await cmd.ExecuteNonQueryAsync().ConfigureAwait(true); } using (var cmd = m_database.Connection.CreateCommand()) @@ -631,13 +633,13 @@ public async Task CancelCompletedBatch() create table cancel_completed_command ( id bigint unsigned, value varchar(45) -);").ConfigureAwait(false); +);").ConfigureAwait(true); using (var batch = m_database.Connection.CreateBatch()) { batch.BatchCommands.Add(new MySqlBatchCommand(@"insert into cancel_completed_command (id, value) values (1, null);")); - using (await batch.ExecuteReaderAsync().ConfigureAwait(false)) + using (await batch.ExecuteReaderAsync().ConfigureAwait(true)) batch.Cancel(); } @@ -645,7 +647,7 @@ value varchar(45) { batch.BatchCommands.Add(new MySqlBatchCommand(@"update cancel_completed_command SET value = ""value"" where id = 1;")); - await batch.ExecuteNonQueryAsync().ConfigureAwait(false); + await batch.ExecuteNonQueryAsync().ConfigureAwait(true); } using (var cmd = m_database.Connection.CreateCommand()) diff --git a/tests/IntegrationTests/ConnectionPool.cs b/tests/IntegrationTests/ConnectionPool.cs index 27af0d2ba..c7aeb4a72 100644 --- a/tests/IntegrationTests/ConnectionPool.cs +++ b/tests/IntegrationTests/ConnectionPool.cs @@ -57,7 +57,7 @@ public async Task ExhaustConnectionPool() for (int i = 0; i < csb.MaximumPoolSize; i++) { var connection = new MySqlConnection(csb.ConnectionString); - await connection.OpenAsync().ConfigureAwait(false); + await connection.OpenAsync().ConfigureAwait(true); connections.Add(connection); } @@ -71,12 +71,12 @@ public async Task ExhaustConnectionPool() using (var extraConnection = new MySqlConnection(csb.ConnectionString)) { var stopwatch = Stopwatch.StartNew(); - await extraConnection.OpenAsync().ConfigureAwait(false); + await extraConnection.OpenAsync().ConfigureAwait(true); stopwatch.Stop(); Assert.InRange(stopwatch.ElapsedMilliseconds, 4500, 7500); } - closeTask.Wait(); + await closeTask.ConfigureAwait(true); foreach (var connection in connections) connection.Dispose(); @@ -96,7 +96,7 @@ public async Task ExhaustConnectionPoolWithTimeout() for (int i = 0; i < csb.MaximumPoolSize; i++) { var connection = new MySqlConnection(csb.ConnectionString); - await connection.OpenAsync().ConfigureAwait(false); + await connection.OpenAsync().ConfigureAwait(true); connections.Add(connection); } @@ -184,22 +184,22 @@ public async Task CharacterSet() #endif // verify that connection charset is the same when retrieving a connection from the pool - await CheckCharacterSetAsync(csb.ConnectionString).ConfigureAwait(false); - await CheckCharacterSetAsync(csb.ConnectionString).ConfigureAwait(false); - await CheckCharacterSetAsync(csb.ConnectionString).ConfigureAwait(false); + await CheckCharacterSetAsync(csb.ConnectionString).ConfigureAwait(true); + await CheckCharacterSetAsync(csb.ConnectionString).ConfigureAwait(true); + await CheckCharacterSetAsync(csb.ConnectionString).ConfigureAwait(true); } private async Task CheckCharacterSetAsync(string connectionString) { using var connection = new MySqlConnection(connectionString); - await connection.OpenAsync().ConfigureAwait(false); + await connection.OpenAsync().ConfigureAwait(true); using var cmd = connection.CreateCommand(); cmd.CommandText = @"select @@character_set_client, @@character_set_connection"; - using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(false); - Assert.True(await reader.ReadAsync().ConfigureAwait(false)); + using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(true); + Assert.True(await reader.ReadAsync().ConfigureAwait(true)); Assert.Equal("utf8mb4", reader.GetString(0)); Assert.Equal("utf8mb4", reader.GetString(1)); - Assert.False(await reader.ReadAsync().ConfigureAwait(false)); + Assert.False(await reader.ReadAsync().ConfigureAwait(true)); } [Fact] diff --git a/tests/IntegrationTests/DataTypes.cs b/tests/IntegrationTests/DataTypes.cs index 9569d1b7e..30229d8a2 100644 --- a/tests/IntegrationTests/DataTypes.cs +++ b/tests/IntegrationTests/DataTypes.cs @@ -46,7 +46,7 @@ public DataTypes(DataTypesFixture database) [InlineData("UInt64", new[] { 1, 0, 0, 0, 0 }, new[] { false, false, false, true, true })] public async Task GetBoolean(string column, int[] flags, bool[] values) { - await DoGetValue(column, (r, n) => r.GetBoolean(n), (r, s) => r.GetBoolean(s), flags, values).ConfigureAwait(false); + await DoGetValue(column, (r, n) => r.GetBoolean(n), (r, s) => r.GetBoolean(s), flags, values).ConfigureAwait(true); } [Theory] @@ -62,7 +62,7 @@ public async Task GetBoolean(string column, int[] flags, bool[] values) [InlineData("UInt64", new[] { 1, 0, 0, 2, 2 }, new short[] { 0, 0, 0, 0, 0 })] public async Task GetInt16(string column, int[] flags, short[] values) { - await DoGetValue(column, (r, n) => r.GetInt16(n), (r, s) => r.GetInt16(s), flags, values).ConfigureAwait(false); + await DoGetValue(column, (r, n) => r.GetInt16(n), (r, s) => r.GetInt16(s), flags, values).ConfigureAwait(true); } [Theory] @@ -78,7 +78,7 @@ public async Task GetInt16(string column, int[] flags, short[] values) [InlineData("UInt64", new[] { 1, 0, 0, 2, 2 }, new[] { 0, 0, 0, 0, 0 })] public async Task GetInt32(string column, int[] flags, int[] values) { - await DoGetValue(column, (r, n) => r.GetInt32(n), (r, s) => r.GetInt32(s), flags, values).ConfigureAwait(false); + await DoGetValue(column, (r, n) => r.GetInt32(n), (r, s) => r.GetInt32(s), flags, values).ConfigureAwait(true); } [Theory] @@ -94,7 +94,7 @@ public async Task GetInt32(string column, int[] flags, int[] values) [InlineData("UInt64", new[] { 1, 0, 0, 2, 0 }, new[] { 0L, 0, 0, 0, 1234567890123456789 })] public async Task GetInt64(string column, int[] flags, long[] values) { - await DoGetValue(column, (r, n) => r.GetInt64(n), (r, s) => r.GetInt64(s), flags, values).ConfigureAwait(false); + await DoGetValue(column, (r, n) => r.GetInt64(n), (r, s) => r.GetInt64(s), flags, values).ConfigureAwait(true); } [Theory] @@ -110,7 +110,7 @@ public async Task GetInt64(string column, int[] flags, long[] values) [InlineData("UInt64", new[] { 1, 0, 0, 2, 2 }, new ushort[] { 0, 0, 0, 0, 0 })] public async Task GetUInt16(string column, int[] flags, ushort[] values) { - await DoGetValue(column, (r, n) => r.GetUInt16(n), (r, s) => r.GetUInt16(s), flags, values).ConfigureAwait(false); + await DoGetValue(column, (r, n) => r.GetUInt16(n), (r, s) => r.GetUInt16(s), flags, values).ConfigureAwait(true); } [Theory] @@ -126,7 +126,7 @@ public async Task GetUInt16(string column, int[] flags, ushort[] values) [InlineData("UInt64", new[] { 1, 0, 0, 2, 2 }, new uint[] { 0, 0, 0, 0, 0 })] public async Task GetUInt32(string column, int[] flags, uint[] values) { - await DoGetValue(column, (r, n) => r.GetUInt32(n), (r, s) => r.GetUInt32(s), flags, values).ConfigureAwait(false); + await DoGetValue(column, (r, n) => r.GetUInt32(n), (r, s) => r.GetUInt32(s), flags, values).ConfigureAwait(true); } [Theory] @@ -142,17 +142,17 @@ public async Task GetUInt32(string column, int[] flags, uint[] values) [InlineData("UInt64", new[] { 1, 0, 0, 0, 0 }, new ulong[] { 0, 0, 0, 18446744073709551615, 1234567890123456789 })] public async Task GetUInt64(string column, int[] flags, ulong[] values) { - await DoGetValue(column, (r, n) => r.GetUInt64(n), (r, s) => r.GetUInt64(s), flags, values).ConfigureAwait(false); + await DoGetValue(column, (r, n) => r.GetUInt64(n), (r, s) => r.GetUInt64(s), flags, values).ConfigureAwait(true); } private async Task DoGetValue(string column, Func getInt, Func getIntByName, int[] flags, T[] values) { using var cmd = Connection.CreateCommand(); cmd.CommandText = $"select {column} from datatypes_integers order by rowid"; - using var reader = (MySqlDataReader) await cmd.ExecuteReaderAsync().ConfigureAwait(false); + using var reader = (MySqlDataReader) await cmd.ExecuteReaderAsync().ConfigureAwait(true); for (int i = 0; i < flags.Length; i++) { - Assert.True(await reader.ReadAsync().ConfigureAwait(false)); + Assert.True(await reader.ReadAsync().ConfigureAwait(true)); switch (flags[i]) { case 0: // normal @@ -161,7 +161,7 @@ private async Task DoGetValue(string column, Func ge break; case 1: // null - Assert.True(await reader.IsDBNullAsync(0).ConfigureAwait(false)); + Assert.True(await reader.IsDBNullAsync(0).ConfigureAwait(true)); break; case 2: // overflow @@ -170,8 +170,8 @@ private async Task DoGetValue(string column, Func ge break; } } - Assert.False(await reader.ReadAsync().ConfigureAwait(false)); - Assert.False(await reader.NextResultAsync().ConfigureAwait(false)); + Assert.False(await reader.ReadAsync().ConfigureAwait(true)); + Assert.False(await reader.NextResultAsync().ConfigureAwait(true)); } [Theory] @@ -442,17 +442,17 @@ public async Task QueryWithGuidParameter(bool oldGuids) var csb = CreateConnectionStringBuilder(); csb.OldGuids = oldGuids; using var connection = new MySqlConnection(csb.ConnectionString); - await connection.OpenAsync().ConfigureAwait(false); + await connection.OpenAsync().ConfigureAwait(true); try { - Assert.Equal(oldGuids ? 0L : 1L, (await connection.QueryAsync(@"select count(*) from datatypes_strings where guid = @guid", new { guid = new Guid("fd24a0e8-c3f2-4821-a456-35da2dc4bb8f") }).ConfigureAwait(false)).SingleOrDefault()); - Assert.Equal(oldGuids ? 0L : 1L, (await connection.QueryAsync(@"select count(*) from datatypes_strings where guidbin = @guid", new { guid = new Guid("fd24a0e8-c3f2-4821-a456-35da2dc4bb8f") }).ConfigureAwait(false)).SingleOrDefault()); + Assert.Equal(oldGuids ? 0L : 1L, (await connection.QueryAsync(@"select count(*) from datatypes_strings where guid = @guid", new { guid = new Guid("fd24a0e8-c3f2-4821-a456-35da2dc4bb8f") }).ConfigureAwait(true)).SingleOrDefault()); + Assert.Equal(oldGuids ? 0L : 1L, (await connection.QueryAsync(@"select count(*) from datatypes_strings where guidbin = @guid", new { guid = new Guid("fd24a0e8-c3f2-4821-a456-35da2dc4bb8f") }).ConfigureAwait(true)).SingleOrDefault()); } catch (MySqlException ex) when (oldGuids && ex.Number is 1300 or 3854) // InvalidCharacterString, CannotConvertString { // new error in MySQL 8.0.24, MariaDB 10.5 } - Assert.Equal(oldGuids ? 1L : 0L, (await connection.QueryAsync(@"select count(*) from datatypes_blobs where guidbin = @guid", new { guid = new Guid(0x33221100, 0x5544, 0x7766, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF) }).ConfigureAwait(false)).SingleOrDefault()); + Assert.Equal(oldGuids ? 1L : 0L, (await connection.QueryAsync(@"select count(*) from datatypes_blobs where guidbin = @guid", new { guid = new Guid(0x33221100, 0x5544, 0x7766, 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF) }).ConfigureAwait(true)).SingleOrDefault()); } [Theory] @@ -464,14 +464,14 @@ public async Task GetGuid(string column, Type fieldType) { using var cmd = Connection.CreateCommand(); cmd.CommandText = $"select `{column}` from datatypes_guids order by rowid"; - using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(false); + using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(true); Assert.Equal(fieldType, reader.GetFieldType(0)); - Assert.True(await reader.ReadAsync().ConfigureAwait(false)); + Assert.True(await reader.ReadAsync().ConfigureAwait(true)); Assert.True(reader.IsDBNull(0)); Assert.Throws(() => reader.GetGuid(0)); - Assert.True(await reader.ReadAsync().ConfigureAwait(false)); + Assert.True(await reader.ReadAsync().ConfigureAwait(true)); Assert.False(reader.IsDBNull(0)); Assert.NotNull(reader.GetValue(0)); Assert.IsType(fieldType, reader.GetValue(0)); @@ -484,17 +484,17 @@ public async Task GetGuid(string column, Type fieldType) #endif Assert.Throws(exceptionType, () => reader.GetGuid(0)); - Assert.True(await reader.ReadAsync().ConfigureAwait(false)); + Assert.True(await reader.ReadAsync().ConfigureAwait(true)); Assert.NotNull(reader.GetValue(0)); Assert.IsType(fieldType, reader.GetValue(0)); Assert.Equal(new Guid("33221100-5544-7766-8899-aabbccddeeff"), reader.GetGuid(0)); - Assert.True(await reader.ReadAsync().ConfigureAwait(false)); + Assert.True(await reader.ReadAsync().ConfigureAwait(true)); Assert.NotNull(reader.GetValue(0)); Assert.IsType(fieldType, reader.GetValue(0)); Assert.Equal(new Guid("33221100-5544-7766-8899-aabbccddeeff"), reader.GetGuid(0)); - Assert.False(await reader.ReadAsync().ConfigureAwait(false)); + Assert.False(await reader.ReadAsync().ConfigureAwait(true)); } #if !MYSQL_DATA @@ -842,7 +842,7 @@ public async Task InsertLargeBlobAsync(string column, int size) try { cmd.Parameters.AddWithValue("@data", data); - await cmd.ExecuteNonQueryAsync().ConfigureAwait(false); + await cmd.ExecuteNonQueryAsync().ConfigureAwait(true); lastInsertId = cmd.LastInsertedId; Assert.True(isSupported); } @@ -857,10 +857,10 @@ public async Task InsertLargeBlobAsync(string column, int size) if (isSupported) { - var queryResult = (await connection.QueryAsync($"select `{column}` from datatypes_blob_insert where rowid = {lastInsertId}").ConfigureAwait(false)).Single(); + var queryResult = (await connection.QueryAsync($"select `{column}` from datatypes_blob_insert where rowid = {lastInsertId}").ConfigureAwait(true)).Single(); TestUtilities.AssertEqual(data, queryResult); - await connection.ExecuteAsync($"delete from datatypes_blob_insert where rowid = {lastInsertId}").ConfigureAwait(false); + await connection.ExecuteAsync($"delete from datatypes_blob_insert where rowid = {lastInsertId}").ConfigureAwait(true); } } diff --git a/tests/IntegrationTests/IntegrationTests.csproj b/tests/IntegrationTests/IntegrationTests.csproj index 8de202d5d..07c370394 100644 --- a/tests/IntegrationTests/IntegrationTests.csproj +++ b/tests/IntegrationTests/IntegrationTests.csproj @@ -28,9 +28,9 @@ - - - + + + runtime; build; native; contentfiles; analyzers; buildtransitive all diff --git a/tests/IntegrationTests/QueryTests.cs b/tests/IntegrationTests/QueryTests.cs index fc531a90e..b4bab2451 100644 --- a/tests/IntegrationTests/QueryTests.cs +++ b/tests/IntegrationTests/QueryTests.cs @@ -469,8 +469,8 @@ public async Task DoubleDispose() { using var cmd = m_database.Connection.CreateCommand(); cmd.CommandText = @"select 1;"; - using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(false); - Assert.True(await reader.ReadAsync().ConfigureAwait(false)); + using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(true); + Assert.True(await reader.ReadAsync().ConfigureAwait(true)); reader.Dispose(); reader.Dispose(); } @@ -481,15 +481,15 @@ public async Task MultipleStatementsWithInvalidSql() using var cmd = m_database.Connection.CreateCommand(); cmd.CommandText = @"select 1; select 1 from mysql.abc; select 2;"; - using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(false); - Assert.True(await reader.ReadAsync().ConfigureAwait(false)); + using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(true); + Assert.True(await reader.ReadAsync().ConfigureAwait(true)); Assert.Equal(1, reader.GetInt32(0)); - Assert.False(await reader.ReadAsync().ConfigureAwait(false)); + Assert.False(await reader.ReadAsync().ConfigureAwait(true)); await Assert.ThrowsAsync(() => reader.NextResultAsync()); - Assert.False(await reader.ReadAsync().ConfigureAwait(false)); + Assert.False(await reader.ReadAsync().ConfigureAwait(true)); - Assert.False(await reader.NextResultAsync().ConfigureAwait(false)); + Assert.False(await reader.NextResultAsync().ConfigureAwait(true)); } [Fact] @@ -521,7 +521,7 @@ public async Task GetEnumerator() using (var cmd = m_database.Connection.CreateCommand()) { cmd.CommandText = @"select value from query_enumerator order by value asc;"; - using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(false); + using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(true); Assert.Equal(new[] { "four", "one", "three", "two" }, reader.Cast().Select(x => x.GetString(0))); } } diff --git a/tests/IntegrationTests/Transaction.cs b/tests/IntegrationTests/Transaction.cs index f1f2abdcf..a4bf35c5c 100644 --- a/tests/IntegrationTests/Transaction.cs +++ b/tests/IntegrationTests/Transaction.cs @@ -94,12 +94,12 @@ public void DbConnectionTransactionCommand(IsolationLevel inputIsolationLevel, s [Fact] public async Task CommitAsync() { - using (var trans = await m_connection.BeginTransactionAsync().ConfigureAwait(false)) + using (var trans = await m_connection.BeginTransactionAsync().ConfigureAwait(true)) { - await m_connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(false); - await trans.CommitAsync().ConfigureAwait(false); + await m_connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(true); + await trans.CommitAsync().ConfigureAwait(true); } - var results = await m_connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(false); + var results = await m_connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(true); Assert.Equal(new[] { 1, 2 }, results); } @@ -109,15 +109,15 @@ public async Task CommitDisposeAsync() MySqlTransaction trans = null; try { - trans = await m_connection.BeginTransactionAsync().ConfigureAwait(false); - await m_connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(false); - await trans.CommitAsync().ConfigureAwait(false); + trans = await m_connection.BeginTransactionAsync().ConfigureAwait(true); + await m_connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(true); + await trans.CommitAsync().ConfigureAwait(true); } finally { - await trans.DisposeAsync().ConfigureAwait(false); + await trans.DisposeAsync().ConfigureAwait(true); } - var results = await m_connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(false); + var results = await m_connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(true); Assert.Equal(new[] { 1, 2 }, results); } @@ -174,12 +174,12 @@ public async Task ReadWriteTransactionAsync() public async Task DbConnectionCommitAsync() { DbConnection connection = m_connection; - using (var trans = await connection.BeginTransactionAsync().ConfigureAwait(false)) + using (var trans = await connection.BeginTransactionAsync().ConfigureAwait(true)) { - await connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(false); - await trans.CommitAsync().ConfigureAwait(false); + await connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(true); + await trans.CommitAsync().ConfigureAwait(true); } - var results = await connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(false); + var results = await connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(true); Assert.Equal(new[] { 1, 2 }, results); } #endif @@ -214,12 +214,12 @@ public void DbConnectionRollback() [Fact] public async Task RollbackAsync() { - using (var trans = await m_connection.BeginTransactionAsync().ConfigureAwait(false)) + using (var trans = await m_connection.BeginTransactionAsync().ConfigureAwait(true)) { - await m_connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(false); - await trans.RollbackAsync().ConfigureAwait(false); + await m_connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(true); + await trans.RollbackAsync().ConfigureAwait(true); } - var results = await m_connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(false); + var results = await m_connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(true); Assert.Equal(new int[0], results); } @@ -229,15 +229,15 @@ public async Task RollbackDisposeAsync() MySqlTransaction trans = null; try { - trans = await m_connection.BeginTransactionAsync().ConfigureAwait(false); - await m_connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(false); - await trans.RollbackAsync().ConfigureAwait(false); + trans = await m_connection.BeginTransactionAsync().ConfigureAwait(true); + await m_connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(true); + await trans.RollbackAsync().ConfigureAwait(true); } finally { - await trans.DisposeAsync().ConfigureAwait(false); + await trans.DisposeAsync().ConfigureAwait(true); } - var results = await m_connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(false); + var results = await m_connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(true); Assert.Equal(new int[0], results); } @@ -246,12 +246,12 @@ public async Task RollbackDisposeAsync() public async Task DbConnectionRollbackAsync() { DbConnection connection = m_connection; - using (var trans = await connection.BeginTransactionAsync().ConfigureAwait(false)) + using (var trans = await connection.BeginTransactionAsync().ConfigureAwait(true)) { - await connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(false); - await trans.RollbackAsync().ConfigureAwait(false); + await connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(true); + await trans.RollbackAsync().ConfigureAwait(true); } - var results = await connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(false); + var results = await connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(true); Assert.Equal(new int[0], results); } #endif @@ -373,14 +373,14 @@ public async Task DisposeAsync() MySqlTransaction trans = null; try { - trans = await m_connection.BeginTransactionAsync().ConfigureAwait(false); - await m_connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(false); + trans = await m_connection.BeginTransactionAsync().ConfigureAwait(true); + await m_connection.ExecuteAsync("insert into transactions_test values(1), (2)", transaction: trans).ConfigureAwait(true); } finally { - await trans.DisposeAsync().ConfigureAwait(false); + await trans.DisposeAsync().ConfigureAwait(true); } - var results = await m_connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(false); + var results = await m_connection.QueryAsync(@"select value from transactions_test order by value;").ConfigureAwait(true); Assert.Equal(new int[0], results); } #endif diff --git a/tests/IntegrationTests/TransactionScopeTests.cs b/tests/IntegrationTests/TransactionScopeTests.cs index dee270ccb..ad88fed2e 100644 --- a/tests/IntegrationTests/TransactionScopeTests.cs +++ b/tests/IntegrationTests/TransactionScopeTests.cs @@ -766,7 +766,9 @@ PRIMARY KEY (`id`) var task = Task.Run(() => UseTransaction()); UseTransaction(); +#pragma warning disable xUnit1031 // Do not use blocking task operations in test method task.Wait(); +#pragma warning restore xUnit1031 // Do not use blocking task operations in test method void UseTransaction() { diff --git a/tests/IntegrationTests/UpdateTests.cs b/tests/IntegrationTests/UpdateTests.cs index 046d6c6b8..d1d0b9670 100644 --- a/tests/IntegrationTests/UpdateTests.cs +++ b/tests/IntegrationTests/UpdateTests.cs @@ -38,8 +38,8 @@ public async Task UpdateRowsExecuteReader(int oldValue, int expectedRowsUpdated, p.Value = 4; cmd.Parameters.Add(p); - using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(false); - Assert.False(await reader.ReadAsync().ConfigureAwait(false)); + using var reader = await cmd.ExecuteReaderAsync().ConfigureAwait(true); + Assert.False(await reader.ReadAsync().ConfigureAwait(true)); if (closeDispose == 1) reader.Close(); @@ -48,7 +48,7 @@ public async Task UpdateRowsExecuteReader(int oldValue, int expectedRowsUpdated, Assert.Equal(expectedRowsUpdated, reader.RecordsAffected); if (closeDispose == 0) - Assert.False(await reader.NextResultAsync().ConfigureAwait(false)); + Assert.False(await reader.NextResultAsync().ConfigureAwait(true)); } } @@ -84,7 +84,7 @@ public async Task UpdateRowsExecuteNonQuery(int oldValue, int expectedRowsUpdate p.Value = 4; cmd.Parameters.Add(p); - var rowsAffected = await cmd.ExecuteNonQueryAsync().ConfigureAwait(false); + var rowsAffected = await cmd.ExecuteNonQueryAsync().ConfigureAwait(true); Assert.Equal(expectedRowsUpdated, rowsAffected); } } @@ -135,7 +135,7 @@ public async Task UpdateRowsDapperAsync(bool useAffectedRows, int oldValue, int cmd.ExecuteNonQuery(); } var rowsAffected = await connection.ExecuteAsync(@"update update_rows_dapper_async set value = @newValue where value = @oldValue", - new { oldValue, newValue = 4 }).ConfigureAwait(false); + new { oldValue, newValue = 4 }).ConfigureAwait(true); Assert.Equal(expectedRowsUpdated, rowsAffected); } } diff --git a/tests/MySqlConnector.Tests/MySqlConnector.Tests.csproj b/tests/MySqlConnector.Tests/MySqlConnector.Tests.csproj index ceaa6699a..9fff07634 100644 --- a/tests/MySqlConnector.Tests/MySqlConnector.Tests.csproj +++ b/tests/MySqlConnector.Tests/MySqlConnector.Tests.csproj @@ -19,12 +19,12 @@ - - + + runtime; build; native; contentfiles; analyzers; buildtransitive all - + runtime; build; native; contentfiles; analyzers; buildtransitive all