public void BlockingAPlayerAfterSendingThemAFriendRequestRemovesTheFriendRequest() { authHelper.loginToAccount("userOne"); SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = authHelper.getAccountId("userTwo") }; SendFriendRequestResponse response = client.SendFriendRequest(request); Assert.AreEqual(response.Status.IsSuccess, true); BlockPlayerRequest blockRequest = new BlockPlayerRequest() { UserIdToBlock = authHelper.getAccountId("userTwo") }; client.BlockPlayer(blockRequest); authHelper.loginToAccount("userTwo"); // Make sure the players are not friends. ViewFriendRequestsResponse blockFriendListResponse = client.ViewFriendRequests(new ViewFriendRequestsRequest()); Assert.AreEqual(blockFriendListResponse.Status.IsSuccess, true); Assert.AreEqual(0, blockFriendListResponse.IncomingFriends.Count); }
public void PlayerCanRemoveAFriendRequest() { authHelper.loginToAccount("userOne"); SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = authHelper.getAccountId("userTwo") }; SendFriendRequestResponse response = client.SendFriendRequest(request); Assert.AreEqual(response.Status.IsSuccess, true); authHelper.loginToAccount("userTwo"); DenyFriendRequestRequest friendRequest = new DenyFriendRequestRequest() { FriendId = authHelper.getAccountId("userOne"), }; DenyFriendRequestResponse acceptResponse = client.DenyFriendRequest(friendRequest); Assert.AreEqual(acceptResponse.Status.IsSuccess, true); ViewFriendRequestsResponse friendResponse = client.ViewFriendRequests(new ViewFriendRequestsRequest()); Assert.AreEqual(friendResponse.Status.IsSuccess, true); Assert.AreEqual(0, friendResponse.IncomingFriends.Count); }
public void PlayerCannotGetAFriendRequestFromABlockedPlayer() { authHelper.loginToAccount("userOne"); BlockPlayerRequest blockPlayerRequest = new BlockPlayerRequest() { UserIdToBlock = authHelper.getAccountId("userTwo") }; client.BlockPlayer(blockPlayerRequest); authHelper.loginToAccount("userTwo"); SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = authHelper.getAccountId("userOne") }; var exception = client.SendFriendRequest(request); Assert.AreEqual(exception.Status.IsSuccess, false); Assert.AreEqual(exception.Status.Detail, ResponseType.PLAYER_IS_BLOCKED.ToString()); authHelper.loginToAccount("userOne"); var friendResponse = client.ViewFriendRequests(new ViewFriendRequestsRequest()); Assert.AreEqual(friendResponse.Status.IsSuccess, true); Assert.AreEqual(0, friendResponse.IncomingFriends.Count); }
public void OriginalPlayerCanViewFriendAfterOtherPlayerAcceptsRequest() { authHelper.loginToAccount("userOne"); SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = authHelper.getAccountId("userTwo") }; SendFriendRequestResponse response = client.SendFriendRequest(request); Assert.AreEqual(response.Status.IsSuccess, true); authHelper.loginToAccount("userTwo"); AcceptFriendRequestRequest friendRequest = new AcceptFriendRequestRequest() { FriendId = authHelper.getAccountId("userOne"), }; AcceptFriendRequestResponse acceptResponse = client.AcceptFriendRequest(friendRequest); Assert.AreEqual(acceptResponse.Status.IsSuccess, true); authHelper.loginToAccount("userOne"); ViewFriendsResponse friendResponse = client.ViewFriends(new ViewFriendsRequest()); Assert.AreEqual(friendResponse.Status.IsSuccess, true); Assert.AreEqual(1, friendResponse.Friends.Count); Assert.IsTrue(friendResponse.Friends.Any((friend) => friend.Id == authHelper.getAccountId("userTwo"))); }
public void PlayerCanSendFriendRequestToOtherPlayer() { SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = authHelper.getAccountId("userTwo") }; SendFriendRequestResponse response = client.SendFriendRequest(request); Assert.AreEqual(response.Status.IsSuccess, true); }
public void BlockingAPlayerRemovesThemAsAFriend() { authHelper.loginToAccount("userOne"); SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = authHelper.getAccountId("userTwo") }; SendFriendRequestResponse response = client.SendFriendRequest(request); Assert.AreEqual(response.Status.IsSuccess, true); authHelper.loginToAccount("userTwo"); AcceptFriendRequestRequest friendRequest = new AcceptFriendRequestRequest() { FriendId = authHelper.getAccountId("userOne"), }; AcceptFriendRequestResponse acceptResponse = client.AcceptFriendRequest(friendRequest); Assert.AreEqual(acceptResponse.Status.IsSuccess, true); ViewFriendsResponse friendResponse = client.ViewFriends(new ViewFriendsRequest()); Assert.AreEqual(friendResponse.Status.IsSuccess, true); Assert.AreEqual(1, friendResponse.Friends.Count); Assert.IsTrue(friendResponse.Friends.Any((friend) => friend.Id == authHelper.getAccountId("userOne"))); BlockPlayerRequest blockRequest = new BlockPlayerRequest() { UserIdToBlock = authHelper.getAccountId("userOne") }; BlockPlayerResponse blockResponse = client.BlockPlayer(blockRequest); Assert.AreEqual(blockResponse.Status.IsSuccess, true); // Make sure the players are not friends. ViewFriendsResponse blockFriendListResponse = client.ViewFriends(new ViewFriendsRequest()); Assert.AreEqual(blockFriendListResponse.Status.IsSuccess, true); Assert.AreEqual(0, blockFriendListResponse.Friends.Count); authHelper.loginToAccount("userOne"); // Make sure the players are not friends. ViewFriendsResponse blockFriendListResponseUserOne = client.ViewFriends(new ViewFriendsRequest()); Assert.AreEqual(blockFriendListResponseUserOne.Status.IsSuccess, true); Assert.AreEqual(0, blockFriendListResponseUserOne.Friends.Count); }
public override async Task <SendFriendRequestResponse> SendFriendRequest(SendFriendRequestRequest request, ServerCallContext context) { DbUserModel dbUserModel = context.UserState["user"] as DbUserModel; if (dbUserModel == null) { return new SendFriendRequestResponse() { Status = ResponseFactory.createResponse(ResponseType.UNAUTHORIZED) } } ; DbUserModel friend = await DbUserModel.GetUserFromGuid(request.FriendId); if (friend == null) { return new SendFriendRequestResponse() { Status = ResponseFactory.createResponse(ResponseType.PLAYER_DOES_NOT_EXIST) } } ; if (await friend.HasFriendRequestFrom(dbUserModel)) { return new SendFriendRequestResponse() { Status = ResponseFactory.createResponse(ResponseType.DUPLICATE) } } ; if (await friend.IsBlocked(dbUserModel) || await dbUserModel.IsBlocked(friend)) { return new SendFriendRequestResponse() { Status = ResponseFactory.createResponse(ResponseType.PLAYER_IS_BLOCKED) } } ; // Add request to the other player. await friend.AddFriendRequestFrom(dbUserModel); return(new SendFriendRequestResponse() { Status = ResponseFactory.createResponse(ResponseType.SUCCESS) }); }
public void PlayerCannotSendFriendRequestToInvalidPlayerId() { authHelper.loginToAccount("userOne"); SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = "asdfasdfasdf" }; var exception = client.SendFriendRequest(request); Assert.AreEqual(exception.Status.IsSuccess, false); Assert.AreEqual(exception.Status.Detail, ResponseType.PLAYER_DOES_NOT_EXIST.ToString()); }
public void PlayerCannotSendMultipleFriendRequests() { authHelper.loginToAccount("userOne"); SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = authHelper.getAccountId("userTwo") }; SendFriendRequestResponse response = client.SendFriendRequest(request); Assert.AreEqual(response.Status.IsSuccess, true); var errorResponse = client.SendFriendRequest(request); Assert.AreEqual(errorResponse.Status.IsSuccess, false); Assert.AreEqual(errorResponse.Status.Detail, ResponseType.DUPLICATE.ToString()); }
public void WhenAPlayerGetsAFriendRequestTheyCanSeeIt() { authHelper.loginToAccount("userOne"); SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = authHelper.getAccountId("userTwo") }; SendFriendRequestResponse response = client.SendFriendRequest(request); Assert.AreEqual(response.Status.IsSuccess, true); authHelper.loginToAccount("userTwo"); ViewFriendRequestsResponse friendRequestresponse = client.ViewFriendRequests(new ViewFriendRequestsRequest()); Assert.AreEqual(friendRequestresponse.Status.IsSuccess, true); Assert.AreEqual(1, friendRequestresponse.IncomingFriends.Count); Assert.IsTrue(friendRequestresponse.IncomingFriends.Any((user) => user.Id == authHelper.getAccountId("userOne"))); }
public void PlayerCannotSendAFriendRequestToABlockedPlayer() { authHelper.loginToAccount("userOne"); BlockPlayerRequest blockPlayerRequest = new BlockPlayerRequest() { UserIdToBlock = authHelper.getAccountId("userTwo") }; client.BlockPlayer(blockPlayerRequest); SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = authHelper.getAccountId("userTwo") }; var exception = client.SendFriendRequest(request); Assert.AreEqual(exception.Status.IsSuccess, false); Assert.AreEqual(exception.Status.Detail, ResponseType.PLAYER_IS_BLOCKED.ToString()); }
public void PlayerCanAcceptAFriendRequest() { authHelper.loginToAccount("userOne"); SendFriendRequestRequest request = new SendFriendRequestRequest() { FriendId = authHelper.getAccountId("userTwo") }; SendFriendRequestResponse response = client.SendFriendRequest(request); Assert.AreEqual(response.Status.IsSuccess, true); authHelper.loginToAccount("userTwo"); AcceptFriendRequestRequest friendRequest = new AcceptFriendRequestRequest() { FriendId = authHelper.getAccountId("userOne"), }; AcceptFriendRequestResponse acceptResponse = client.AcceptFriendRequest(friendRequest); Assert.AreEqual(acceptResponse.Status.IsSuccess, true); }