public void PutIdentityWithRemoveFieldsTest_Async() { CountDownLatch cd = new CountDownLatch(1); string unixTime = CurrentTimeMillis().ToString(); string username = "******" + unixTime; string email = username + "@kii.com"; string phone = "+874" + unixTime.Substring(unixTime.Length - 9, 9); KiiUser actual = null; UserFields userFields = new UserFields(); userFields.Country = "US"; userFields.Displayname = "disp"; userFields["birthday"] = "1978/7/22"; userFields["age"] = 30; KiiUser.RegisterAsPseudoUser(userFields, (KiiUser registeredUser, Exception e1) => { IdentityData.Builder builder = IdentityData.Builder.CreateWithName(username); builder.WithEmail(email); builder.WithPhone(phone); IdentityData identityData = builder.Build(); UserFields removeFields = new UserFields(); removeFields.RemoveDisplayname(); // remove displayname only local. removeFields.RemoveFromServer("birthday"); removeFields["newFields"] = "new!!"; registeredUser.PutIdentity(identityData, removeFields, "123ABC", (KiiUser user, Exception e2) => { actual = user; cd.Signal(); }); }); if (!cd.Wait(new TimeSpan(0, 0, 0, 10))) { Assert.Fail("Callback not fired."); } Assert.IsFalse(actual.IsPseudoUser); Assert.AreEqual(username, actual.Username); Assert.AreEqual(email, actual.Email); Assert.AreEqual(phone, actual.Phone); Assert.AreEqual("disp", actual.Displayname); Assert.AreEqual("US", actual.Country); Assert.IsFalse(actual.Has("birthday")); Assert.AreEqual(30, actual.GetInt("age")); }
public void RemoveAllTypeTest() { UserFields uf = new UserFields(); uf["field1"] = true; uf["field2"] = new byte[] { 0x00 }; uf["field3"] = 10; uf["field4"] = 10L; uf["field5"] = 10.01; uf["field6"] = "hoge"; uf["field7"] = new Uri("http://hoge.com/hoge"); uf["field8"] = new JsonObject("{}"); uf["field9"] = new JsonArray("[111,222]"); uf.Displayname = "Displayname1"; uf.Country = "US"; uf.Remove("field1"); uf.Remove("field2"); uf.Remove("field3"); uf.Remove("field4"); uf.Remove("field5"); uf.Remove("field6"); uf.Remove("field7"); uf.Remove("field8"); uf.Remove("field9"); uf.RemoveDisplayname(); uf.RemoveCountry(); Assert.IsFalse(uf.Has("field1")); Assert.IsFalse(uf.Has("field2")); Assert.IsFalse(uf.Has("field3")); Assert.IsFalse(uf.Has("field4")); Assert.IsFalse(uf.Has("field5")); Assert.IsFalse(uf.Has("field6")); Assert.IsFalse(uf.Has("field7")); Assert.IsFalse(uf.Has("field8")); Assert.IsFalse(uf.Has("field9")); Assert.IsNull(uf.Displayname); Assert.IsNull(uf.Country); }
public void PutIdentityWithRemoveFieldsTest() { string unixTime = CurrentTimeMillis().ToString(); string username = "******" + unixTime; string email = username + "@kii.com"; string phone = "+874" + unixTime.Substring(unixTime.Length - 9, 9); UserFields userFields = new UserFields(); userFields.Country = "US"; userFields.Displayname = "disp"; userFields["birthday"] = "1978/7/22"; userFields["age"] = 30; KiiUser.RegisterAsPseudoUser(userFields); IdentityData.Builder builder = IdentityData.Builder.CreateWithName(username); builder.WithEmail(email); builder.WithPhone(phone); IdentityData identityData = builder.Build(); UserFields removeFields = new UserFields(); removeFields.RemoveDisplayname(); // remove displayname only local. removeFields.RemoveFromServer("birthday"); removeFields["newFields"] = "new!!"; KiiUser.CurrentUser.PutIdentity(identityData, removeFields, "123ABC"); Assert.IsFalse(KiiUser.CurrentUser.IsPseudoUser); Assert.AreEqual(username, KiiUser.CurrentUser.Username); Assert.AreEqual(email, KiiUser.CurrentUser.Email); Assert.AreEqual(phone, KiiUser.CurrentUser.Phone); Assert.AreEqual("disp", KiiUser.CurrentUser.Displayname); Assert.AreEqual("US", KiiUser.CurrentUser.Country); Assert.IsFalse(KiiUser.CurrentUser.Has("birthday")); Assert.AreEqual(30, KiiUser.CurrentUser.GetInt("age")); }