@vived/app 5.0.8 → 5.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/BaseApp/UC/UpdateContentSizeUC.js +4 -0
- package/dist/cjs/BaseApp/UC/UpdateContentSizeUC.js.map +1 -1
- package/dist/cjs/BaseApp/UC/UpdateContentSizeUC.test.js +27 -4
- package/dist/cjs/BaseApp/UC/UpdateContentSizeUC.test.js.map +1 -1
- package/dist/esm/BaseApp/UC/UpdateContentSizeUC.js +4 -0
- package/dist/esm/BaseApp/UC/UpdateContentSizeUC.js.map +1 -1
- package/dist/esm/BaseApp/UC/UpdateContentSizeUC.test.js +27 -4
- package/dist/esm/BaseApp/UC/UpdateContentSizeUC.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -23,6 +23,10 @@ class UpdateContentSizeUCImp extends UpdateContentSizeUC {
|
|
|
23
23
|
if (!this.baseApp) {
|
|
24
24
|
return;
|
|
25
25
|
}
|
|
26
|
+
// Only update slide info content height if we are in authoring mode
|
|
27
|
+
if (!this.baseApp.isAuthoring) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
26
30
|
const newHeight = Math.ceil(size);
|
|
27
31
|
if (newHeight === this.baseApp.slideInfoContentHeight)
|
|
28
32
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpdateContentSizeUC.js","sourceRoot":"","sources":["../../../../src/BaseApp/UC/UpdateContentSizeUC.ts"],"names":[],"mappings":";;;AAkBA,0DAIC;AAtBD,sCAKqB;AACrB,iDAAuD;AACvD,sCAAyC;AAEzC,MAAsB,mBAAoB,SAAQ,kBAAW;;AAA7D,kDAOC;AANiB,wBAAI,GAAG,qBAAqB,CAAC;AAItC,uBAAG,GAAG,CAAC,UAAyB,EAAmC,EAAE,CAC1E,IAAA,4BAAqB,EAAC,mBAAmB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAGhE,SAAgB,uBAAuB,CACrC,SAAoB;IAEpB,OAAO,IAAI,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,sBAAuB,SAAQ,mBAAmB;IACtD,IAAY,OAAO;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAe,qBAAY,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC;
|
|
1
|
+
{"version":3,"file":"UpdateContentSizeUC.js","sourceRoot":"","sources":["../../../../src/BaseApp/UC/UpdateContentSizeUC.ts"],"names":[],"mappings":";;;AAkBA,0DAIC;AAtBD,sCAKqB;AACrB,iDAAuD;AACvD,sCAAyC;AAEzC,MAAsB,mBAAoB,SAAQ,kBAAW;;AAA7D,kDAOC;AANiB,wBAAI,GAAG,qBAAqB,CAAC;AAItC,uBAAG,GAAG,CAAC,UAAyB,EAAmC,EAAE,CAC1E,IAAA,4BAAqB,EAAC,mBAAmB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAGhE,SAAgB,uBAAuB,CACrC,SAAoB;IAEpB,OAAO,IAAI,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,sBAAuB,SAAQ,mBAAmB;IACtD,IAAY,OAAO;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAe,qBAAY,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC;IAkBD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAlB7C,sBAAiB,GAAG,CAAC,IAAY,EAAQ,EAAE;YACzC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAO;YACT,CAAC;YAED,oEAAoE;YACpE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBAC9B,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,SAAS,KAAK,IAAI,CAAC,OAAO,CAAC,sBAAsB;gBAAE,OAAO;YAE9D,IAAI,CAAC,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC;YAChD,IAAA,gCAAmB,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC,CAAC;IAIF,CAAC;CACF","sourcesContent":["import {\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC,\r\n getSingletonComponent,\r\n} from \"@vived/core\";\r\nimport { dispatchStateChange } from \"../../Dispatcher\";\r\nimport { BaseAppState } from \"../Entity\";\r\n\r\nexport abstract class UpdateContentSizeUC extends AppObjectUC {\r\n static readonly type = \"UpdateContentSizeUC\";\r\n\r\n abstract updateContentSize(size: number): void;\r\n\r\n static get = (appObjects: AppObjectRepo): UpdateContentSizeUC | undefined =>\r\n getSingletonComponent(UpdateContentSizeUC.type, appObjects);\r\n}\r\n\r\nexport function makeUpdateContentSizeUC(\r\n appObject: AppObject\r\n): UpdateContentSizeUC {\r\n return new UpdateContentSizeUCImp(appObject);\r\n}\r\n\r\nclass UpdateContentSizeUCImp extends UpdateContentSizeUC {\r\n private get baseApp() {\r\n return this.getCachedSingleton<BaseAppState>(BaseAppState.type);\r\n }\r\n updateContentSize = (size: number): void => {\r\n if (!this.baseApp) {\r\n return;\r\n }\r\n\r\n // Only update slide info content height if we are in authoring mode\r\n if (!this.baseApp.isAuthoring) {\r\n return;\r\n }\r\n\r\n const newHeight = Math.ceil(size);\r\n if (newHeight === this.baseApp.slideInfoContentHeight) return;\r\n\r\n this.baseApp.slideInfoContentHeight = newHeight;\r\n dispatchStateChange(this.appObjects);\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, UpdateContentSizeUC.type);\r\n }\r\n}\r\n"]}
|
|
@@ -15,29 +15,52 @@ function makeTestRig() {
|
|
|
15
15
|
return { baseApp, updateSize, doDispatchMock };
|
|
16
16
|
}
|
|
17
17
|
describe("Update Content Size", () => {
|
|
18
|
-
it("Sets the value in the entity", () => {
|
|
18
|
+
it("Sets the value in the entity when isAuthoring is true", () => {
|
|
19
19
|
const { baseApp, updateSize } = makeTestRig();
|
|
20
|
+
baseApp.isAuthoring = true;
|
|
20
21
|
baseApp.slideInfoContentHeight = 10;
|
|
21
22
|
updateSize(15);
|
|
22
23
|
expect(baseApp.slideInfoContentHeight).toEqual(15);
|
|
23
24
|
});
|
|
24
|
-
it("Dispatches a state change", () => {
|
|
25
|
+
it("Dispatches a state change when isAuthoring is true", () => {
|
|
25
26
|
const { baseApp, updateSize, doDispatchMock } = makeTestRig();
|
|
27
|
+
baseApp.isAuthoring = true;
|
|
26
28
|
baseApp.slideInfoContentHeight = 10;
|
|
27
29
|
updateSize(15);
|
|
28
30
|
expect(doDispatchMock).toHaveBeenCalled();
|
|
29
31
|
});
|
|
30
|
-
it("Does not dispatches if there is no change
|
|
32
|
+
it("Does not dispatches if there is no change when isAuthoring is true", () => {
|
|
31
33
|
const { baseApp, updateSize, doDispatchMock } = makeTestRig();
|
|
32
34
|
doDispatchMock.mockClear(); // Clear previous mock calls
|
|
35
|
+
baseApp.isAuthoring = true;
|
|
33
36
|
baseApp.slideInfoContentHeight = 10;
|
|
34
37
|
updateSize(10);
|
|
35
38
|
expect(doDispatchMock).not.toHaveBeenCalled();
|
|
36
39
|
});
|
|
37
|
-
it("Rounds the size up", () => {
|
|
40
|
+
it("Rounds the size up when isAuthoring is true", () => {
|
|
38
41
|
const { baseApp, updateSize } = makeTestRig();
|
|
42
|
+
baseApp.isAuthoring = true;
|
|
43
|
+
baseApp.slideInfoContentHeight = 0;
|
|
39
44
|
updateSize(15.1);
|
|
40
45
|
expect(baseApp.slideInfoContentHeight).toEqual(16);
|
|
41
46
|
});
|
|
47
|
+
it("Does not update content height if isAuthoring is false", () => {
|
|
48
|
+
const { baseApp, updateSize, doDispatchMock } = makeTestRig();
|
|
49
|
+
baseApp.isAuthoring = false;
|
|
50
|
+
baseApp.slideInfoContentHeight = 10;
|
|
51
|
+
doDispatchMock.mockClear();
|
|
52
|
+
updateSize(20);
|
|
53
|
+
expect(baseApp.slideInfoContentHeight).toEqual(10);
|
|
54
|
+
expect(doDispatchMock).not.toHaveBeenCalled();
|
|
55
|
+
});
|
|
56
|
+
it("Updates content height if isAuthoring is true", () => {
|
|
57
|
+
const { baseApp, updateSize, doDispatchMock } = makeTestRig();
|
|
58
|
+
baseApp.isAuthoring = true;
|
|
59
|
+
baseApp.slideInfoContentHeight = 10;
|
|
60
|
+
doDispatchMock.mockClear();
|
|
61
|
+
updateSize(20);
|
|
62
|
+
expect(baseApp.slideInfoContentHeight).toEqual(20);
|
|
63
|
+
expect(doDispatchMock).toHaveBeenCalled();
|
|
64
|
+
});
|
|
42
65
|
});
|
|
43
66
|
//# sourceMappingURL=UpdateContentSizeUC.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpdateContentSizeUC.test.js","sourceRoot":"","sources":["../../../../src/BaseApp/UC/UpdateContentSizeUC.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,4FAA6F;AAC7F,sCAA6C;AAC7C,+DAAgE;AAEhE,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IACvC,MAAM,GAAG,GAAG,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,IAAA,yBAAgB,EAAC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;IAErE,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACjC,IAAA,qDAA2B,EAAC,UAAU,CAAC,CAAC,UAAU,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"UpdateContentSizeUC.test.js","sourceRoot":"","sources":["../../../../src/BaseApp/UC/UpdateContentSizeUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { makeBaseAppState } from \"../Entity\";\r\nimport { makeUpdateContentSizeUC } from \"./UpdateContentSizeUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const app = appObjects.getOrCreate(\"app\");\r\n const baseApp = makeBaseAppState(appObjects.getOrCreate(\"Base App\"));\r\n\r\n const doDispatchMock = jest.fn();\r\n makeMockDispatchStateChange(appObjects).doDispatch = doDispatchMock;\r\n\r\n const updateSizeUC = makeUpdateContentSizeUC(app);\r\n const updateSize = updateSizeUC.updateContentSize;\r\n\r\n return { baseApp, updateSize, doDispatchMock };\r\n}\r\n\r\ndescribe(\"Update Content Size\", () => {\r\n it(\"Sets the value in the entity when isAuthoring is true\", () => {\r\n const { baseApp, updateSize } = makeTestRig();\r\n\r\n baseApp.isAuthoring = true;\r\n baseApp.slideInfoContentHeight = 10;\r\n\r\n updateSize(15);\r\n\r\n expect(baseApp.slideInfoContentHeight).toEqual(15);\r\n });\r\n it(\"Dispatches a state change when isAuthoring is true\", () => {\r\n const { baseApp, updateSize, doDispatchMock } = makeTestRig();\r\n baseApp.isAuthoring = true;\r\n baseApp.slideInfoContentHeight = 10;\r\n\r\n updateSize(15);\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n it(\"Does not dispatches if there is no change when isAuthoring is true\", () => {\r\n const { baseApp, updateSize, doDispatchMock } = makeTestRig();\r\n doDispatchMock.mockClear(); // Clear previous mock calls\r\n\r\n baseApp.isAuthoring = true;\r\n baseApp.slideInfoContentHeight = 10;\r\n\r\n updateSize(10);\r\n\r\n expect(doDispatchMock).not.toHaveBeenCalled();\r\n });\r\n it(\"Rounds the size up when isAuthoring is true\", () => {\r\n const { baseApp, updateSize } = makeTestRig();\r\n baseApp.isAuthoring = true;\r\n baseApp.slideInfoContentHeight = 0;\r\n\r\n updateSize(15.1);\r\n\r\n expect(baseApp.slideInfoContentHeight).toEqual(16);\r\n });\r\n\r\n it(\"Does not update content height if isAuthoring is false\", () => {\r\n const { baseApp, updateSize, doDispatchMock } = makeTestRig();\r\n baseApp.isAuthoring = false;\r\n baseApp.slideInfoContentHeight = 10;\r\n doDispatchMock.mockClear();\r\n\r\n updateSize(20);\r\n\r\n expect(baseApp.slideInfoContentHeight).toEqual(10);\r\n expect(doDispatchMock).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Updates content height if isAuthoring is true\", () => {\r\n const { baseApp, updateSize, doDispatchMock } = makeTestRig();\r\n baseApp.isAuthoring = true;\r\n baseApp.slideInfoContentHeight = 10;\r\n doDispatchMock.mockClear();\r\n\r\n updateSize(20);\r\n\r\n expect(baseApp.slideInfoContentHeight).toEqual(20);\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
|
|
@@ -18,6 +18,10 @@ class UpdateContentSizeUCImp extends UpdateContentSizeUC {
|
|
|
18
18
|
if (!this.baseApp) {
|
|
19
19
|
return;
|
|
20
20
|
}
|
|
21
|
+
// Only update slide info content height if we are in authoring mode
|
|
22
|
+
if (!this.baseApp.isAuthoring) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
21
25
|
const newHeight = Math.ceil(size);
|
|
22
26
|
if (newHeight === this.baseApp.slideInfoContentHeight)
|
|
23
27
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpdateContentSizeUC.js","sourceRoot":"","sources":["../../../../src/BaseApp/UC/UpdateContentSizeUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,WAAW,EACX,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,OAAgB,mBAAoB,SAAQ,WAAW;;AAC3C,wBAAI,GAAG,qBAAqB,CAAC;AAItC,uBAAG,GAAG,CAAC,UAAyB,EAAmC,EAAE,CAC1E,qBAAqB,CAAC,mBAAmB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAGhE,MAAM,UAAU,uBAAuB,CACrC,SAAoB;IAEpB,OAAO,IAAI,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,sBAAuB,SAAQ,mBAAmB;IACtD,IAAY,OAAO;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAe,YAAY,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC;
|
|
1
|
+
{"version":3,"file":"UpdateContentSizeUC.js","sourceRoot":"","sources":["../../../../src/BaseApp/UC/UpdateContentSizeUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,WAAW,EACX,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,OAAgB,mBAAoB,SAAQ,WAAW;;AAC3C,wBAAI,GAAG,qBAAqB,CAAC;AAItC,uBAAG,GAAG,CAAC,UAAyB,EAAmC,EAAE,CAC1E,qBAAqB,CAAC,mBAAmB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAGhE,MAAM,UAAU,uBAAuB,CACrC,SAAoB;IAEpB,OAAO,IAAI,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,sBAAuB,SAAQ,mBAAmB;IACtD,IAAY,OAAO;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAe,YAAY,CAAC,IAAI,CAAC,CAAC;IAClE,CAAC;IAkBD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAlB7C,sBAAiB,GAAG,CAAC,IAAY,EAAQ,EAAE;YACzC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAO;YACT,CAAC;YAED,oEAAoE;YACpE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBAC9B,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,SAAS,KAAK,IAAI,CAAC,OAAO,CAAC,sBAAsB;gBAAE,OAAO;YAE9D,IAAI,CAAC,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC;YAChD,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC,CAAC;IAIF,CAAC;CACF","sourcesContent":["import {\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC,\r\n getSingletonComponent,\r\n} from \"@vived/core\";\r\nimport { dispatchStateChange } from \"../../Dispatcher\";\r\nimport { BaseAppState } from \"../Entity\";\r\n\r\nexport abstract class UpdateContentSizeUC extends AppObjectUC {\r\n static readonly type = \"UpdateContentSizeUC\";\r\n\r\n abstract updateContentSize(size: number): void;\r\n\r\n static get = (appObjects: AppObjectRepo): UpdateContentSizeUC | undefined =>\r\n getSingletonComponent(UpdateContentSizeUC.type, appObjects);\r\n}\r\n\r\nexport function makeUpdateContentSizeUC(\r\n appObject: AppObject\r\n): UpdateContentSizeUC {\r\n return new UpdateContentSizeUCImp(appObject);\r\n}\r\n\r\nclass UpdateContentSizeUCImp extends UpdateContentSizeUC {\r\n private get baseApp() {\r\n return this.getCachedSingleton<BaseAppState>(BaseAppState.type);\r\n }\r\n updateContentSize = (size: number): void => {\r\n if (!this.baseApp) {\r\n return;\r\n }\r\n\r\n // Only update slide info content height if we are in authoring mode\r\n if (!this.baseApp.isAuthoring) {\r\n return;\r\n }\r\n\r\n const newHeight = Math.ceil(size);\r\n if (newHeight === this.baseApp.slideInfoContentHeight) return;\r\n\r\n this.baseApp.slideInfoContentHeight = newHeight;\r\n dispatchStateChange(this.appObjects);\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, UpdateContentSizeUC.type);\r\n }\r\n}\r\n"]}
|
|
@@ -13,29 +13,52 @@ function makeTestRig() {
|
|
|
13
13
|
return { baseApp, updateSize, doDispatchMock };
|
|
14
14
|
}
|
|
15
15
|
describe("Update Content Size", () => {
|
|
16
|
-
it("Sets the value in the entity", () => {
|
|
16
|
+
it("Sets the value in the entity when isAuthoring is true", () => {
|
|
17
17
|
const { baseApp, updateSize } = makeTestRig();
|
|
18
|
+
baseApp.isAuthoring = true;
|
|
18
19
|
baseApp.slideInfoContentHeight = 10;
|
|
19
20
|
updateSize(15);
|
|
20
21
|
expect(baseApp.slideInfoContentHeight).toEqual(15);
|
|
21
22
|
});
|
|
22
|
-
it("Dispatches a state change", () => {
|
|
23
|
+
it("Dispatches a state change when isAuthoring is true", () => {
|
|
23
24
|
const { baseApp, updateSize, doDispatchMock } = makeTestRig();
|
|
25
|
+
baseApp.isAuthoring = true;
|
|
24
26
|
baseApp.slideInfoContentHeight = 10;
|
|
25
27
|
updateSize(15);
|
|
26
28
|
expect(doDispatchMock).toHaveBeenCalled();
|
|
27
29
|
});
|
|
28
|
-
it("Does not dispatches if there is no change
|
|
30
|
+
it("Does not dispatches if there is no change when isAuthoring is true", () => {
|
|
29
31
|
const { baseApp, updateSize, doDispatchMock } = makeTestRig();
|
|
30
32
|
doDispatchMock.mockClear(); // Clear previous mock calls
|
|
33
|
+
baseApp.isAuthoring = true;
|
|
31
34
|
baseApp.slideInfoContentHeight = 10;
|
|
32
35
|
updateSize(10);
|
|
33
36
|
expect(doDispatchMock).not.toHaveBeenCalled();
|
|
34
37
|
});
|
|
35
|
-
it("Rounds the size up", () => {
|
|
38
|
+
it("Rounds the size up when isAuthoring is true", () => {
|
|
36
39
|
const { baseApp, updateSize } = makeTestRig();
|
|
40
|
+
baseApp.isAuthoring = true;
|
|
41
|
+
baseApp.slideInfoContentHeight = 0;
|
|
37
42
|
updateSize(15.1);
|
|
38
43
|
expect(baseApp.slideInfoContentHeight).toEqual(16);
|
|
39
44
|
});
|
|
45
|
+
it("Does not update content height if isAuthoring is false", () => {
|
|
46
|
+
const { baseApp, updateSize, doDispatchMock } = makeTestRig();
|
|
47
|
+
baseApp.isAuthoring = false;
|
|
48
|
+
baseApp.slideInfoContentHeight = 10;
|
|
49
|
+
doDispatchMock.mockClear();
|
|
50
|
+
updateSize(20);
|
|
51
|
+
expect(baseApp.slideInfoContentHeight).toEqual(10);
|
|
52
|
+
expect(doDispatchMock).not.toHaveBeenCalled();
|
|
53
|
+
});
|
|
54
|
+
it("Updates content height if isAuthoring is true", () => {
|
|
55
|
+
const { baseApp, updateSize, doDispatchMock } = makeTestRig();
|
|
56
|
+
baseApp.isAuthoring = true;
|
|
57
|
+
baseApp.slideInfoContentHeight = 10;
|
|
58
|
+
doDispatchMock.mockClear();
|
|
59
|
+
updateSize(20);
|
|
60
|
+
expect(baseApp.slideInfoContentHeight).toEqual(20);
|
|
61
|
+
expect(doDispatchMock).toHaveBeenCalled();
|
|
62
|
+
});
|
|
40
63
|
});
|
|
41
64
|
//# sourceMappingURL=UpdateContentSizeUC.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpdateContentSizeUC.test.js","sourceRoot":"","sources":["../../../../src/BaseApp/UC/UpdateContentSizeUC.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;IACvC,MAAM,GAAG,GAAG,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,gBAAgB,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;IAErE,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACjC,2BAA2B,CAAC,UAAU,CAAC,CAAC,UAAU,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"UpdateContentSizeUC.test.js","sourceRoot":"","sources":["../../../../src/BaseApp/UC/UpdateContentSizeUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\r\nimport { makeBaseAppState } from \"../Entity\";\r\nimport { makeUpdateContentSizeUC } from \"./UpdateContentSizeUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const app = appObjects.getOrCreate(\"app\");\r\n const baseApp = makeBaseAppState(appObjects.getOrCreate(\"Base App\"));\r\n\r\n const doDispatchMock = jest.fn();\r\n makeMockDispatchStateChange(appObjects).doDispatch = doDispatchMock;\r\n\r\n const updateSizeUC = makeUpdateContentSizeUC(app);\r\n const updateSize = updateSizeUC.updateContentSize;\r\n\r\n return { baseApp, updateSize, doDispatchMock };\r\n}\r\n\r\ndescribe(\"Update Content Size\", () => {\r\n it(\"Sets the value in the entity when isAuthoring is true\", () => {\r\n const { baseApp, updateSize } = makeTestRig();\r\n\r\n baseApp.isAuthoring = true;\r\n baseApp.slideInfoContentHeight = 10;\r\n\r\n updateSize(15);\r\n\r\n expect(baseApp.slideInfoContentHeight).toEqual(15);\r\n });\r\n it(\"Dispatches a state change when isAuthoring is true\", () => {\r\n const { baseApp, updateSize, doDispatchMock } = makeTestRig();\r\n baseApp.isAuthoring = true;\r\n baseApp.slideInfoContentHeight = 10;\r\n\r\n updateSize(15);\r\n\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n it(\"Does not dispatches if there is no change when isAuthoring is true\", () => {\r\n const { baseApp, updateSize, doDispatchMock } = makeTestRig();\r\n doDispatchMock.mockClear(); // Clear previous mock calls\r\n\r\n baseApp.isAuthoring = true;\r\n baseApp.slideInfoContentHeight = 10;\r\n\r\n updateSize(10);\r\n\r\n expect(doDispatchMock).not.toHaveBeenCalled();\r\n });\r\n it(\"Rounds the size up when isAuthoring is true\", () => {\r\n const { baseApp, updateSize } = makeTestRig();\r\n baseApp.isAuthoring = true;\r\n baseApp.slideInfoContentHeight = 0;\r\n\r\n updateSize(15.1);\r\n\r\n expect(baseApp.slideInfoContentHeight).toEqual(16);\r\n });\r\n\r\n it(\"Does not update content height if isAuthoring is false\", () => {\r\n const { baseApp, updateSize, doDispatchMock } = makeTestRig();\r\n baseApp.isAuthoring = false;\r\n baseApp.slideInfoContentHeight = 10;\r\n doDispatchMock.mockClear();\r\n\r\n updateSize(20);\r\n\r\n expect(baseApp.slideInfoContentHeight).toEqual(10);\r\n expect(doDispatchMock).not.toHaveBeenCalled();\r\n });\r\n\r\n it(\"Updates content height if isAuthoring is true\", () => {\r\n const { baseApp, updateSize, doDispatchMock } = makeTestRig();\r\n baseApp.isAuthoring = true;\r\n baseApp.slideInfoContentHeight = 10;\r\n doDispatchMock.mockClear();\r\n\r\n updateSize(20);\r\n\r\n expect(baseApp.slideInfoContentHeight).toEqual(20);\r\n expect(doDispatchMock).toHaveBeenCalled();\r\n });\r\n});\r\n"]}
|