public void ReturnAnEquivalentPlayerJoinRequest() { var playerJoinRequest = new PlayerJoinRequest("Leader", "PIT", "type", new Dictionary <string, string> { { "cmf", "cmz" } }); playerJoinRequest.AssignMatch("deployment-id", "deployment-name"); var serializedPlayerJoinRequest = JsonConvert.SerializeObject(playerJoinRequest); var deserializedPlayerJoinRequest = JsonConvert.DeserializeObject <PlayerJoinRequest>(serializedPlayerJoinRequest); Assert.AreEqual(playerJoinRequest.Id, deserializedPlayerJoinRequest.Id); Assert.AreEqual(playerJoinRequest.PlayerIdentity, deserializedPlayerJoinRequest.PlayerIdentity); Assert.AreEqual(playerJoinRequest.PlayerIdentityToken, deserializedPlayerJoinRequest.PlayerIdentityToken); Assert.AreEqual(playerJoinRequest.DeploymentName, deserializedPlayerJoinRequest.DeploymentName); Assert.AreEqual(playerJoinRequest.DeploymentId, deserializedPlayerJoinRequest.DeploymentId); Assert.AreEqual(playerJoinRequest.Type, deserializedPlayerJoinRequest.Type); Assert.AreEqual(playerJoinRequest.State, deserializedPlayerJoinRequest.State); CollectionAssert.AreEquivalent(playerJoinRequest.Metadata, deserializedPlayerJoinRequest.Metadata); }
public void ReturnOperationWithResultIfMatched() { var joinReq = new PlayerJoinRequest("testplayer", "test-player-token", "open_world", null); joinReq.AssignMatch("1234", "deployment1234"); _memoryStoreClient.Setup(client => client.GetAsync <PlayerJoinRequest>("test_op")).ReturnsAsync(joinReq); _authClient.Setup(client => client.CreateLoginToken(new CreateLoginTokenRequest { DeploymentId = "1234", PlayerIdentityToken = "test-player-token" }, It.IsAny <CallSettings>())).Returns(new CreateLoginTokenResponse { LoginToken = "test-login-token" }); var deleted = new List <PlayerJoinRequest>(); _transaction.Setup(tx => tx.DeleteAll(It.IsAny <IEnumerable <Entry> >())) .Callback <IEnumerable <Entry> >(requests => deleted.AddRange(requests.Select(r => (PlayerJoinRequest)r))); var context = Util.CreateFakeCallContext("test_op", Pit); var resp = _service.GetOperation(new GetOperationRequest { Name = "test_op" }, context); Assert.That(resp.IsCompletedSuccessfully); Assert.AreEqual(StatusCode.OK, context.Status.StatusCode); var op = resp.Result; Assert.That(op.Done); var joinResponse = op.Response.Unpack <JoinResponse>(); Assert.AreEqual("deployment1234", joinResponse.DeploymentName); Assert.AreEqual("test-login-token", joinResponse.LoginToken); Assert.AreEqual("testplayer", deleted[0].PlayerIdentity); Assert.AreEqual("open_world", deleted[0].Type); }