public void Test_0303_Limit() { KiiQuery query = new KiiQuery(); query.Limit = -1; Assert.AreEqual("{\"bucketQuery\":{\"clause\":{\"type\":\"all\"}}}", query.ToString()); }
public void Test_1_1_CountAllWhenObjectNotExists() { string bucketName = "TestBucket" + CurrentTimeMillis(); KiiBucket bucket = Kii.Bucket(bucketName); KiiBucket callbackBucket = null; KiiQuery callbackQuery = null; int count = -1; Exception exp = null; CountDownLatch cd = new CountDownLatch(1); bucket.Count((KiiBucket b, KiiQuery q, int c, Exception e) => { callbackBucket = b; callbackQuery = q; count = c; exp = e; cd.Signal(); }); if (!cd.Wait(new TimeSpan(0, 0, 0, 3))) { Assert.Fail("Callback not fired."); } Assert.IsNotNull(callbackBucket); Assert.AreEqual(bucket.Uri, callbackBucket.Uri); Assert.IsNotNull(callbackQuery); Assert.AreEqual(new KiiQuery(null).ToString(), callbackQuery.ToString()); Assert.IsNull(exp); Assert.AreEqual(0, count); }
private string CountAggregationQuery(KiiQuery query) { // generate aggregations JsonArray aggregations = new JsonArray(); JsonObject json = new JsonObject(); json.Put("type", "COUNT"); json.Put("putAggregationInto", "count_field"); aggregations.Put(json); // add aggregations with bucketQuery. JsonObject queryJson = new JsonObject(query.ToString()); JsonObject bucketQueryJson = queryJson.GetJsonObject("bucketQuery"); bucketQueryJson.Put("aggregations", aggregations); // clobbering the new value of bucketQuery queryJson.Put("bucketQuery", bucketQueryJson); return(queryJson.ToString()); }
public void Test_2_2_CountWithQueryWhenObjectExistsInBucket() { string bucketName = "TestBucket" + CurrentTimeMillis(); KiiBucket bucket = Kii.Bucket(bucketName); for (int i = 0; i < 10; i++) { KiiObject obj = bucket.NewKiiObject(); obj ["key"] = "value"; obj.Save(); } KiiBucket callbackBucket = null; KiiQuery callbackQuery = null; int count = -1; Exception exp = null; CountDownLatch cd = new CountDownLatch(1); KiiClause clause = KiiClause.Equals("key", "value"); KiiQuery query = new KiiQuery(clause); bucket.Count(query, (KiiBucket b, KiiQuery q, int c, Exception e) => { callbackBucket = b; callbackQuery = q; count = c; exp = e; cd.Signal(); }); if (!cd.Wait(new TimeSpan(0, 0, 0, 3))) { Assert.Fail("Callback not fired."); } Assert.IsNotNull(callbackBucket); Assert.AreEqual(bucket.Uri, callbackBucket.Uri); Assert.IsNotNull(callbackQuery); Assert.AreEqual(query.ToString(), callbackQuery.ToString()); Assert.IsNull(exp); Assert.AreEqual(10, count); }
public void Test_0200_SortByDesc() { KiiQuery query = new KiiQuery(); query.SortByDesc("score"); Assert.AreEqual("{\"bucketQuery\":{\"clause\":{\"type\":\"all\"},\"orderBy\":\"score\",\"descending\":true}}", query.ToString()); }
public void Test_0002_KiiQuery_clause() { KiiQuery query = new KiiQuery(KiiClause.Equals("name", "kii")); Assert.AreEqual("{\"bucketQuery\":{\"clause\":{\"type\":\"eq\",\"field\":\"name\",\"value\":\"kii\"}}}", query.ToString()); }
public void Test_0001_KiiQuery_null() { KiiQuery query = new KiiQuery(null); Assert.AreEqual("{\"bucketQuery\":{\"clause\":{\"type\":\"all\"}}}", query.ToString()); }
public void Test_0400_NextPaginationKey() { KiiQuery query = new KiiQuery(); query.NextPaginationKey = "abcd"; Assert.AreEqual("{\"bucketQuery\":{\"clause\":{\"type\":\"all\"}},\"paginationKey\":\"abcd\"}", query.ToString()); }
public void Test_0301_Limit_1() { KiiQuery query = new KiiQuery(); query.Limit = 1; Assert.AreEqual("{\"bucketQuery\":{\"clause\":{\"type\":\"all\"}},\"bestEffortLimit\":1}", query.ToString()); }