private SQLiteConnection CreateDb() { var db = new TestDb(); db.CreateTable<TestTable>(); db.CreateTable<TestTableCompositeKey>(); var items = from i in Enumerable.Range(0, Count) select new TestTable { Datum = 1000 + i, Test = "Hello World" } ; db.InsertAll(items); var itemsCompositeKey = from i in Enumerable.Range(0, Count) select new TestTableCompositeKey { Datum = 1000 + i, Test = "Hello World", Id = i, TestIndex = i + 1 } ; db.InsertAll(itemsCompositeKey); Assert.AreEqual(Count, db.Table<TestTableCompositeKey>().Count()); return db; }
public void SetUp() { _db = new TestDb(); _db.CreateTable<Product>(); _db.CreateTable<Order>(); _db.CreateTable<OrderLine>(); var p1 = new Product { Name = "One", }; var p2 = new Product { Name = "Two", }; var p3 = new Product { Name = "Three", }; _db.InsertAll(new[] {p1, p2, p3}); var o1 = new Order { PlacedTime = DateTime.Now, }; var o2 = new Order { PlacedTime = DateTime.Now, }; _db.InsertAll(new[] {o1, o2}); _db.InsertAll(new[] { new OrderLine { OrderId = o1.Id, ProductId = p1.Id, Quantity = 1, }, new OrderLine { OrderId = o1.Id, ProductId = p2.Id, Quantity = 2, }, new OrderLine { OrderId = o2.Id, ProductId = p3.Id, Quantity = 3, } }); }
public void Setup() { testObjects = Enumerable.Range(1, 20).Select(i => new TestObj()).ToList(); db = new TestDb(TestPath.GetTempFileName()); db.InsertAll(testObjects); }
public void Setup() { testObjects = Enumerable.Range(1, 20).Select(i => new TestObj()).ToList(); db = new TestDb(TestPath.CreateTemporaryDatabase()); db.InsertAll(testObjects); }
public void Skip() { int n = 100; IEnumerable <TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Order = i }; TestObj[] objs = cq.ToArray(); var db = new TestDb(TestPath.CreateTemporaryDatabase()); int numIn = db.InsertAll(objs); Assert.AreEqual(numIn, n, "Num inserted must = num objects"); TableQuery <TestObj> q = from o in db.Table <TestObj>() orderby o.Order select o; TableQuery <TestObj> qs1 = q.Skip(1); List <TestObj> s1 = qs1.ToList(); Assert.AreEqual(n - 1, s1.Count); Assert.AreEqual(2, s1[0].Order); TableQuery <TestObj> qs5 = q.Skip(5); List <TestObj> s5 = qs5.ToList(); Assert.AreEqual(n - 5, s5.Count); Assert.AreEqual(6, s5[0].Order); }
public void ContainsQueriedData() { int n = 20; IEnumerable<TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Name = i.ToString() }; var db = new TestDb(new SQLitePlatformWin32(), TestPath.GetTempFileName()); db.InsertAll(cq); db.Trace = true; var tensq = new[] {"0", "10", "20"}; List<TestObj> tens = (from o in db.Table<TestObj>() where tensq.Contains(o.Name) select o).ToList(); Assert.AreEqual(2, tens.Count); var moreq = new[] {"0", "x", "99", "10", "20", "234324"}; List<TestObj> more = (from o in db.Table<TestObj>() where moreq.Contains(o.Name) select o).ToList(); Assert.AreEqual(2, more.Count); // https://github.com/praeclarum/SQLite.Net/issues/28 List<string> moreq2 = moreq.ToList(); List<TestObj> more2 = (from o in db.Table<TestObj>() where moreq2.Contains(o.Name) select o).ToList(); Assert.AreEqual(2, more2.Count); }
public void MultipleSkipsWillSkipTheSumOfTheSkips() { int n = 100; IEnumerable <TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Order = i }; TestObj[] objs = cq.ToArray(); var db = new TestDb(TestPath.GetTempFileName()); int numIn = db.InsertAll(objs); Assert.AreEqual(numIn, n, "Num inserted must = num objects"); TableQuery <TestObj> q = from o in db.Table <TestObj>() orderby o.Order select o; TableQuery <TestObj> qs1 = q.Skip(1).Skip(5); List <TestObj> s1 = qs1.ToList(); Assert.AreEqual(n - 6, s1.Count, "Should have skipped 5 + 1 = 6 objects."); Assert.AreEqual(7, s1[0].Order); }
public void MultipleTakesWillTakeTheMinOfTheTakes() { int n = 100; IEnumerable <TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Order = i }; TestObj[] objs = cq.ToArray(); var db = new TestDb(TestPath.GetTempFileName()); int numIn = db.InsertAll(objs); Assert.AreEqual(numIn, n, "Num inserted must = num objects"); TableQuery <TestObj> q = from o in db.Table <TestObj>() orderby o.Order select o; TableQuery <TestObj> qs1 = q.Take(1).Take(5); List <TestObj> s1 = qs1.ToList(); Assert.AreEqual(1, s1.Count, "Should have taken exactly one object."); Assert.AreEqual(1, s1[0].Order); }
public void CanCompareAnyField() { int n = 20; IEnumerable <TestObjString> cq = from i in Enumerable.Range(1, n) select new TestObjString { Data = Convert.ToString(i), Date = new DateTime(2013, 1, i) }; var db = new TestDb(TestPath.GetTempFileName()); db.InsertAll(cq); TableQuery <TestObjString> results = db.Table <TestObjString>().Where(o => o.Data.Equals("10")); Assert.AreEqual(results.Count(), 1); Assert.AreEqual(results.FirstOrDefault().Data, "10"); results = db.Table <TestObjString>().Where(o => o.Id.Equals(10)); Assert.AreEqual(results.Count(), 1); Assert.AreEqual(results.FirstOrDefault().Data, "10"); var date = new DateTime(2013, 1, 10); results = db.Table <TestObjString>().Where(o => o.Date.Equals(date)); Assert.AreEqual(results.Count(), 1); Assert.AreEqual(results.FirstOrDefault().Data, "10"); }
public void Skip() { int n = 100; IEnumerable<TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Order = i }; TestObj[] objs = cq.ToArray(); var db = new TestDb(TestPath.GetTempFileName()); int numIn = db.InsertAll(objs); Assert.AreEqual(numIn, n, "Num inserted must = num objects"); TableQuery<TestObj> q = from o in db.Table<TestObj>() orderby o.Order select o; TableQuery<TestObj> qs1 = q.Skip(1); List<TestObj> s1 = qs1.ToList(); Assert.AreEqual(n - 1, s1.Count); Assert.AreEqual(2, s1[0].Order); TableQuery<TestObj> qs5 = q.Skip(5); List<TestObj> s5 = qs5.ToList(); Assert.AreEqual(n - 5, s5.Count); Assert.AreEqual(6, s5[0].Order); }
private SQLiteConnection CreateDb() { var db = new TestDb(); db.CreateTable<TestTable>(); IEnumerable<TestTable> items = from i in Enumerable.Range(0, Count) select new TestTable { Two = 2 }; db.InsertAll(items); Assert.AreEqual(Count, db.Table<TestTable>().Count()); return db; }
private SQLiteConnection CreateDb() { var db = new TestDb(); db.CreateTable <TestTable>(); IEnumerable <TestTable> items = from i in Enumerable.Range(0, Count) select new TestTable { Datum = 1000 + i }; db.InsertAll(items); Assert.AreEqual(Count, db.Table <TestTable>().Count()); return(db); }
public void CanHaveSubtractInWhereClause() { int n = 20; IEnumerable <TestObjInt> cq = from i in Enumerable.Range(1, n) select new TestObjInt() { Data = i, }; var db = new TestDb(TestPath.CreateTemporaryDatabase()); db.InsertAll(cq); TableQuery <TestObjInt> results = db.Table <TestObjInt>().Where(o => o.Data - 10 >= 0); Assert.AreEqual(results.Count(), 11); Assert.AreEqual(results.OrderBy(o => o.Data).FirstOrDefault().Data, 10); }
private static TestDb GetTestDBWith100Elements() { int n = 100; IEnumerable <TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Order = i }; TestObj[] objs = cq.ToArray(); var db = new TestDb(TestPath.GetTempFileName()); int numIn = db.InsertAll(objs); Assert.AreEqual(numIn, n, "Num inserted must = num objects"); return(db); }
public void AddForStringsMeansConcatenate() { int n = 20; IEnumerable <TestObjString> cq = from i in Enumerable.Range(1, n) select new TestObjString() { Data = i.ToString(), }; var db = new TestDb(TestPath.CreateTemporaryDatabase()); db.InsertAll(cq); TableQuery <TestObjString> results = db.Table <TestObjString>().Where(o => o.Data + "1" == "11"); Assert.AreEqual(1, results.Count()); Assert.AreEqual("1", results.OrderBy(o => o.Data).FirstOrDefault().Data); }
public void Issue115_MissingPrimaryKey() { using (var conn = new TestDb()) { conn.CreateTable<Issue115_MyObject>(); conn.InsertAll(from i in Enumerable.Range(0, 10) select new Issue115_MyObject { UniqueId = i.ToString(), OtherValue = (byte) (i*10), }); TableQuery<Issue115_MyObject> query = conn.Table<Issue115_MyObject>(); foreach (Issue115_MyObject itm in query) { itm.OtherValue++; Assert.AreEqual(1, conn.Update(itm, typeof (Issue115_MyObject))); } } }
public void Issue115_MissingPrimaryKey() { using (var conn = new TestDb()) { conn.CreateTable <Issue115_MyObject>(); conn.InsertAll(from i in Enumerable.Range(0, 10) select new Issue115_MyObject { UniqueId = i.ToString(), OtherValue = (byte)(i * 10), }); TableQuery <Issue115_MyObject> query = conn.Table <Issue115_MyObject>(); foreach (Issue115_MyObject itm in query) { itm.OtherValue++; Assert.AreEqual(1, conn.Update(itm, typeof(Issue115_MyObject))); } } }
public void SetUp() { db = new TestDb(); db.CreateTable<Product>(); var prods = new[] { new Product { Name = "Foo" }, new Product { Name = "Bar" }, new Product { Name = "Foobar" } }; db.InsertAll(prods); }
public void SetUp() { db = new TestDb(); db.CreateTable <Product>(); var prods = new[] { new Product { Name = "Foo" }, new Product { Name = "Bar" }, new Product { Name = "Foobar" } }; db.InsertAll(prods); }
public void ContainsConstantData() { int n = 20; IEnumerable<TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Name = i.ToString() }; var db = new TestDb(new SQLitePlatformWin32(), TestPath.GetTempFileName()); db.InsertAll(cq); db.Trace = true; var tensq = new[] {"0", "10", "20"}; List<TestObj> tens = (from o in db.Table<TestObj>() where tensq.Contains(o.Name) select o).ToList(); Assert.AreEqual(2, tens.Count); var moreq = new[] {"0", "x", "99", "10", "20", "234324"}; List<TestObj> more = (from o in db.Table<TestObj>() where moreq.Contains(o.Name) select o).ToList(); Assert.AreEqual(2, more.Count); }
public void ReplaceInWhere() { string testElement = "Element"; string alternateElement = "Alternate"; string replacedElement = "ReplacedElement"; int n = 20; IEnumerable <TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Name = (i % 2 == 0) ? testElement : alternateElement }; var db = new TestDb(new SQLitePlatformTest(), TestPath.CreateTemporaryDatabase()); db.InsertAll(cq); db.TraceListener = DebugTraceListener.Instance; List <TestObj> result = (from o in db.Table <TestObj>() where o.Name.Replace(testElement, replacedElement) == replacedElement select o).ToList(); Assert.AreEqual(10, result.Count); }
public void ReplaceInWhere() { string testElement = "Element"; string alternateElement = "Alternate"; string replacedElement = "ReplacedElement"; int n = 20; IEnumerable<TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Name = (i % 2 == 0) ? testElement : alternateElement }; var db = new TestDb(new SQLitePlatformTest(), TestPath.CreateTemporaryDatabase()); db.InsertAll(cq); db.TraceListener = DebugTraceListener.Instance; List<TestObj> result = (from o in db.Table<TestObj>() where o.Name.Replace(testElement, replacedElement) == replacedElement select o).ToList(); Assert.AreEqual(10, result.Count); }
public void MultipleSkipsWillSkipTheSumOfTheSkips() { int n = 100; IEnumerable<TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Order = i }; TestObj[] objs = cq.ToArray(); var db = new TestDb(TestPath.CreateTemporaryDatabase()); int numIn = db.InsertAll(objs); Assert.AreEqual(numIn, n, "Num inserted must = num objects"); TableQuery<TestObj> q = from o in db.Table<TestObj>() orderby o.Order select o; TableQuery<TestObj> qs1 = q.Skip(1).Skip(5); List<TestObj> s1 = qs1.ToList(); Assert.AreEqual(n - 6, s1.Count, "Should have skipped 5 + 1 = 6 objects."); Assert.AreEqual(7, s1[0].Order); }
private static TestDb GetTestDBWith100Elements() { int n = 100; IEnumerable<TestObj> cq = from i in Enumerable.Range(1, n) select new TestObj { Order = i }; TestObj[] objs = cq.ToArray(); var db = new TestDb(TestPath.GetTempFileName()); int numIn = db.InsertAll(objs); Assert.AreEqual(numIn, n, "Num inserted must = num objects"); return db; }