public void TestFetchPointerASync() { Task.Run(async() => { var item1 = new NCMBObject("QueryTest"); item1.Set("message", "Test message"); item1.Set("number", 500); await item1.Save(); var item2 = new NCMBObject("QueryTest"); item2.Set("message", "Test message"); item2.Set("number", 500); item2.Set("obj", item1); await item2.Save(); var query = new NCMBQuery("QueryTest"); query .EqualTo("objectId", item2.Get("objectId")) .Include("obj"); var obj = await query.Fetch(); Assert.AreEqual(obj.Get("objectId"), item2.Get("objectId")); Assert.AreEqual(((NCMBObject)obj.Get("obj")).Get("objectId"), item1.Get("objectId")); await obj.Delete(); await item1.Delete(); }).GetAwaiter().GetResult(); }
public void TestRelationRemove() { Task.Run(async() => { var item1 = new NCMBObject("RelationTest"); await item1.Set("name", "item1").Save(); var item2 = new NCMBObject("RelationTest"); await item2.Set("name", "item2").Save(); var relation = new NCMBRelation(); relation.Add(item1).Add(item2); var item3 = new NCMBObject("RelationMaster"); await item3.Set("relation", relation).Save(); Assert.NotNull(item3.Get("objectId")); relation = new NCMBRelation(); relation.Remove(item1); await item3.Set("relation", relation).Save(); await item3.Delete(); await item1.Delete(); await item2.Delete(); }).GetAwaiter().GetResult(); }
public void TestFetchWithCount() { Task.Run(async() => { for (var i = 0; i < 5; i++) { var item = new NCMBObject("QueryTest"); item.Set("message", "Test message"); item.Set("number", i); await item.Save(); } var query = new NCMBQuery("QueryTest"); query.GreaterThan("number", 3); var items = await query.Count().FetchAll(); Assert.AreEqual(1, query.GetCount()); query = new NCMBQuery("QueryTest"); query.GreaterThanOrEqualTo("number", 3); items = await query.Count().FetchAll(); Assert.AreEqual(2, query.GetCount()); query = new NCMBQuery("QueryTest"); items = await query.FetchAll(); foreach (var item in items) { await item.Delete(); } }).GetAwaiter().GetResult(); }
public void TestFetchLimitASync() { Task.Run(async() => { for (var i = 0; i < 5; i++) { var item = new NCMBObject("QueryTest"); item.Set("message", "Test message"); item.Set("number", 500 + i); await item.Save(); } var query = new NCMBQuery("QueryTest"); query.EqualTo("message", "Test message"); var results = await query.FetchAll(); Assert.AreEqual(results.Length, 5); query = new NCMBQuery("QueryTest"); query.EqualTo("message", "Test message").Limit(2); results = await query.FetchAll(); Assert.AreEqual(results.Length, 2); query = new NCMBQuery("QueryTest"); results = await query.FetchAll(); foreach (var obj in results) { await obj.Delete(); } }).GetAwaiter().GetResult(); }
public void TestSaveGetBoolean() { Task.Run(async() => { var message = "Hello, world"; var item = new NCMBObject("DataStoreTest"); item.Set("message", message); item.Set("bol1", true); item.Set("bol2", false); await item.Save(); Assert.NotNull(item.Get("objectId")); await item.Fetch(); Assert.IsTrue(item.GetBoolean("bol1")); Assert.IsTrue(!item.GetBoolean("bol2")); await item.Delete(); }).GetAwaiter().GetResult(); }
public void TestFetchSelect() { Task.Run(async() => { for (var i = 0; i < 5; i++) { var item = new NCMBObject("Test"); item.Set("message", "Test message"); item.Set("number", i); await item.Save(); var item2 = new NCMBObject("Test2"); item2.Set("message", "Test message"); item2.Set("num", i); await item2.Save(); } var q1 = new NCMBQuery("Test"); var q2 = new NCMBQuery("Test2"); q2.InString("num", new int[] { 1, 4 }); var t = q2.FetchAll(); var items = await q1.Select("number", "num", q2).FetchAll(); foreach (var item in items) { var num = item.GetInt("number"); Assert.IsTrue(num == 4 || num == 1); } var query = new NCMBQuery("Test"); items = await query.FetchAll(); foreach (var item in items) { await item.Delete(); } query = new NCMBQuery("Test2"); items = await query.FetchAll(); foreach (var item in items) { await item.Delete(); } }).GetAwaiter().GetResult(); }
public void TestSetGeoPoint() { var latitude = 35.6585805; var longitude = 139.7454329; var geo = new NCMBGeoPoint(latitude, longitude); var item = new NCMBObject("Item"); item.Set("geo", geo); var geo1 = (NCMBGeoPoint)item.Get("geo"); Assert.AreEqual(geo1.Latitude, geo.Latitude); }
public void TestSaveAndDeleteASync() { Task.Run(async() => { var message = "Hello, world"; var item = new NCMBObject("DataStoreTest"); item.Set("message", message); await item.Save(); Assert.NotNull(item.Get("objectId")); Assert.AreEqual(item.Get("message").ToString(), message); await item.Delete(); }).GetAwaiter().GetResult(); }
public void TestSaveGeoPoint() { Task.Run(async() => { var latitude = 35.6585805; var longitude = 139.7454329; var geo = new NCMBGeoPoint(latitude, longitude); var item = new NCMBObject("Item"); item.Set("geo", geo); await item.Save(); Assert.NotNull(item.Get("objectId")); await item.Delete(); }).GetAwaiter().GetResult(); }
public void TestFetchOr() { Task.Run(async() => { for (var i = 0; i < 5; i++) { var item = new NCMBObject("QueryTest"); item.Set("message", "Test message"); item.Set("number", i); await item.Save(); } var q1 = new NCMBQuery("QueryTest"); var q2 = new NCMBQuery("QueryTest"); q1.EqualTo("number", 0); q2.EqualTo("number", 1); var query = new NCMBQuery("QueryTest"); query.Or(new NCMBQuery[2] { q1, q2 }); var items = await query.FetchAll(); Assert.AreEqual(2, items.Length); var num0 = items[0].Get("number") as JValue; var num1 = items[1].Get("number") as JValue; Assert.AreEqual(0, num0.ToObject <int>()); Assert.AreEqual(1, num1.ToObject <int>()); query = new NCMBQuery("QueryTest"); items = await query.FetchAll(); foreach (var item in items) { await item.Delete(); } }).GetAwaiter().GetResult(); }
public void TestSaveAndDeleteWithAclSync() { Task.Run(async() => { var message = "Hello, world"; var item = new NCMBObject("DataStoreTest"); item.Set("message", message); var acl = new NCMBAcl(); acl.SetPublicReadAccess(true); acl.SetPublicWriteAccess(false); acl.SetRoleReadAccess("admin", true); acl.SetRoleWriteAccess("admin", true); item.SetAcl(acl); await item.Save(); Assert.NotNull(item.Get("objectId")); Assert.AreEqual(item.Get("message").ToString(), message); }).GetAwaiter().GetResult(); }
public void TestRelationFetch() { Task.Run(async() => { var item1 = new NCMBObject("RelationTest"); await item1.Set("name", "item1").Save(); var item2 = new NCMBObject("RelationTest"); await item2.Set("name", "item2").Save(); var relation = new NCMBRelation(); relation.Add(item1).Add(item2); var item3 = new NCMBObject("RelationMaster"); await item3.Set("relation", relation).Save(); Assert.NotNull(item3.Get("objectId")); var query = new NCMBQuery("RelationTest"); var items = await query.RelatedTo(item3, "relation").FetchAll(); Assert.AreEqual(items.Length, 2); Assert.AreEqual(items[0].Get("objectId").ToString(), item1.Get("objectId").ToString()); }).GetAwaiter().GetResult(); }
public void TestSearchGeoPoints() { Task.Run(async() => { var text = File.ReadAllText("../../yamanote.json"); var json = JArray.Parse(text); foreach (var x in json) { var p = (JObject)x; var geo = new NCMBGeoPoint((double)p["latitude"], (double)p["longitude"]); var item = new NCMBObject("Station"); await item.Set("name", p["name"].ToString()).Set("geo", geo).Save(); } var query = new NCMBQuery("Station"); var geo1 = new NCMBGeoPoint(35.6585805, 139.7454329); var ary = await query.Limit(5).Near("geo", geo1).FetchAll(); Assert.AreEqual(5, ary.Length); Assert.AreEqual("浜松町", ((NCMBObject)ary[0]).Get("name").ToString()); var geo2 = new NCMBGeoPoint(35.6654861, 139.7684781); var geo3 = new NCMBGeoPoint(35.6799926, 139.7357476); query = new NCMBQuery("Station"); ary = await query.WithinSquare("geo", geo2, geo3).FetchAll(); Assert.AreEqual(2, ary.Length); query = new NCMBQuery("Station"); var stations = await query.Limit(100).FetchAll(); foreach (var station in stations) { await station.Delete(); } }).GetAwaiter().GetResult(); }