public void CloudScript() { var getUrlTask = PlayFabClientAPI.GetCloudScriptUrlAsync(new GetCloudScriptUrlRequest()); WaitForResultSuccess(getUrlTask, "Failed to get LogicServerURL"); var request = new RunCloudScriptRequest(); request.ActionId = "helloWorld"; var cloudTask = PlayFabClientAPI.RunCloudScriptAsync(request); WaitForResultSuccess(cloudTask, "Failed to Execute CloudScript"); UUnitAssert.False(string.IsNullOrEmpty(cloudTask.Result.Result.ResultsEncoded), "Failed to Execute CloudScript"); // Get the helloWorld return message JObject jobj = cloudTask.Result.Result.Results as JObject; UUnitAssert.NotNull(jobj); JToken jtok; jobj.TryGetValue("messageValue", out jtok); UUnitAssert.NotNull(jtok); JValue jval = jtok as JValue; UUnitAssert.NotNull(jval); string actualMessage = jval.Value as string; UUnitAssert.StringEquals("Hello " + playFabId + "!", actualMessage); }
public void InvalidLogin() { // If the setup failed to log in a user, we need to create one. var request = new LoginWithEmailAddressRequest(); request.TitleId = PlayFabSettings.TitleId; request.Email = USER_EMAIL; request.Password = USER_PASSWORD + "INVALID"; PlayFabClientAPI.LoginWithEmailAddress(request, LoginCallback, SharedErrorCallback); WaitForApiCalls(); UUnitAssert.False(lastReceivedMessage.ToLower().Contains("successful"), lastReceivedMessage); UUnitAssert.True(lastReceivedMessage.ToLower().Contains("password"), lastReceivedMessage); }
public void CloudScript() { if (string.IsNullOrEmpty(Client.Settings.GetLogicURL())) { var getUrlTask = Client.GetCloudScriptUrlAsync(new ClientModels.GetCloudScriptUrlRequest()); try { getUrlTask.Wait(); } catch (Exception ex) { UUnitAssert.True(false, ex.Message); } UUnitAssert.False(string.IsNullOrEmpty(getUrlTask.Result), "Failed to get LogicServerURL"); UUnitAssert.False(string.IsNullOrEmpty(Client.Settings.GetLogicURL()), "Failed to get LogicServerURL"); } var request = new ClientModels.RunCloudScriptRequest(); request.ActionId = "helloWorld"; var cloudTask = Client.RunCloudScriptAsync(request); try { cloudTask.Wait(); } catch (Exception ex) { UUnitAssert.True(false, ex.Message); } UUnitAssert.NotNull(cloudTask.Result, "Failed to Execute CloudScript"); UUnitAssert.False(string.IsNullOrEmpty(cloudTask.Result.ResultsEncoded), "Failed to Execute CloudScript"); // Get the helloWorld return message JObject jobj = cloudTask.Result.Results as JObject; UUnitAssert.NotNull(jobj); JToken jtok; jobj.TryGetValue("messageValue", out jtok); UUnitAssert.NotNull(jtok); JValue jval = jtok as JValue; UUnitAssert.NotNull(jval); string actualMessage = jval.Value as string; UUnitAssert.Equals("Hello " + playFabId + "!", actualMessage); }
public void InvalidLogin() { // If the setup failed to log in a user, we need to create one. var task = Client.LoginWithEmailAddressAsync(Client.Settings.TitleId, USER_EMAIL, USER_PASSWORD); try { task.Wait(); } catch (Exception ex) { UUnitAssert.True(ex.Message.Contains("password")); } UUnitAssert.False(true, "This should be unreachable"); }
public void InvalidRegistration() { var expectedEmailMsg = "email address is not valid."; var expectedPasswordMsg = "password must be between"; var registerTask = Client.RegisterPlayFabUserAsync(Client.Settings.TitleId, "x", "x", "x"); try { registerTask.Wait(); } catch (Exception ex) { UUnitAssert.True(ex.InnerException.Message.ToLowerInvariant().Contains(expectedEmailMsg), "Expected an error about bad email address: " + ex.InnerException.Message); UUnitAssert.True(ex.InnerException.Message.ToLowerInvariant().Contains(expectedPasswordMsg), "Expected an error about bad password: "******"This should be unreachable"); }
public void UserStatisticsApi() { int testStatExpected, testStatActual; var getStatTask1 = Client.GetUserStatisticsAsync(); try { getStatTask1.Wait(); } catch (Exception ex) { UUnitAssert.True(false, ex.Message); } UUnitAssert.NotNull(getStatTask1.Result, "UserStatistics should have been retrieved from Api call"); if (!getStatTask1.Result.TryGetValue(TEST_STAT_NAME, out testStatExpected)) { testStatExpected = TEST_STAT_BASE; } testStatExpected = ((testStatExpected + 1) % TEST_STAT_BASE) + TEST_STAT_BASE; // This test is about the expected value changing (incrementing through from TEST_STAT_BASE to TEST_STAT_BASE * 2 - 1) var updateRequest = new ClientModels.UpdateUserStatisticsRequest(); updateRequest.UserStatistics = new Dictionary <string, int>(); updateRequest.UserStatistics[TEST_STAT_NAME] = testStatExpected; var updateTask = Client.UpdateUserStatisticsAsync(updateRequest); bool failed = false; string failedMessage = "UpdateStatistics should have failed"; try { updateTask.Wait(); // The update doesn't return anything, so can't test anything other than failure } catch (Exception ex) { failed = true; failedMessage = ex.Message; } // Test update result - no data returned, so error or no error, based on Title settings if (!TITLE_CAN_UPDATE_SETTINGS) { UUnitAssert.True(failed, failedMessage); } else { UUnitAssert.False(failed, failedMessage); } var getStatTask2 = Client.GetUserStatisticsAsync(); try { getStatTask2.Wait(); } catch (Exception ex) { UUnitAssert.True(false, ex.Message); } UUnitAssert.NotNull(getStatTask2.Result, "UserStatistics should have been retrieved from Api call"); getStatTask2.Result.TryGetValue(TEST_STAT_NAME, out testStatActual); UUnitAssert.Equals(testStatExpected, testStatActual); }