mirror of
https://seed.radicle.dev/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5.git
synced 2026-11-03 10:40:30 +08:00
57 lines
1.3 KiB
TypeScript
57 lines
1.3 KiB
TypeScript
import BlockTimer from "./BlockTimer.svelte";
|
|
import { render } from "@testing-library/svelte";
|
|
import "@public/index.css";
|
|
import type { EventType, Listener } from "@ethersproject/abstract-provider";
|
|
|
|
describe("BlockTimer", () => {
|
|
it("increases correctly the loading bar", () => {
|
|
let block = 1;
|
|
const props = {
|
|
config: {
|
|
provider: {
|
|
on: (event: EventType, listener: Listener) => {
|
|
if (event === "block") {
|
|
listener(block);
|
|
}
|
|
},
|
|
},
|
|
},
|
|
startBlock: 1,
|
|
duration: 3,
|
|
};
|
|
|
|
const { rerender } = render(BlockTimer, props);
|
|
|
|
cy.get("div.loader")
|
|
.should("have.attr", "style", "width: 0%;")
|
|
.then(() => {
|
|
block += 1;
|
|
rerender(props);
|
|
});
|
|
|
|
cy.get("div.loader")
|
|
.last()
|
|
.should("have.attr", "style", "width: 33%;")
|
|
.then(() => {
|
|
block += 1;
|
|
rerender(props);
|
|
});
|
|
|
|
cy.get("div.loader")
|
|
.last()
|
|
.should("have.attr", "style", "width: 66%;")
|
|
.then(() => {
|
|
block += 1;
|
|
rerender(props);
|
|
});
|
|
|
|
cy.get("div.loader")
|
|
.last()
|
|
.should("have.attr", "style", "width: 99%;")
|
|
.then(() => {
|
|
block += 1;
|
|
rerender(props);
|
|
});
|
|
});
|
|
});
|