import { findLongestAndNearestMatch } from "./router_util.ts";import { runIfMain, test } from "./vendor/https/deno.land/std/testing/mod.ts";import { assertEquals } from "./vendor/https/deno.land/std/testing/asserts.ts";
([ ["/foo", ["/foo", "/bar", "/f"], 0], ["/foo", ["/foo", "/foo/bar"], 0], ["/foo/bar", ["/", "/foo", "/hoo", "/hoo/foo/bar", "/foo/bar"], 4], ["/foo/bar/foo", ["/foo", "/foo/bar", "/bar/foo", "/foo/bar/foo"], 3], ["/foo", ["/", "/hoo", "/hoo/foo"], -1], ["/deno/land", [/d(.+?)o/, /d(.+?)d/], 1], ["/foo", ["/", "/a/foo", "/foo"], 2], ["/foo", [/\/foo/, /\/bar\/foo/], 0], ["/foo", [/\/a\/foo/, /\/foo/], 1]] as [string, (string | RegExp)[], number][]).forEach(([path, pat, idx]) => { test("findLongestAndNearestMatch:" + path, () => { assertEquals(findLongestAndNearestMatch(path, pat).index, idx); });});
runIfMain(import.meta);