mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
Refactor to using Feature and auto-register to register injectables
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi> Signed-off-by: Iku-turso <mikko.aspiala@gmail.com>
This commit is contained in:
parent
62cd2957cc
commit
5d424b45d9
@ -1,8 +1,8 @@
|
|||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import messageToPlayerInjectable from "./message-to-player";
|
import messageToPlayerInjectable from "./message-to-player.injectable";
|
||||||
import castDieInjectable from "./cast-die";
|
import castDieInjectable from "./cast-die.injectable";
|
||||||
import monsterInjectable from "./monster";
|
import monsterInjectable from "./monster.injectable";
|
||||||
import handleLandedHitOnMonsterInjectable from "./handle-landed-hit-on-monster-for";
|
import handleLandedHitOnMonsterInjectable from "./handle-landed-hit-on-monster.injectable";
|
||||||
|
|
||||||
const handleAttackOnMonsterInjectable = getInjectable({
|
const handleAttackOnMonsterInjectable = getInjectable({
|
||||||
id: "handle-attack-on-monster",
|
id: "handle-attack-on-monster",
|
||||||
@ -1,6 +1,6 @@
|
|||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import questionToPlayerInjectable from "./question-to-player";
|
import questionToPlayerInjectable from "./question-to-player.injectable";
|
||||||
import messageToPlayerInjectable from "./message-to-player";
|
import messageToPlayerInjectable from "./message-to-player.injectable";
|
||||||
|
|
||||||
const handleAttackingTheMonsterAgainInjectable = getInjectable({
|
const handleAttackingTheMonsterAgainInjectable = getInjectable({
|
||||||
id: "handle-attacking-the-monster-again",
|
id: "handle-attacking-the-monster-again",
|
||||||
@ -1,7 +1,7 @@
|
|||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import messageToPlayerInjectable from "./message-to-player";
|
import messageToPlayerInjectable from "./message-to-player.injectable";
|
||||||
import questionToPlayerInjectable from "./question-to-player";
|
import questionToPlayerInjectable from "./question-to-player.injectable";
|
||||||
import monsterInjectable from "./monster";
|
import monsterInjectable from "./monster.injectable";
|
||||||
|
|
||||||
const handleInitialMonsterEncounterInjectable = getInjectable({
|
const handleInitialMonsterEncounterInjectable = getInjectable({
|
||||||
id: "handle-initial-monster-encounter",
|
id: "handle-initial-monster-encounter",
|
||||||
@ -1,6 +1,6 @@
|
|||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import monsterInjectable from "./monster";
|
import monsterInjectable from "./monster.injectable";
|
||||||
import messageToPlayerInjectable from "./message-to-player";
|
import messageToPlayerInjectable from "./message-to-player.injectable";
|
||||||
|
|
||||||
const handleLandedHitOnMonsterInjectable = getInjectable({
|
const handleLandedHitOnMonsterInjectable = getInjectable({
|
||||||
id: "handle-landed-hit-on-monster",
|
id: "handle-landed-hit-on-monster",
|
||||||
@ -1,7 +1,7 @@
|
|||||||
import { getInjectable } from "@ogre-tools/injectable";
|
import { getInjectable } from "@ogre-tools/injectable";
|
||||||
import handleInitialMonsterEncounterInjectable from "./handle-initial-monster-encounter-for";
|
import handleInitialMonsterEncounterInjectable from "./handle-initial-monster-encounter.injectable";
|
||||||
import handleAttackOnMonsterInjectable from "./handle-attack-on-monster-for";
|
import handleAttackOnMonsterInjectable from "./handle-attack-on-monster.injectable";
|
||||||
import handleAttackingTheMonsterAgainInjectable from "./handle-attacking-the-monster-again-for";
|
import handleAttackingTheMonsterAgainInjectable from "./handle-attacking-the-monster-again.injectable";
|
||||||
|
|
||||||
export type Dependencies = {
|
export type Dependencies = {
|
||||||
messageToPlayer: (message: string) => void;
|
messageToPlayer: (message: string) => void;
|
||||||
@ -1,15 +1,12 @@
|
|||||||
import { Dependencies, gameInjectable } from "./monster-beatdown";
|
import { Dependencies, gameInjectable } from "./monster-beatdown.injectable";
|
||||||
import asyncFn, { AsyncFnMock } from "@async-fn/jest";
|
import asyncFn, { AsyncFnMock } from "@async-fn/jest";
|
||||||
import { getPromiseStatus } from "@k8slens/test-utils";
|
import { getPromiseStatus } from "@k8slens/test-utils";
|
||||||
import { createContainer } from "@ogre-tools/injectable";
|
import { createContainer } from "@ogre-tools/injectable";
|
||||||
import messageToPlayerInjectable from "./message-to-player";
|
import messageToPlayerInjectable from "./message-to-player.injectable";
|
||||||
import castDieInjectable from "./cast-die";
|
import castDieInjectable from "./cast-die.injectable";
|
||||||
import questionToPlayerInjectable from "./question-to-player";
|
import questionToPlayerInjectable from "./question-to-player.injectable";
|
||||||
import handleInitialMonsterEncounterInjectable from "./handle-initial-monster-encounter-for";
|
import { registerFeature } from "@k8slens/feature-core";
|
||||||
import monsterInjectable from "./monster";
|
import { gabrielFeature } from "./feature";
|
||||||
import handleAttackOnMonsterInjectable from "./handle-attack-on-monster-for";
|
|
||||||
import handleLandedHitOnMonsterInjectable from "./handle-landed-hit-on-monster-for";
|
|
||||||
import handleAttackingTheMonsterAgainInjectable from "./handle-attacking-the-monster-again-for";
|
|
||||||
|
|
||||||
describe("monster-beatdown", () => {
|
describe("monster-beatdown", () => {
|
||||||
let game: { start: () => Promise<void> };
|
let game: { start: () => Promise<void> };
|
||||||
@ -21,17 +18,7 @@ describe("monster-beatdown", () => {
|
|||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
const di = createContainer("monster-beatdown");
|
const di = createContainer("monster-beatdown");
|
||||||
|
|
||||||
di.register(
|
registerFeature(di, gabrielFeature);
|
||||||
castDieInjectable,
|
|
||||||
gameInjectable,
|
|
||||||
handleAttackOnMonsterInjectable,
|
|
||||||
handleAttackingTheMonsterAgainInjectable,
|
|
||||||
handleInitialMonsterEncounterInjectable,
|
|
||||||
handleLandedHitOnMonsterInjectable,
|
|
||||||
messageToPlayerInjectable,
|
|
||||||
monsterInjectable,
|
|
||||||
questionToPlayerInjectable,
|
|
||||||
);
|
|
||||||
|
|
||||||
messageToPlayerMock = jest.fn();
|
messageToPlayerMock = jest.fn();
|
||||||
di.override(messageToPlayerInjectable, () => messageToPlayerMock);
|
di.override(messageToPlayerInjectable, () => messageToPlayerMock);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user