public ActionResult Index(PalindromeViewModel viewModel) { if (!ModelState.IsValid) { viewModel.DisplayResult = false; return(View(viewModel)); } viewModel.DisplayResult = true; viewModel.ReverseString = GetReverseNumber(viewModel.OriginalNumber); viewModel.IsPalindrome = (viewModel.OriginalNumber == viewModel.ReverseString); return(View(viewModel)); }
public JsonResult Post([FromBody] PalindromeViewModel input) { try { _repo.CreateNew(input); return(new JsonResult("Saved")); } catch (Exception ex) { return(new JsonResult("An error Occurred" + ex.Message)); } }
public void CreateNew(PalindromeViewModel viewmodel) { if (FetchExistingRecordByPalindrome(viewmodel.PalindromeValue) == null) { var palindrome = new Models.Palindrome() { PalindromeValue = viewmodel.PalindromeValue, CreateTS = DateTime.Now, PalindromeId = Guid.NewGuid() }; _datacontext.Create(palindrome); } }
public void Create_Action_Returns_true_false() { //Arrange var input = new PalindromeViewModel { PalindromeValue = "test" }; //Act var returnvalue = controller.Post(input); //Assert Assert.AreEqual(returnvalue.GetType(), typeof(bool)); }
public void Create_Action_Returns_JsonResult() { //Arrange var input = new PalindromeViewModel { PalindromeValue = "test" }; //Act var returnvalue = controller.Post(input); //Assert Assert.IsNotNull(JsonConvert.SerializeObject(returnvalue)); }
public void Symmetric_Numeric_Input_should_Pass() { //Arrange var viewmodel = new PalindromeViewModel() { PalindromeValue = "0wasitacatisaw0" }; // Act var isPalindrome = businessRepo.IsPalindrome(viewmodel); // Assert Assert.IsTrue(isPalindrome); }
public void XML_Input_should_Not_be_processed() { //Arrange var viewmodel = new PalindromeViewModel() { PalindromeValue = "<wasitacatisaw></wasitacatisaw>" }; // Act var isPalindrome = businessRepo.IsPalindrome(viewmodel); // Assert Assert.IsTrue(isPalindrome); }
public void Numeric_Characters_Pallindrome_Should_Be_Recognised() { //Arrange var viewmodel = new PalindromeViewModel() { PalindromeValue = "WasItAC76767@atISaw" }; // Act var isPalindrome = businessRepo.IsPalindrome(viewmodel); // Assert Assert.IsFalse(isPalindrome); }
public void Mixed_Case_Pallindrome_Should_Be_Recognised() { //Arrange var viewmodel = new PalindromeViewModel() { PalindromeValue = "WasItACatISaw" }; // Act var isPalindrome = businessRepo.IsPalindrome(viewmodel); // Assert Assert.IsTrue(isPalindrome); }
public void EmptyInputShouldReturnFalse() { //Arrange var viewmodel = new PalindromeViewModel() { PalindromeValue = "" }; // Act var isPalindrome = businessRepo.IsPalindrome(viewmodel); // Assert Assert.IsFalse(isPalindrome); }
public bool IsPalindrome(PalindromeViewModel model) { if (string.IsNullOrWhiteSpace(model.PalindromeValue) || model.PalindromeValue.Length < 3) { return(false); } var input = model.PalindromeValue; var arr = input.ToCharArray(); arr = Array.FindAll(arr, (c => (char.IsLetterOrDigit(c)))); var cleanedInput = new string(arr); return(IsPalindrome(cleanedInput)); }
public JsonResult <PalindromeViewModel> Get(int minLength = 5, int maxLength = 10, int maxCapacity = 10) { PalindromeViewModel.Instance.IsGenerated = true; PalindromeViewModel returnValue = null; while (PalindromeViewModel.Instance.IsGenerated == true) { returnValue = _palindromefactory.PopulatePalindromeString(minLength, maxLength, maxCapacity); //I added sleep so you can see the palindrome is generated, because if not, //it's generated really fast to the client view Thread.Sleep(1000); Hub.Clients.All.populateOnePalindrome(returnValue); } return(Json(returnValue)); }
public IActionResult Post(PalindromeViewModel palindromeViewModel) { bool isPalindrome = _palindromeService.IsPalindrome(palindromeViewModel.Word); return(Ok(isPalindrome)); }
public bool Post([FromBody] PalindromeViewModel model) { return(_businessRepo.IsPalindrome(model)); }
public async Task <PalindromeViewModel> AddPalindrome(PalindromeViewModel viewModel) { var uri = $"{_remoteServiceBaseUrl}"; return(await PostAsync <PalindromeViewModel>(uri, viewModel)); }