public void TestSelectPrefix() { AdoNkv nkv = TestConfiguration.CreateNkv(TestContext); using (var session = nkv.BeginSession()) { session.Init <Book>(); var book = Book.Generate(); session.Insert(book); for (int i = 0; i < 10; i++) { var b2 = Book.Generate(); b2.Key = book.Key + "_" + b2.Key; session.Insert(b2); } var entities = session.SelectPrefix <Book>(book.Key); Assert.IsNotNull(entities); Assert.AreEqual(11, entities.Length); // 11, including the original book itself entities = session.SelectPrefix <Book>(book.Key + "_"); Assert.IsNotNull(entities); Assert.AreEqual(10, entities.Length); Assert.AreEqual(0, entities.Count(x => x.Version < 1)); } }
public void TestSelectMany_none_exists() { AdoNkv nkv = TestConfiguration.CreateNkv(TestContext); using (var session = nkv.BeginSession()) { session.Init <Book>(); var books = new Book[10]; for (int i = 0; i < books.Length; i++) { books[i] = Book.Generate(); session.Insert(books[i]); } var selectManyBooks = session.SelectMany <Book>(new string[] { Guid.NewGuid().ToString(), Guid.NewGuid().ToString(), Guid.NewGuid().ToString() }); Assert.IsNotNull(selectManyBooks); Assert.AreEqual(0, selectManyBooks.Length); } }
public void TestSelectPrefix_not_exists() { AdoNkv nkv = TestConfiguration.CreateNkv(TestContext); using (var session = nkv.BeginSession()) { session.Init <Book>(); var book = Book.Generate(); session.Insert(book); for (int i = 0; i < 10; i++) { var b2 = Book.Generate(); b2.Key = book.Key + "_" + b2.Key; session.Insert(b2); } var entities = session.SelectPrefix <Book>(Guid.NewGuid().ToString()); Assert.IsNotNull(entities); Assert.AreEqual(0, entities.Length); } }
public void TestSelectMany() { AdoNkv nkv = TestConfiguration.CreateNkv(TestContext); using (var session = nkv.BeginSession()) { session.Init <Book>(); var books = new Book[10]; for (int i = 0; i < books.Length; i++) { books[i] = Book.Generate(); session.Insert(books[i]); } var selectManyBooks = session.SelectMany <Book>(books.Select(b => b.Key).Take(5).ToArray()); Assert.IsNotNull(selectManyBooks); Assert.AreEqual(5, selectManyBooks.Length); Assert.AreEqual(0, selectManyBooks.Count(x => x.Version < 1)); } }
public void TestSelectPrefix_wildcard_suffix() { AdoNkv nkv = TestConfiguration.CreateNkv(TestContext); using (var session = nkv.BeginSession()) { session.Init <Book>(); var book = Book.Generate(); session.Insert(book); var entities = session.SelectPrefix <Book>(book.Key); Assert.IsNotNull(entities); Assert.AreEqual(1, entities.Length); entities = session.SelectPrefix <Book>(book.Key + "%"); Assert.IsNotNull(entities); Assert.AreEqual(0, entities.Length); entities = session.SelectPrefix <Book>(book.Key.Substring(0, book.Key.Length - 1) + "_"); Assert.IsNotNull(entities); Assert.AreEqual(0, entities.Length); } }