public void SetTableAutoIncrementStartTest() { using (var ds = new SQLiteDatastore()) { ds.Execute("CREATE TABLE tbl (id INTEGER PRIMARY KEY AUTOINCREMENT);"); ds.ExecuteScalar <int>("SELECT max(id) FROM tbl;").Should().Be(0); ds.Execute("INSERT INTO tbl DEFAULT VALUES;"); ds.ExecuteScalar <int>("SELECT max(id) FROM tbl;").Should().Be(1); ds.SetTableAutoIncrementStart("tbl", 100); ds.ExecuteScalar <int>("SELECT max(id) FROM tbl;").Should().Be(1); ds.Execute("INSERT INTO tbl DEFAULT VALUES;"); ds.ExecuteScalar <int>("SELECT max(id) FROM tbl;").Should().Be(101); } }
public void ExecuteScalar_Generic_String(string query, string expectedValue) { using (var ds = new SQLiteDatastore()) { ds.ExecuteScalar <string>(query).Should().Be(expectedValue); } }
public void ExecuteScalar_Generic_Guid() { var query = "SELECT @p1;"; var expectedValue = Guid.NewGuid(); using (var ds = new SQLiteDatastore()) { ds.ExecuteScalar <Guid>(query, expectedValue).Should().Be(expectedValue); } }
private void VerifyExecuteScalarWithType <T>(T expected, SQLiteDatastore ds) where T : struct { Output.WriteLine("testing value {0} : {1}", expected, typeof(T).Name); T result = ds.ExecuteScalar <T>("SELECT @p1;", expected); Output.WriteLine(" as {0} gives {1}", typeof(T).Name, result.ToString()); Assert.Equal(expected, result); result = ds.ExecuteScalar <T>("SELECT NULL;"); Output.WriteLine(" NULL as {0} gives {1}", typeof(T).Name, result.ToString()); Assert.Equal(default(T), result); T?nResult = ds.ExecuteScalar <T?>("SELECT @p1;", expected); Output.WriteLine(" as {0} gives {1}", typeof(T?).Name, nResult.ToString()); Assert.True(nResult.HasValue); Assert.Equal(expected, nResult.Value); nResult = ds.ExecuteScalar <T?>("SELECT NULL;"); Output.WriteLine(" NULL as {0} gives {1}", typeof(T?).Name, nResult.ToString()); Assert.False(nResult.HasValue); }