public async Task Can_execute_scalar_command() { using (var testDatabase = await TestDatabase.Default()) { var commandExecutor = new SqlServerSimpleCommandExecutor(testDatabase.Connection.ConnectionString); var scalar = await commandExecutor.ExecuteScalarAsync <int>("select 42", CancellationToken.None); Assert.Equal(42, scalar); } }
public async Task Can_get_next_values() { using (var testDatabase = await TestDatabase.Default()) { var sequenceIdentityGenerator = new SequenceIdentityGenerator(testDatabase); var generator = new SqlServerMigrationOperationSqlGenerator(new SqlServerTypeMapper()); await testDatabase.ExecuteNonQueryAsync( generator.Generate(new[] { sequenceIdentityGenerator.CreateMigrationOperation() }, generateIdempotentSql : true).Single().Sql); var next = sequenceIdentityGenerator.NextAsync().Result; for (var i = 1; i <= 100; i++) { Assert.Equal(next + i, await sequenceIdentityGenerator.NextAsync()); } } }
public async Task Can_get_next_values() { var sequentialGuidIdentityGenerator = new SequentialGuidIdentityGenerator(); var values = new List <Guid>(); for (var _ = 0; _ < 100; _++) { values.Add(await sequentialGuidIdentityGenerator.NextAsync()); } using (var testDatabase = await TestDatabase.Default()) { await testDatabase.ExecuteNonQueryAsync("CREATE TABLE SequentialGuidTest (value uniqueidentifier)"); for (var i = values.Count - 1; i >= 0; i--) { await testDatabase.ExecuteNonQueryAsync("INSERT SequentialGuidTest VALUES (@p0)", values[i]); } Assert.Equal( values, await testDatabase.QueryAsync <Guid>("SELECT value FROM SequentialGuidTest ORDER BY value")); } }