import { runScript } from "leetcode-class";
import { assertEquals } from "../deps.ts";import FoodRatings from "./index.ts";
Deno.test("design-a-food-rating-system", () => { const foodRatings = new FoodRatings( ["kimchi", "miso", "sushi", "moussaka", "ramen", "bulgogi"], ["korean", "japanese", "japanese", "greek", "japanese", "korean"], [9, 12, 8, 15, 14, 7], ); assertEquals("kimchi", foodRatings.highestRated("korean")); assertEquals("ramen", foodRatings.highestRated("japanese")); foodRatings.changeRating("sushi", 16); assertEquals("sushi", foodRatings.highestRated("japanese")); foodRatings.changeRating("ramen", 16); assertEquals("ramen", foodRatings.highestRated("japanese")); });Deno.test("design-a-food-rating-system", () => { const c = [ "FoodRatings", "changeRating", "changeRating", "changeRating", "highestRated", ]; const i = [ [["shjnfxk", "dmqitcmuc", "jeegkoabpu", "ammxyb", "vjxqrvfnxv"], [ "yrfziuszqu", "yrfziuszqu", "yrfziuszqu", "yrfziuszqu", "yrfziuszqu", ], [12, 19, 13, 12, 1]], ["ammxyb", 17], ["dmqitcmuc", 9], ["vjxqrvfnxv", 4], ["yrfziuszqu"], ]; const o = [null, null, null, null, "ammxyb"]; assertEquals(runScript(c, i, [FoodRatings]), o);});Deno.test("design-a-food-rating-system", () => { const e: any[][] = [[[ "FoodRatings", "highestRated", "highestRated", "changeRating", "highestRated", "changeRating", "highestRated", ], [ [["kimchi", "miso", "sushi", "moussaka", "ramen", "bulgogi"], [ "korean", "japanese", "japanese", "greek", "japanese", "korean", ], [9, 12, 8, 15, 14, 7]], ["korean"], ["japanese"], ["sushi", 16], ["japanese"], ["ramen", 16], ["japanese"], ]], [ [ "FoodRatings", "changeRating", "highestRated", "changeRating", "changeRating", "highestRated", ], [ [["czopaaeyl", "lxoozsbh", "kbaxapl"], [ "dmnuqeatj", "dmnuqeatj", "dmnuqeatj", ], [11, 2, 15]], ["czopaaeyl", 12], ["dmnuqeatj"], ["kbaxapl", 8], ["lxoozsbh", 5], ["dmnuqeatj"], ], ]]; const o = [[null, "kimchi", "ramen", null, "sushi", null, "ramen"], [ null, null, "kbaxapl", null, null, "czopaaeyl", ]]; assertEquals(e.map((v) => runScript(v[0], v[1], [FoodRatings])), o);});