public void Submit_PerformsCorrectRequest() { //setup var request = new SavedSearchCreateRequestStub("DevKey", "api.careerbuilder.com", "", "", 12345); var dummyApp = new SavedSearchCreate(); dummyApp = SetUpApp(dummyApp); //Mock var response = new RestResponse<SavedSearchCreateResponse> { Data = new SavedSearchCreateResponse(), ResponseStatus = ResponseStatus.Completed }; var restReq = new Mock<IRestRequest>(); restReq.Setup(x => x.AddBody(dummyApp)); var restClient = new Mock<IRestClient>(); restClient.SetupSet(x => x.BaseUrl = "https://api.careerbuilder.com/v2/SavedSearch/Create"); restClient.Setup(x => x.Execute<SavedSearchCreateResponse>(It.IsAny<IRestRequest>())).Returns(response); request.Request = restReq.Object; request.Client = restClient.Object; //Assertions SavedSearchCreateResponse rest = request.Submit(dummyApp); restReq.VerifyAll(); restClient.VerifyAll(); }
public SavedSearchCreateResponse Submit(SavedSearchCreate search) { _request.AddBody(search); base.BeforeRequest(); search.DeveloperKey = DeveloperKey; IRestResponse<SavedSearchCreateResponse> response = _client.Execute<SavedSearchCreateResponse>(_request); CheckForErrors(response); return response.Data; }
private SavedSearchCreate SetUpApp(SavedSearchCreate dummyApp) { dummyApp.HostSite = "US"; dummyApp.SearchName = "lotsloc"; dummyApp.IsDailyEmail = "none"; dummyApp.ExternalUserID = "*****@*****.**"; dummyApp.DeveloperKey = "WDJ16BN6CQB69FP18Y8F"; dummyApp.SearchParameters = new SearchParameters(); dummyApp.SearchParameters.Radius = 30; dummyApp.SearchParameters.PayHigh = 70; dummyApp.SearchParameters.PayLow = 40; dummyApp.SearchParameters.PostedWithin = 30; dummyApp.SearchParameters.PayInfoOnly = false; dummyApp.SearchParameters.Location = "Chicago, Il, Atlanta, Ga, New York, Ny"; dummyApp.SearchParameters.OrderDirection = "ascending"; dummyApp.SearchParameters.SpecificEducation = false; dummyApp.SearchParameters.ExcludeNational = false; dummyApp.SearchParameters.OrderBy = "Pay"; return dummyApp; }
/// <summary> /// create a saved search /// </summary> /// <param name="app">the saved search that is wanting to be saved</param> /// <returns></returns> public SavedSearchCreateResponse CreateSavedSearch(SavedSearchCreate app) { var req = new SavedSearchCreateRequest(_Settings); WireBeforeRequestEvents(req); WireAfterRequestEvents(req); return req.Submit(app); }