Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Microsoft.Data.Sqlite;
- namespace SQLiteError;
- public class Tests
- {
- [Test]
- public async Task UrlConnectionStringTest()
- {
- const string connection = "Data Source=file:abc?mode=memory&cache=shared;";
- await CreateDummyTable(connection);
- _ = Assert.ThrowsAsync<SqliteException>(async () => await CreateDummyTable(connection));
- }
- [Test]
- public async Task DataSourceEqualsMemoryTest()
- {
- const string connection = "DataSource=:memory:; cache=shared;";
- await CreateDummyTable(connection);
- _ = Assert.ThrowsAsync<SqliteException>(async () => await CreateDummyTable(connection));
- }
- [Test]
- public async Task ConnectionStringBuilderTest()
- {
- var csb = new SqliteConnectionStringBuilder
- {
- DataSource = "file:abc",
- Cache = SqliteCacheMode.Shared,
- Mode = SqliteOpenMode.Memory
- };
- var connection = csb.ToString();
- await CreateDummyTable(connection);
- _ = Assert.ThrowsAsync<SqliteException>(async () => await CreateDummyTable(connection));
- }
- [Test]
- public async Task ConnectionStringBuilderNoDataSourceTest()
- {
- var csb = new SqliteConnectionStringBuilder
- {
- Cache = SqliteCacheMode.Shared,
- Mode = SqliteOpenMode.Memory
- };
- var connection = csb.ToString();
- await CreateDummyTable(connection);
- _ = Assert.ThrowsAsync<SqliteException>(async () => await CreateDummyTable(connection));
- }
- private static async Task CreateDummyTable(string conStr)
- {
- await using var connection = new SqliteConnection(conStr);
- await connection.OpenAsync();
- var command = connection.CreateCommand();
- command.CommandText = "CREATE TABLE MyTable (MyColumn int);";
- _ = await command.ExecuteNonQueryAsync();
- await connection.CloseAsync();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement