public void ValidateRequest(CapitalizeRequest request) { if (request.firstCharOnly && request.stringToModify.StartsWith(' ') && !request.trimPrecedingWhiteSpace) { throw new Exception("Cannot capitalize the first char if it is a space. Set Trim Preceding White Space true, or remove the preceding spaces from the request"); } }
public CapitalizeResponse ProccessRequest(CapitalizeRequest request) { CapitalizeResponse response = new CapitalizeResponse(); response.originalString = request.stringToModify; string firstChar; string stringInProgress = request.stringToModify; if (request.trimPrecedingWhiteSpace) { stringInProgress = stringInProgress.TrimStart(); } if (request.trimTrailingWhiteSpace) { stringInProgress = stringInProgress.TrimEnd(); } if (request.firstCharOnly) { firstChar = stringInProgress.Substring(0, 1); firstChar = firstChar.ToUpper(); stringInProgress = stringInProgress.Substring(1); stringInProgress = firstChar + stringInProgress; } else { stringInProgress = stringInProgress.ToUpper(); } response.modifiedString = stringInProgress; return(response); }
// // GET: /Foo/ public ActionResult Index() { var request = new CapitalizeRequest(); request.Blob = "bidule"; var response = dispatcher.Execute(request); return View(); }
public void AsyncRequestDispatcher_with_FakeServiceRegistry() { // Arrange var serviceRegistry = MockRepository.GenerateStrictMock<IServiceRegistry>(); serviceRegistry.Stub(s => s.GetAsyncService<CapitalizeRequest, CapitalizeResponse>()) .Return(new CapitalizationService()); var sut = new AsyncRequestDispatcher(serviceRegistry); var request = new CapitalizeRequest { Blob = "this is lowercase" }; // Act var response = sut.Execute(request).Result; // Assert Assert.AreEqual("THIS IS LOWERCASE", response.CapitalizedBlob); }
public void AsyncRequestDispatcher_with_Unity_Capitalize() { // Arrange using (var container = new UnityContainer()) { container.RegisterType<IAsyncExecutableService<CapitalizeRequest, CapitalizeResponse>, CapitalizationService>(); var serviceRegistry = new UnityServiceRegistry(container); var sut = new AsyncRequestDispatcher(serviceRegistry); var request = new CapitalizeRequest { Blob = "this is lowercase" }; // Act var response = sut.Execute(request).Result; // Assert Assert.AreEqual("THIS IS LOWERCASE", response.CapitalizedBlob); } }
public IActionResult CapitalizeControl([FromBody] CapitalizeRequest request) { CapitalizeResponse capResonse; try { _cap.ValidateRequest(request); string[] words = request.stringToModify.Split(' '); Thread thread1 = new Thread(() => ControllerHelperFunctions.databaseWordTransaction(words, _DB)); thread1.Start(); capResonse = _cap.ProccessRequest(request); } catch (Exception e) { return(StatusCode(500, e.Message)); } return(StatusCode(200, capResonse)); }
public void Setup() { request = new CapitalizeRequest(); cap = new Capitalize(); response = new CapitalizeResponse(); }