コード例 #1
0
        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);
            }
        }
コード例 #2
0
 public void ExecuteScalar_Generic_String(string query, string expectedValue)
 {
     using (var ds = new SQLiteDatastore())
     {
         ds.ExecuteScalar <string>(query).Should().Be(expectedValue);
     }
 }
コード例 #3
0
        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);
            }
        }
コード例 #4
0
        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);
        }