public async Task SaveQueryAsync_saves_query() { // Arrange var db = Guid.NewGuid().ToString(); InitializeDatabse(db); var settingsMoq = new Mock <ISejilSettings>(); settingsMoq.SetupGet(p => p.SqliteDbPath).Returns(db); var repository = new SejilRepository(new SejilSqlProvider(settingsMoq.Object), settingsMoq.Object); var logQuery = new LogQuery { Id = 1, Name = "Test", Query = "q" }; // Act var result = await repository.SaveQueryAsync(logQuery); // Assert Assert.True(result); var savedQueries = await repository.GetSavedQueriesAsync(); Assert.Single(savedQueries); Assert.Equal(1, savedQueries.First().Id); Assert.Equal("Test", savedQueries.First().Name); Assert.Equal("q", savedQueries.First().Query); }
public async Task GetSavedQueriesAsync_returns_saved_queries() { // Arrange var db = Guid.NewGuid().ToString(); InitializeDatabse(db); var settingsMoq = new Mock <ISejilSettings>(); settingsMoq.SetupGet(p => p.SqliteDbPath).Returns(db); var repository = new SejilRepository(new SejilSqlProvider(settingsMoq.Object), settingsMoq.Object); await repository.SaveQueryAsync(new LogQuery { Name = "Test1", Query = "q1" }); await repository.SaveQueryAsync(new LogQuery { Name = "Test2", Query = "q2" }); // Act var queries = await repository.GetSavedQueriesAsync(); // Assert Assert.Equal(2, queries.Count()); Assert.Equal(1, queries.First().Id); Assert.Equal("Test1", queries.First().Name); Assert.Equal("q1", queries.First().Query); Assert.Equal(2, queries.Skip(1).First().Id); Assert.Equal("Test2", queries.Skip(1).First().Name); Assert.Equal("q2", queries.Skip(1).First().Query); }
public async Task DeleteQueryAsync_deletes_specified_query() { // Arrange var db = Guid.NewGuid().ToString(); InitializeDatabse(db); var settingsMoq = new Mock <ISejilSettings>(); settingsMoq.SetupGet(p => p.SqliteDbPath).Returns(db); var repository = new SejilRepository(new SejilSqlProvider(settingsMoq.Object), settingsMoq.Object); await repository.SaveQueryAsync(new LogQuery { Name = "Test1", Query = "q1" }); // Act var result = await repository.DeleteQueryAsync("Test1"); // Assert Assert.True(result); var queries = await repository.GetSavedQueriesAsync(); Assert.Empty(queries); }
public async Task DeleteQueryAsync_returns_false_when_specified_query_does_not_exist() { // Arrange var db = Guid.NewGuid().ToString(); InitializeDatabse(db); var settingsMoq = new Mock <ISejilSettings>(); settingsMoq.SetupGet(p => p.ConnectionString).Returns(db); var repository = new SejilRepository(new SejilSqlProvider(settingsMoq.Object), settingsMoq.Object); await repository.SaveQueryAsync(new LogQuery { Name = "Test1", Query = "q1" }); // Act var result = await repository.DeleteQueryAsync("Test2"); // Assert Assert.False(result); var queries = await repository.GetSavedQueriesAsync(); Assert.Single(queries); }