public void Test_UserNotFound()
        {
            string identifier = "*****@*****.**";

            client.AddResponse(new NotFoundException("", null, "", NotFoundException.Reason.USER_NOT_FOUND));
            KiiUser.ResetPassword(identifier, KiiUser.NotificationMethod.SMS);
        }
        public void Test_UserNotHasEmail()
        {
            string identifier = "*****@*****.**";

            client.AddResponse(new ConflictException("", null, "", ConflictException.Reason.INVALID_STATUS));
            KiiUser.ResetPassword(identifier, KiiUser.NotificationMethod.EMAIL);
        }
        public void Test_BadRequest()
        {
            string identifier = "400@kii@com";

            client.AddResponse(new BadRequestException("", null, "", BadRequestException.Reason.INVALID_JSON));
            KiiUser.ResetPassword(identifier, KiiUser.NotificationMethod.SMS);
        }
Beispiel #4
0
        public void Test_0501_ResetPassword_phone()
        {
            this.mockClient.AddResponse(204, "");
            // reset password
            Exception exp = null;

            KiiUser.ResetPassword("+819011112222", (Exception e) => {
                exp = e;
            });
            Assert.IsInstanceOfType(typeof(ArgumentException), exp);
        }
Beispiel #5
0
        public void Test_0503_ResetPassword_server_error()
        {
            this.mockClient.AddResponse(new CloudException(400, "{}"));
            Exception exp = null;

            // reset password
            KiiUser.ResetPassword("*****@*****.**", (Exception e) => {
                exp = e;
            });
            Assert.IsInstanceOfType(typeof(CloudException), exp);
        }
Beispiel #6
0
        public void Test_0502_ResetPassword_null()
        {
            this.mockClient.AddResponse(204, "");

            Exception exp = null;

            // reset password
            KiiUser.ResetPassword(null, (Exception e) => {
                exp = e;
            });
            Assert.IsInstanceOfType(typeof(ArgumentException), exp);
        }
        public void Test_IdentifyByGlobalPhoneViaEmail()
        {
            string identifier = "+819011112222";

            client.AddResponse(204, null);
            KiiUser.ResetPassword(identifier, KiiUser.NotificationMethod.EMAIL);

            Assert.AreEqual(KiiHttpMethod.POST, client.RequestMethod [0]);
            Assert.AreEqual("https://api.kii.com/api/apps/appId/users/" + Uri.EscapeUriString("PHONE:" + identifier) + "/password/request-reset", client.RequestUrl [0]);
            Assert.AreEqual("{\"notificationMethod\":\"EMAIL\"}", client.RequestBody[0]);
            Assert.AreEqual("application/vnd.kii.ResetPasswordRequest+json", client.RequestHeader[0]["content-type"]);
        }
Beispiel #8
0
        public void Test_0500_ResetPassword_email()
        {
            // set response
            this.mockClient.AddResponse(204, "");

            Exception exp = null;

            // reset password
            KiiUser.ResetPassword("*****@*****.**", (Exception e) => {
                exp = e;
            });
            Assert.IsNull(exp);
        }
        public void Test_IdentifyByPhoneViaSmsPin()
        {
            string identifier = "PHONE:+819011112222";

            identifier = Uri.EscapeUriString(identifier);
            client.AddResponse(204, null);
            KiiUser.ResetPassword(identifier, KiiUser.NotificationMethod.SMS_PIN);

            Assert.AreEqual(KiiHttpMethod.POST, client.RequestMethod [0]);
            Assert.AreEqual("https://api.kii.com/api/apps/appId/users/" + identifier + "/password/request-reset", client.RequestUrl [0]);
            Assert.AreEqual("{\"notificationMethod\":\"SMS\",\"smsResetMethod\":\"PIN\"}", client.RequestBody[0]);
            Assert.AreEqual("application/vnd.kii.ResetPasswordRequest+json", client.RequestHeader[0]["content-type"]);
        }
        public void Test_0503_ResetPassword_server_error()
        {
            Kii.Initialize("appId", "appKey", Kii.Site.US);
            MockHttpClientFactory factory = new MockHttpClientFactory();

            Kii.HttpClientFactory = factory;

            // set response
            MockHttpClient client = factory.Client;

            client.AddResponse(new CloudException(400, "{}"));

            // reset password
            KiiUser.ResetPassword("*****@*****.**");
        }
        public void Test_0502_ResetPassword_null()
        {
            Kii.Initialize("appId", "appKey", Kii.Site.US);
            MockHttpClientFactory factory = new MockHttpClientFactory();

            Kii.HttpClientFactory = factory;

            // set response
            MockHttpClient client = factory.Client;

            client.AddResponse(204, "");

            // reset password
            KiiUser.ResetPassword(null);
        }
        public void ResetPasswordViaEmailTest()
        {
            CountDownLatch cd = new CountDownLatch(1);
            Exception      ex = null;

            KiiUser.ResetPassword(this.phone, KiiUser.NotificationMethod.EMAIL, (Exception e) => {
                ex = e;
                cd.Signal();
            });
            if (!cd.Wait(new TimeSpan(0, 0, 0, 3)))
            {
                Assert.Fail("Callback not fired.");
            }
            Assert.IsNull(ex);
        }
Beispiel #13
0
    void PerformResetPassword(string username)
    {
        message       = "Resetting password...";
        ButtonEnabled = false;

        KiiUser.ResetPassword(username, (Exception e) =>
        {
            ButtonEnabled = true;
            if (e != null)
            {
                message = "Failed to reset password " + e.ToString();
                return;
            }
            message = "Reset Password succeeded";
        });
    }
Beispiel #14
0
        public void Test_ResetPassword()
        {
            ArrayList errors = new ArrayList();

            for (int i = 0; i < TESTCASES.Length; i++)
            {
                TestCase tc = TESTCASES [i];
                if (tc.ExpectedResult)
                {
                    KiiUser.ResetPassword(tc.Identifier, (Exception e) => {
                        if (e != null)
                        {
                            errors.Add("TestCase : " + i + " identifier : "
                                       + tc.Identifier + " message :" + e.Message);
                        }
                    });
                }
                else
                {
                    KiiUser.ResetPassword(tc.Identifier, (Exception e) => {
                        if (e == null)
                        {
                            // error if exception is not thrown.
                            errors.Add("TestCase : " + i + " identifier : "
                                       + tc.Identifier);
                        }
                        else if (!e.GetType().IsAssignableFrom(typeof(ArgumentException)))
                        {
                            errors.Add("TestCase : " + i + " identifier : "
                                       + tc.Identifier + " message :" + e.Message);
                        }
                    });
                }
            }
            if (errors.Count > 0)
            {
                StringBuilder builder = new StringBuilder(
                    "One or more case failed. Messages : \n");
                foreach (String msg in errors)
                {
                    builder.Append(msg + "\n");
                }
                Assert.Fail(builder.ToString());
            }
        }
        public void Test_IdentifyIsNull_Async()
        {
            CountDownLatch cd = new CountDownLatch(1);

            client.AddResponse(204, null);
            Exception ex = null;

            KiiUser.ResetPassword(null, KiiUser.NotificationMethod.SMS, (Exception e) => {
                ex = e;
                cd.Signal();
            });
            if (!cd.Wait(new TimeSpan(0, 0, 0, 3)))
            {
                Assert.Fail("Callback not fired.");
            }
            Assert.IsNotNull(ex);
            Assert.IsTrue(ex is ArgumentException);
        }
        public void Test_UserNotFound_Async()
        {
            CountDownLatch cd         = new CountDownLatch(1);
            string         identifier = "*****@*****.**";

            client.AddResponse(new NotFoundException("", null, "", NotFoundException.Reason.USER_NOT_FOUND));
            Exception ex = null;

            KiiUser.ResetPassword(identifier, KiiUser.NotificationMethod.SMS, (Exception e) => {
                ex = e;
                cd.Signal();
            });
            if (!cd.Wait(new TimeSpan(0, 0, 0, 3)))
            {
                Assert.Fail("Callback not fired.");
            }
            Assert.IsNotNull(ex);
            Assert.IsTrue(ex is NotFoundException);
        }
        public void Test_BadRequest_Async()
        {
            CountDownLatch cd         = new CountDownLatch(1);
            string         identifier = "400@kii@com";

            client.AddResponse(new BadRequestException("", null, "", BadRequestException.Reason.INVALID_JSON));
            Exception ex = null;

            KiiUser.ResetPassword(identifier, KiiUser.NotificationMethod.SMS, (Exception e) => {
                ex = e;
                cd.Signal();
            });
            if (!cd.Wait(new TimeSpan(0, 0, 0, 3)))
            {
                Assert.Fail("Callback not fired.");
            }
            Assert.IsNotNull(ex);
            Assert.IsTrue(ex is BadRequestException);
        }
Beispiel #18
0
        public void Test_ResetPassword()
        {
            ArrayList errors = new ArrayList();

            for (int i = 0; i < TESTCASES.Length; i++)
            {
                TestCase tc = TESTCASES [i];
                if (tc.ExpectedResult)
                {
                    try {
                        KiiUser.ResetPassword(tc.Identifier);
                    } catch (Exception e) {
                        errors.Add("TestCase : " + i + " identifier : "
                                   + tc.Identifier + " message :" + e.Message);
                    }
                }
                else
                {
                    try {
                        KiiUser.ResetPassword(tc.Identifier);
                        // error if exception is not thrown.
                        errors.Add("TestCase : " + i + " identifier : "
                                   + tc.Identifier);
                    } catch (ArgumentException) {
                        // passed.
                    } catch (Exception e) {
                        errors.Add("TestCase : " + i + " identifier : "
                                   + tc.Identifier + " message :" + e.Message);
                    }
                }
            }
            if (errors.Count > 0)
            {
                StringBuilder builder = new StringBuilder(
                    "One or more case failed. Messages : \n");
                foreach (String msg in errors)
                {
                    builder.Append(msg + "\n");
                }
                Assert.Fail(builder.ToString());
            }
        }
        public void Test_IdentifyByIdViaEmail_Async()
        {
            CountDownLatch cd         = new CountDownLatch(1);
            string         identifier = "USERID-00001-00001";

            identifier = Uri.EscapeUriString(identifier);
            client.AddResponse(204, null);
            Exception ex = null;

            KiiUser.ResetPassword(identifier, KiiUser.NotificationMethod.EMAIL, (Exception e) => {
                ex = e;
                cd.Signal();
            });
            if (!cd.Wait(new TimeSpan(0, 0, 0, 3)))
            {
                Assert.Fail("Callback not fired.");
            }

            Assert.IsNull(ex);
            Assert.AreEqual(KiiHttpMethod.POST, client.RequestMethod [0]);
            Assert.AreEqual("https://api.kii.com/api/apps/appId/users/" + identifier + "/password/request-reset", client.RequestUrl [0]);
            Assert.AreEqual("{\"notificationMethod\":\"EMAIL\"}", client.RequestBody[0]);
            Assert.AreEqual("application/vnd.kii.ResetPasswordRequest+json", client.RequestHeader[0]["content-type"]);
        }
 public void Test_IdentifyIsNull()
 {
     client.AddResponse(204, null);
     KiiUser.ResetPassword(null, KiiUser.NotificationMethod.SMS);
 }
 public void Step01_ResetPasswordViaSmsPin()
 {
     this.user = KiiUser.BuilderWithName("user" + CurrentTimeMillis()).SetGlobalPhone(this.realPhoneNumber).Build();
     this.user.Register("password");
     KiiUser.ResetPassword(this.realPhoneNumber, KiiUser.NotificationMethod.SMS_PIN);
 }