public override async Task <GetCustomSpecialistsResponse> GetCustomSpecialists(GetCustomSpecialistsRequest request, ServerCallContext context) { DbUserModel user = context.UserState["user"] as DbUserModel; if (user == null) { return new GetCustomSpecialistsResponse() { Status = ResponseFactory.createResponse(ResponseType.UNAUTHORIZED) } } ; // Search through all specialists for the search term. List <SpecialistConfigurationModel> results = (await SpecialistConfigurationModel.Search(request.SearchTerm)).Skip((int)request.PageNumber * 50).Take(50).ToList(); GetCustomSpecialistsResponse response = new GetCustomSpecialistsResponse() { Status = ResponseFactory.createResponse(ResponseType.SUCCESS), }; foreach (SpecialistConfigurationModel model in results) { response.CustomSpecialists.Add(model.SpecialistConfig); } return(response); }
public void PlayerCanViewCustomSpecialistAfterCreating() { String specName = "MyCustomSpecialist"; SubmitCustomSpecialistResponse response = submitCustomSpecialist(specName); string specUuid = response.SpecialistConfigurationId; GetCustomSpecialistsResponse specResponse = client.GetCustomSpecialists(new GetCustomSpecialistsRequest()); Assert.IsTrue(specResponse.CustomSpecialists.Count == 1); Assert.AreEqual(specUuid, specResponse.CustomSpecialists[0].Id); Assert.AreEqual(specName, specResponse.CustomSpecialists[0].SpecialistName); Assert.AreEqual(1, specResponse.CustomSpecialists[0].Priority); Assert.AreEqual(EffectModifier.Driller, specResponse.CustomSpecialists[0].SpecialistEffects[0].EffectModifier); // Ensure some of the specialist details are the same! }
public void CanViewSpecialistsCreatedByAnyPlayer() { String userOneSpecName = "UserOneSpecialists"; submitCustomSpecialist(userOneSpecName); authHelper.loginToAccount("userTwo"); String userTwoSpecialist = "MyCustomSpecialist"; submitCustomSpecialist(userTwoSpecialist); GetCustomSpecialistsResponse specResponse = client.GetCustomSpecialists(new GetCustomSpecialistsRequest()); Assert.IsTrue(specResponse.CustomSpecialists.Count == 2); Assert.IsTrue(specResponse.CustomSpecialists.Count(it => it.SpecialistName == userOneSpecName) == 1); Assert.IsTrue(specResponse.CustomSpecialists.Count(it => it.SpecialistName == userTwoSpecialist) == 1); Assert.IsTrue(specResponse.CustomSpecialists.Count(it => it.Creator.Username == "userOne") == 1); Assert.IsTrue(specResponse.CustomSpecialists.Count(it => it.Creator.Username == "userTwo") == 1); }