public void SplitSimpleLine() { var split = new SplitLines(); var StringToSplit = "Split this line at the spaces"; var expected = new string[] { "Split", "this", "line", "at", "the", "spaces" }; Assert.AreEqual(expected, split.SplitLineAtSpace(StringToSplit)); }
/* * get price per ounce for gallons * get price per ounce for ounces * get price per ounce for lbs */ // public decimal PricePerGallon(string Ingredient, string UnitOfMeasurement, string VolumeToWeightRatioDatabaseFilename, string ResponseDatabaseFilename) //{ // var read = new Reader(); // var RatioDatabse = read.ReadDatabase(VolumeToWeightRatioDatabaseFilename); // var ResponseDatabase = read.ReadDatabase(ResponseDatabaseFilename); // for (int i = 0; i < ResponseDatabase.Count(); i++) // { // if (ResponseDatabase[i].Contains(Ingredient) && ResponseDatabase[i].Contains(UnitOfMeasurement)) // { // for (int j = 0; j < RatioDatabse.Count(); j++) // { // if (RatioDatabse[j].Contains(Ingredient} // } // { // })) // } // } // } public decimal GetPriceForOneOunceOfIngredient(string Ingredient, string VolumeToWeightRatioDatabase, string ResponseDatabaseFilename) { var read = new Reader(); var split = new SplitLines(); var GetOunces = new VolumeToWeightLogic(); var convertToNmber = new GeneralFunctionality(); var IngredientVolumeToWeightRatios = read.ReadDatabase(VolumeToWeightRatioDatabase); var UnalteredResponseDatabase = read.ReadDatabase(ResponseDatabaseFilename); var IngredientPrice = 0m; //var ParsedNumberString = 0m;IngredientName, IngredientPrice var CalculatedOunces = 0m; //var OuncesForStandardMeasuredIngredient = 0m; var PricePerOunce = 0m; for (int i = 0; i < UnalteredResponseDatabase.Count(); i++) { if (UnalteredResponseDatabase[i].Contains(Ingredient)) { IngredientPrice = GetPriceForIndividualIngredient(Ingredient); //, ResponseDatabaseFilename); for (int j = 0; j < IngredientVolumeToWeightRatios.Count(); j++) { if (IngredientVolumeToWeightRatios[j].Contains(Ingredient)) { if (UnalteredResponseDatabase[i].ToLower().Contains(("oz"))) { var FindNumbers = split.SplitLineAtSpace(UnalteredResponseDatabase[i]); foreach (var array in FindNumbers) { decimal output; if (convertToNmber.IsStringNumericValue(array) == true) { Decimal.TryParse(array, out output);//memory representaion, keeping a file in memory to get the values... it's a memory manager ... it's a data structure manager that manages the memory of that files CalculatedOunces = output; } } } //.Cgallons, lbs || pounds, oz, //) //OuncesForStandardMeasuredIngredient = GetOunces.ReadOuncesForIngredient(Ingredient, VolumeToWeightRatioDatabase); }//how many cups are in the bag of whatever is sold, then do the math with the ounces } } } PricePerOunce = IngredientPrice / CalculatedOunces; return(PricePerOunce); }
public string RoundTablespoonMeasurement(string Measurement) { var Round = new RoundDecimalPlaces(); var split = new SplitLines(); var TablespoonsMeasurement = 0m; var RoundedTablespoonMeasurement = ""; var IngredientLine = split.SplitLineAtSpace(Measurement); TablespoonsMeasurement = Convert.ToDecimal(IngredientLine[0]); if (TablespoonsMeasurement == 1m) { RoundedTablespoonMeasurement = Round.RoundToHundrethDecimalPlace(TablespoonsMeasurement) + " tablespoon"; } else { RoundedTablespoonMeasurement = Round.RoundToHundrethDecimalPlace(TablespoonsMeasurement) + " tablespoons"; } return(RoundedTablespoonMeasurement); }
public string ConvertTeaspoonsToTablespoons(string MeasurementInTeaspoons) { var Round = new RoundDecimalPlaces(); var ToTablespoons = new GeneralFunctionality(); var split = new SplitLines(); var TeaspoonsToTablespoons = 0m; var RoundedTablespoonMeasurement = ""; var IngredientLine = split.SplitLineAtSpace(MeasurementInTeaspoons); TeaspoonsToTablespoons = ToTablespoons.TeaspoonsToTablespoons(Convert.ToDecimal(IngredientLine[0])); if (TeaspoonsToTablespoons == 1m) { RoundedTablespoonMeasurement = Round.RoundToHundrethDecimalPlace(TeaspoonsToTablespoons) + " tablespoon"; } else { RoundedTablespoonMeasurement = Round.RoundToHundrethDecimalPlace(TeaspoonsToTablespoons) + " tablespoons"; } return(RoundedTablespoonMeasurement); }
public decimal CalculateImproperFraction(string fraction) { var split = new SplitLines(); var SplitWholeNumberInFraction = split.SplitLineAtSpace(fraction); var SplitFractionAtSlash = split.SplitLineAtSpecifiedCharacter(SplitWholeNumberInFraction[1], '/'); var CalculatedDecimal = 0m; var WholeNumberString = SplitWholeNumberInFraction[0]; var NumeratorString = SplitFractionAtSlash[0]; var DenominatorString = SplitFractionAtSlash[1]; if ((IsStringNumericValue(WholeNumberString) && IsStringNumericValue(NumeratorString) && IsStringNumericValue(DenominatorString)) == true) { var WholeNumber = Convert.ToDecimal(WholeNumberString); var Numerator = Convert.ToDecimal(NumeratorString); var Denominator = Convert.ToDecimal(DenominatorString); var ProperFractionNumerator = (WholeNumber * Denominator) + Numerator; CalculatedDecimal = (decimal)ProperFractionNumerator / (decimal)Denominator; } return(CalculatedDecimal); }
public string ConvertCupsToTablespoons(string MeasurementInCups) { var Round = new RoundDecimalPlaces(); var ToTablespoons = new GeneralFunctionality(); var Split = new SplitLines(); string RoundedTablespoonMeasurement = ""; string[] IngredientLine = Split.SplitLineAtSpace(MeasurementInCups); //there's something about CupsToTablespoonMeasurement - this is where I am getting the error in the stack trace in all of my failing tests that use this method decimal CupsToTablespoonMeasurement = ToTablespoons.CupsToTablespoons(Convert.ToDecimal(IngredientLine[0])); if (CupsToTablespoonMeasurement == 1m) { RoundedTablespoonMeasurement = CupsToTablespoonMeasurement + " tablespoon"; } else { RoundedTablespoonMeasurement = Round.RoundToHundrethDecimalPlace(CupsToTablespoonMeasurement) + " tablespoons"; } return(RoundedTablespoonMeasurement); }