Example #1
0
  public static void main(String[] args) {
    long start = System.currentTimeMillis();

    ConversionFactor cupToPint = new ConversionFactor("cup", "pint", 0.50721);
    ConversionFactor pintToCup = new ConversionFactor("pint", "cup", 1.97157);
    Ingredient milk = new Ingredient(2.0, "cup", "milk");
    Ingredient wine = new Ingredient(750.0, "milliliter", "wine");
    Ingredient pinotNoir = new Ingredient(750.0, "ml", "wine");
    Ingredient dietCoke = new Ingredient(0.5, "L", "diet coke");
    Ingredient bakingSoda = new Ingredient(1.5, "teaspoon", "baking soda");
    Ingredient vanilla = new Ingredient(1.0, "tablespoon", "vanilla");
    Ingredient beer = new Ingredient(1.0, "pt", "beer");
    Ingredient buttermilk = new Ingredient(0.25, "qt", "buttermilk");
    Ingredient coffee = new Ingredient(16.0, "ounce", "coffee");

    // Test Cases For Conversion Factor
    // Test Case 1
    testCase(testRightUnitCorrect(cupToPint));
    // Test Case 2
    testCase(testRightUnitCorrect(pintToCup));
    // Test Case 3
    testCase(testRightUnitIncorrect(cupToPint));
    // Test Case 4
    testCase(testRightUnitIncorrect(pintToCup));
    // Test Cases for Ingredient
    // Test Case 5
    testCase(testStandardizeUnit(milk, "cup"));
    // Test Case 6
    testCase(testStandardizeUnit(beer, "pint"));
    // Test Case 7
    testCase(testStandardizeUnit(dietCoke, "liter"));
    // Test Case 8
    testCase(testStandardizeUnit(wine, "ml"));
    // Test Case 9
    testCase(testStandardizeUnit(bakingSoda, "tsp"));
    // Test Case 10
    testCase(testStandardizeUnit(vanilla, "tbsp"));
    // Test Case 11
    testCase(testStandardizeUnit(buttermilk, "quart"));
    // Test Case 12
    testCase(testStandardizeUnit(coffee, "oz"));
    // Test Case 13
    testCase(testConvertIngredientPass(milk, cupToPint));
    // Test Case 14
    testCase(testConvertIngredientFail(dietCoke, cupToPint));
    // Test Case 15
    testCase(testEquals(milk, milk));
    // Test Case 16
    testCase(testNotEquals(milk, buttermilk));
    // Test Case 17
    testCase(testEquals(wine, pinotNoir));

    List<Ingredient> ingredientList = new LinkedList<>();
    ingredientList.add(milk);
    ingredientList.add(wine);
    ingredientList.add(dietCoke);
    ingredientList.add(bakingSoda);
    ingredientList.add(vanilla);
    ingredientList.add(beer);
    ingredientList.add(buttermilk);
    ingredientList.add(coffee);
    Recipe junk = new Recipe(ingredientList, "junk");

    List<Ingredient> doubledIngredientList = new LinkedList<>();
    for (Ingredient ingredient : ingredientList) {
      doubledIngredientList.add(
          new Ingredient(ingredient.getAmount() * 2, ingredient.getUnit(), ingredient.getItem()));
    }
    Recipe junkdoubled = new Recipe(doubledIngredientList, "junk");

    // Testing Recipe class
    // Test Case 18
    testCase(testFindIngredient(milk, junk));
    // Test Case 19
    testCase(testFindIngredient(wine, junk));
    // Test Case 20
    testCase(testFindIngredient(dietCoke, junk));
    // Test Case 21
    testCase(testFindIngredient(bakingSoda, junk));
    // Test Case 22
    testCase(testFindIngredient(vanilla, junk));
    // Test Case 23
    testCase(testFindIngredient(beer, junk));
    // Test Case 24
    testCase(testFindIngredient(buttermilk, junk));
    // Test Case 25
    testCase(testFindIngredient(coffee, junk));
    // Test Case 26
    testCase(testEquals(junk, junk));
    // Test Case 27
    testCase(testNotEquals(junk, junkdoubled));
    // Test Case 28
    testCase(testMultiplyAllAmounts(junk, 2.0, junkdoubled));

    long end = System.currentTimeMillis();
    long timeElapsed = end - start;
    System.out.println(
        Integer.toString(passed) + " out of " + Integer.toString(testsRan) + " tests passed.");
    System.out.println("Time taken:" + Long.toString(timeElapsed) + " millisecond(s).");
  }