public IActionResult GetComparisonById([FromRoute] int Id) { try { //if id is -ve then throws exception if (Id <= 0) { throw new QuantityMeasurmentException(QuantityMeasurmentException.ExceptionType.ZERO_OR_NEGATIVE_VALUE_EXCEPTION, "please enter a non zero and positive id"); } //if id is match comparison data return matching data CamparisonsModel Data = MeasurmentBL.GetComparison(Id); //if data is null then throws exception if (Data == null) { throw new QuantityMeasurmentException(QuantityMeasurmentException.ExceptionType.NULL_VALUE_EXCEPTION, "nothing for get"); } //if data is not null then send ok result if not success then return false result else if (Data != null) { return(Ok(new { success = true, Massage = "data fetch successful", data = Data })); } else { return(Ok(new { success = true, Massage = "data fetch failed" })); } } catch (QuantityMeasurmentException e) { //exception catch in this block and send bad request return(BadRequest(new { success = false, Massage = e.Message })); } }
public IActionResult AddComparison(CamparisonsModel Data) { try { //if data is null return exception if (Data == null) { throw new QuantityMeasurmentException(QuantityMeasurmentException.ExceptionType.NULL_VALUE_EXCEPTION, "Any field of data is null please enter value"); } //if value 1 and value 2 is -ve or zero and not temperatur unit then return exception if (Data.ValueOne <= 0 && Data.ValueTwo <= 0 && !(Data.ValueOneUnit.Equals("FAHRENHEIT") || Data.ValueTwoUnit.Equals("CELSIUS"))) { throw new QuantityMeasurmentException(QuantityMeasurmentException.ExceptionType.ZERO_OR_NEGATIVE_VALUE_EXCEPTION, "please enter non zero and positive value "); } //if value 1 and value 2 is not zero then return ok true otherwise return false else if ((Data.ValueOne != 0) && (Data.ValueTwo != 0)) { //after comparison done then return data Data = MeasurmentBL.AddComparison(Data); return(Ok(new { success = true, Massage = "conversion is successful", data = Data })); } else { return(Ok(new { success = false, Massage = "conversion is fail", data = Data })); } } catch (Exception e) { //exception catch in this block and send bad request return(BadRequest(new { success = false, Massage = e.Message })); } }
public IActionResult DeleteComparison([FromRoute] int Id) { try { //idf id match then return deleted data CamparisonsModel Data = MeasurmentBL.DeleteComparisone(Id); //if id is -ve then throws exception if (Id <= 0) { throw new QuantityMeasurmentException(QuantityMeasurmentException.ExceptionType.ZERO_OR_NEGATIVE_VALUE_EXCEPTION, "please enter non zero and positive id "); } //if data is not null then send ok result if not success then return false result if (Data != null) { return(Ok(new { success = true, Massage = "deletion is successful", data = Data })); } else { return(Ok(new { success = true, Massage = "deletion is fail" })); } } catch (QuantityMeasurmentException e) { //exception catch in this block and send bad request return(BadRequest(new { success = false, Massage = e.Message })); } }
/// <summary> /// get all comparisons related id /// </summary> /// <param name="Id"></param> /// <returns></returns> public CamparisonsModel GetComparison(int Id) { try { //first find id and return related data CamparisonsModel Data = dBContext.Comparisons.Find(Id); return(Data); } catch (Exception e) { throw new Exception(e.Message); } }
/// <summary> /// compare two value and return equal or not /// </summary> /// <param name="Data"></param> /// <returns></returns> public CamparisonsModel AddComparison(CamparisonsModel Data) { try { //it call compare method and return equal or not Data.Result = Compare(Data); //call to add methode to add data in database return(this.measurmentRL.AddComparison(Data)); } catch (Exception e) { throw new Exception(e.Message); } }
/// <summary> /// add comparisons in comparisons table /// </summary> /// <param name="data"></param> /// <returns></returns> public CamparisonsModel AddComparison(CamparisonsModel data) { try { // add data in comparisons table by using dbcontext dBContext.Comparisons.Add(data); // exicute this quri by dbcontext dBContext.SaveChanges(); //return data we was added in database return(data); } catch (Exception e) { throw new Exception(e.Message); } }
public void when_gives_negative_temperature_Comparison_object_then_return_okResult() { //Creating Model Object. var data = new CamparisonsModel() { ValueOne = -12, ValueOneUnit = "FAHRENHEIT", ValueTwo = -11, ValueTwoUnit = "CELSIUS" }; controller.ModelState.AddModelError("OperationType", "Required"); //Calling Convert Funtion. var okReasult = controller.AddComparison(data); //Asserting Values. Assert.IsType <OkObjectResult>(okReasult); }
public void when_gives_zero_Comparison_object_then_return_BadRequestObjectResult() { //Creating Model Object. var data = new CamparisonsModel() { ValueOne = 0, ValueOneUnit = "FEET", ValueTwo = 0, ValueTwoUnit = "INCH" }; controller.ModelState.AddModelError("OperationType", "Required"); //Calling Convert Funtion. var okReasult = controller.AddComparison(data); //Asserting Values. Assert.IsType <BadRequestObjectResult>(okReasult); }
/// <summary> /// compare two value and return equal or not /// </summary> /// <param name="data"></param> /// <returns></returns> private string Compare(CamparisonsModel data) { CamparisonsModel comparison = new CamparisonsModel(); comparison.ValueOne = data.ValueOne; comparison.ValueOneUnit = data.ValueOneUnit; comparison.ValueTwo = data.ValueTwo; comparison.ValueTwoUnit = data.ValueTwoUnit; comparison.Result = data.Result; //if unit is same and value is same then return equal if ((comparison.ValueOneUnit.Equals(comparison.ValueTwoUnit)) && (comparison.ValueOne == comparison.ValueTwo)) { return("Equals"); } //otherwise convert into same unit and compare data if same then return equal otherwise return false else { //concat the two unit and create converted unit string unitOne = string.Concat(comparison.ValueOneUnit, "_TO_", comparison.ValueTwoUnit); string unitTwo = string.Concat(comparison.ValueTwoUnit); //for conversion create object and gives value to model and convert it by calling calculate method ConversionsModel ConversionOne = new ConversionsModel(); ConversionsModel ConversionTwo = new ConversionsModel(); ConversionOne.Value = comparison.ValueOne; ConversionOne.OperationType = unitOne; ConversionTwo.Value = comparison.ValueTwo; ConversionTwo.OperationType = unitTwo; //data is return in output variable decimal output = (decimal)Calculate(ConversionOne); decimal outputTwo = (decimal)Calculate(ConversionTwo); //if both match then return equal otherwise return not equal if (output == outputTwo) { return("equals"); } else { return("not equal"); } } }
/// <summary> /// delete related id comparisons /// </summary> /// <param name="Id"></param> /// <returns></returns> public CamparisonsModel DeleteComparisone(int Id) { try { //first find the record match to the id then return data related id CamparisonsModel Data = dBContext.Comparisons.Find(Id); //if id not null then remove this data and exicute quries if (Data != null) { dBContext.Comparisons.Remove(Data); dBContext.SaveChanges(); } //return data related id return(Data); } catch (Exception e) { throw new Exception(e.Message); } }