/// <summary> /// RandomGeneratorwithColorCodes /// </summary> /// <param name="noOfNumbers"></param> /// <returns></returns> public GeneratedRandonNumber RandomGeneratorwithColorCodes(int noOfNumbers) { //Init the GeneratedRandonNumber GeneratedRandonNumber generatedRandonNumber = new GeneratedRandonNumber(); generatedRandonNumber.GeneratorDateTime = DateTime.Now; List <NumberInfo> listofNumbers = new List <NumberInfo>(); //Generates the Random number Random RandomClass = new Random(); int randomNumber; for (int i = 0; i < noOfNumbers; i++) { do { randomNumber = RandomClass.Next(1, RandonNumberLimit); } while (listofNumbers.Any(n => n.Number == randomNumber)); listofNumbers.Add(new NumberInfo { Number = randomNumber, ColorName = generatedRandonNumber.ColorCodingRange.FindLast(c => randomNumber >= c.LowerLimit).Color }); } // orders the random numbers generatedRandonNumber.RandonNumbers = listofNumbers.OrderBy(n => n.Number).Select(n => new NumberInfo { Number = n.Number, ColorName = n.ColorName }).ToList(); return(generatedRandonNumber); }
public bool SaveRandomNumber(GeneratedRandonNumber generatedRandonNumber) { return(this.randomNumberRepository.SaveRandomNumber(new RandomNumber { GeneratorDateTime = generatedRandonNumber.GeneratorDateTime, Numbers = generatedRandonNumber.RandonNumbers.Select(r => new FocusRandomGenerator.DataEntities.NumberInfo { Number = r.Number, ColorCodingId = r.ColorId, }).ToList(), })); }
public GeneratedRandonNumber GetCustomNumbersByColor(int id) { string address = $"/api/RandomGenerator/CustomNumbersByColor?id={id}"; var result = new GeneratedRandonNumber(); var response = HttpGet(address); if (response.IsSuccessStatusCode) { var readTask = response.Content.ReadAsAsync <GeneratedRandonNumber>(); readTask.Wait(); result = readTask.Result; } result.NoofRandomnumbers = result.RandonNumbers.Count(); return(result); }
/// <summary> /// RandomGeneratorwithColorCodes /// </summary> /// <param name="noOfNumbers"></param> /// <returns></returns> public GeneratedRandonNumber RandomGeneratorwithColorCodes(int noOfNumbers) { List <Models.NumberInfo> listofNumbers = new List <Models.NumberInfo>(); var colorCodings = this.randomNumberRepository.GetColorCoding(); //Generates the Random number Random RandomClass = new Random(); int randomNumber; for (int i = 0; i < noOfNumbers; i++) { do { randomNumber = RandomClass.Next(1, RandonNumberLimit); }while (listofNumbers.Any(n => n.Number == randomNumber)); var colorInfo = colorCodings.FindLast(c => randomNumber >= c.LowerLimit); listofNumbers.Add(new Models.NumberInfo { Number = randomNumber, ColorName = colorInfo.Color, ColorId = colorInfo.Id });; } //Init the GeneratedRandonNumber GeneratedRandonNumber generatedRandonNumber = new GeneratedRandonNumber(); generatedRandonNumber.GeneratorDateTime = DateTime.Now; // orders the random numbers generatedRandonNumber.RandonNumbers = listofNumbers.OrderBy(n => n.Number).Select(n => new Models.NumberInfo { Number = n.Number, ColorName = n.ColorName, ColorId = n.ColorId }).ToList(); SaveRandomNumber(generatedRandonNumber); return(generatedRandonNumber); }
public void SaveRandomNumberTest() { var randomNumber = new GeneratedRandonNumber { Id = 1, GeneratorDateTime = DateTime.UtcNow, RandonNumbers = new List <Models.NumberInfo> { new Models.NumberInfo { Id = 1, Number = 6, ColorCodingId = 1 }, new Models.NumberInfo { Id = 1, Number = 16, ColorCodingId = 2 }, new Models.NumberInfo { Id = 1, Number = 26, ColorCodingId = 3 }, new Models.NumberInfo { Id = 1, Number = 36, ColorCodingId = 4 }, new Models.NumberInfo { Id = 1, Number = 45, ColorCodingId = 5 }, new Models.NumberInfo { Id = 1, Number = 20, ColorCodingId = 3 }, } }; RandomNumberService testService = new RandomNumberService(this.randomNumberRepository); var result = testService.SaveRandomNumber(randomNumber); Assert.AreEqual(result, true); var count = this.randomNumberRepository.GetAllRandomNumbers().Count(); Assert.AreEqual(count, 2); }
public IActionResult CustomRandomNumber(GeneratedRandonNumber generatedRandonNumber) { generatedRandonNumber = NumberService.GetCustomNumbersByColor(generatedRandonNumber.NoofRandomnumbers); return(View(generatedRandonNumber)); }
/// <summary> /// CustomRandomNumber /// </summary> /// <returns></returns> public IActionResult CustomRandomNumber() { GeneratedRandonNumber generatedRandonNumber = new GeneratedRandonNumber(); return(View(generatedRandonNumber)); }