mirror of
https://github.com/home-assistant/frontend.git
synced 2025-12-24 12:49:19 +00:00
Rspack (#22807)
* Add rspack * Remove TransformAsyncModulesPlugin from rspack * Migrate all webpack usage to rspack * Migrate tests to vitest * Fix test suites * Remove chai dependency * Fix compute_state_display tests * Fix resolveTimeZone * Reduces test pipeline * Revert test ci * optimize chunk filtering * Migrate landing-page to rspack * Update rspack dependencies * Add rsdoctor * Fix prod build bundle size * Use rsdoctor for demo stats * Remove unused webpack configs * Update build-scripts/rspack.cjs Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com> * Fix eslint * Update rspack * Remove unused code --------- Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { assert } from "chai";
|
||||
import { HassEntity } from "home-assistant-js-websocket";
|
||||
import { assert, describe, it } from "vitest";
|
||||
import type { HassEntity } from "home-assistant-js-websocket";
|
||||
|
||||
import {
|
||||
formatNumber,
|
||||
@@ -7,7 +7,7 @@ import {
|
||||
getNumberFormatOptions,
|
||||
} from "../../../src/common/number/format_number";
|
||||
import {
|
||||
FrontendLocaleData,
|
||||
type FrontendLocaleData,
|
||||
NumberFormat,
|
||||
TimeFormat,
|
||||
FirstWeekday,
|
||||
@@ -157,7 +157,8 @@ describe("formatNumber", () => {
|
||||
getNumberFormatOptions({
|
||||
state: "3.0",
|
||||
attributes: { step: 0.5 },
|
||||
} as unknown as HassEntity)
|
||||
} as unknown as HassEntity),
|
||||
undefined
|
||||
);
|
||||
});
|
||||
|
||||
12
test/common/string/is_date.test.ts
Normal file
12
test/common/string/is_date.test.ts
Normal file
@@ -0,0 +1,12 @@
|
||||
import { expect, test } from "vitest";
|
||||
import { isDate } from "../../../src/common/string/is_date";
|
||||
|
||||
test("isDate", () => {
|
||||
expect(isDate("ABC")).toBe(false);
|
||||
|
||||
expect(isDate("2021-02-03", false)).toBe(true);
|
||||
expect(isDate("2021-02-03", true)).toBe(true);
|
||||
|
||||
expect(isDate("2021-05-25T19:23:52+00:00", true)).toBe(true);
|
||||
expect(isDate("2021-05-25T19:23:52+00:00", false)).toBe(false);
|
||||
});
|
||||
@@ -1,12 +0,0 @@
|
||||
import { assert } from "chai";
|
||||
import { isDate } from "../../../src/common/string/is_date";
|
||||
|
||||
describe("isDate", () => {
|
||||
assert.strictEqual(isDate("ABC"), false);
|
||||
|
||||
assert.strictEqual(isDate("2021-02-03", false), true);
|
||||
assert.strictEqual(isDate("2021-02-03", true), true);
|
||||
|
||||
assert.strictEqual(isDate("2021-05-25T19:23:52+00:00", true), true);
|
||||
assert.strictEqual(isDate("2021-05-25T19:23:52+00:00", false), false);
|
||||
});
|
||||
@@ -1,9 +1,9 @@
|
||||
import { assert } from "chai";
|
||||
import { describe, assert, it } from "vitest";
|
||||
|
||||
import {
|
||||
fuzzyFilterSort,
|
||||
fuzzySequentialMatch,
|
||||
ScorableTextItem,
|
||||
type ScorableTextItem,
|
||||
} from "../../../src/common/string/filter/sequence-matching";
|
||||
|
||||
describe("fuzzySequentialMatch", () => {
|
||||
|
||||
37
test/common/string/slugify.test.ts
Normal file
37
test/common/string/slugify.test.ts
Normal file
@@ -0,0 +1,37 @@
|
||||
import { assert, describe, it } from "vitest";
|
||||
import { slugify } from "../../../src/common/string/slugify";
|
||||
|
||||
describe("slugify", () => {
|
||||
it("works", () => {
|
||||
// With default delimiter
|
||||
assert.strictEqual(slugify("abc"), "abc");
|
||||
assert.strictEqual(slugify("ABC"), "abc");
|
||||
assert.strictEqual(slugify("abc DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc.DEF"), "abc_def");
|
||||
assert.strictEqual(
|
||||
slugify("1`-=~!@#$%^&*()_+[];',./{}:\"<>?\\| aA"),
|
||||
"1_aa"
|
||||
);
|
||||
assert.strictEqual(slugify("abc-DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc_DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("1,1"), "11");
|
||||
assert.strictEqual(slugify("abc å DEF"), "abc_a_def");
|
||||
assert.strictEqual(slugify("abc:DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc&DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc^^DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("_abc DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc DEF_"), "abc_def");
|
||||
assert.strictEqual(slugify("abc-DEF ghi"), "abc_def_ghi");
|
||||
assert.strictEqual(slugify("abc-DEF-ghi"), "abc_def_ghi");
|
||||
assert.strictEqual(slugify("abc - DEF - ghi"), "abc_def_ghi");
|
||||
assert.strictEqual(slugify("abc---DEF---ghi"), "abc_def_ghi");
|
||||
assert.strictEqual(slugify("___abc___DEF___ghi___"), "abc_def_ghi");
|
||||
assert.strictEqual(slugify("___"), "unknown");
|
||||
assert.strictEqual(slugify(""), "");
|
||||
|
||||
// With custom delimiter
|
||||
assert.strictEqual(slugify("abc def", "-"), "abc-def");
|
||||
assert.strictEqual(slugify("abc-def", "-"), "abc-def");
|
||||
});
|
||||
});
|
||||
@@ -1,32 +0,0 @@
|
||||
import { assert } from "chai";
|
||||
import { slugify } from "../../../src/common/string/slugify";
|
||||
|
||||
describe("slugify", () => {
|
||||
// With default delimiter
|
||||
assert.strictEqual(slugify("abc"), "abc");
|
||||
assert.strictEqual(slugify("ABC"), "abc");
|
||||
assert.strictEqual(slugify("abc DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc.DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("1`-=~!@#$%^&*()_+[];',./{}:\"<>?\\| aA"), "1_aa");
|
||||
assert.strictEqual(slugify("abc-DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc_DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("1,1"), "11");
|
||||
assert.strictEqual(slugify("abc å DEF"), "abc_a_def");
|
||||
assert.strictEqual(slugify("abc:DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc&DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc^^DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("_abc DEF"), "abc_def");
|
||||
assert.strictEqual(slugify("abc DEF_"), "abc_def");
|
||||
assert.strictEqual(slugify("abc-DEF ghi"), "abc_def_ghi");
|
||||
assert.strictEqual(slugify("abc-DEF-ghi"), "abc_def_ghi");
|
||||
assert.strictEqual(slugify("abc - DEF - ghi"), "abc_def_ghi");
|
||||
assert.strictEqual(slugify("abc---DEF---ghi"), "abc_def_ghi");
|
||||
assert.strictEqual(slugify("___abc___DEF___ghi___"), "abc_def_ghi");
|
||||
assert.strictEqual(slugify("___"), "unknown");
|
||||
assert.strictEqual(slugify(""), "");
|
||||
|
||||
// With custom delimiter
|
||||
assert.strictEqual(slugify("abc def", "-"), "abc-def");
|
||||
assert.strictEqual(slugify("abc-def", "-"), "abc-def");
|
||||
});
|
||||
Reference in New Issue
Block a user