From cc21db4df45d918951174987e265a707fb7ee61d Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Sun, 3 Jul 2022 00:25:05 +0200 Subject: [PATCH] add: tests for subtitle --- src/app/subtitle/subtitle.component.spec.ts | 154 ++++++++++++++++++++ 1 file changed, 154 insertions(+) diff --git a/src/app/subtitle/subtitle.component.spec.ts b/src/app/subtitle/subtitle.component.spec.ts index 2c88a95..e0f43d8 100644 --- a/src/app/subtitle/subtitle.component.spec.ts +++ b/src/app/subtitle/subtitle.component.spec.ts @@ -23,4 +23,158 @@ describe('SubtitleComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); + + it('edit form visible by init', () => { + expect(component.formSubtitleVisible).toBeTruthy(); + }); + + it('edit form visible for edit', () => { + component.formSubtitleVisible = false; + component.editSubtitle(); + expect(component.formSubtitleVisible).toBeTruthy(); + }); + + it('edit form not visible after save with enter', () => { + component.formSubtitleVisible = true; + let key = { keyCode: 13 }; + component.onKeypressEnter(key); + expect(component.formSubtitleVisible).toBeFalsy(); + }); + + it('edit form not visible after save', () => { + component.formSubtitleVisible = true; + component.saveSubtitle(); + expect(component.formSubtitleVisible).toBeFalsy(); + }); + + it('add new food', () => { + let expectedFoods = [ + { + Food: "", + sideDish: "", + price: "" + } + ]; + component.addNewFood(); + expect(component.subtitle.Foods).toEqual(expectedFoods); + }); + + it('insert new food', () => { + let initFoods = [ + { + Food: "Schnitzel", + sideDish: "mit Pommes", + price: "10,50 €" + }, + { + Food: "Jägerschnitzel", + sideDish: "mit Pommes", + price: "12,50 €" + }, + { + Food: "Hawaischnitzel", + sideDish: "mit Pommes", + price: "11,50 €" + } + ]; + component.subtitle.Foods = initFoods; + let expectedFoods = [ + { + Food: "Schnitzel", + sideDish: "mit Pommes", + price: "10,50 €" + }, + { + Food: "Jägerschnitzel", + sideDish: "mit Pommes", + price: "12,50 €" + }, + { + Food: "", + sideDish: "", + price: "" + }, + { + Food: "Hawaischnitzel", + sideDish: "mit Pommes", + price: "11,50 €" + } + ]; + component.insertNewFood(1); + expect(component.subtitle.Foods).toEqual(expectedFoods); + }); + + it('remove one food', () => { + let initFoods = [ + { + Food: "Schnitzel", + sideDish: "mit Pommes", + price: "10,50 €" + }, + { + Food: "Jägerschnitzel", + sideDish: "mit Pommes", + price: "12,50 €" + }, + { + Food: "Hawaischnitzel", + sideDish: "mit Pommes", + price: "11,50 €" + } + ]; + component.subtitle.Foods = initFoods; + let expectedFoods = [ + { + Food: "Schnitzel", + sideDish: "mit Pommes", + price: "10,50 €" + }, + { + Food: "Hawaischnitzel", + sideDish: "mit Pommes", + price: "11,50 €" + } + ]; + component.removeFood(1); + expect(component.subtitle.Foods).toEqual(expectedFoods); + }); + + it('drag and drop move item', () => { + let initFoods = [ + { + Food: "Schnitzel", + sideDish: "mit Pommes", + price: "10,50 €" + }, + { + Food: "Jägerschnitzel", + sideDish: "mit Pommes", + price: "12,50 €" + }, + { + Food: "Hawaischnitzel", + sideDish: "mit Pommes", + price: "11,50 €" + } + ]; + component.subtitle.Foods = initFoods; + let expectedFoods = [ + { + Food: "Schnitzel", + sideDish: "mit Pommes", + price: "10,50 €" + }, + { + Food: "Hawaischnitzel", + sideDish: "mit Pommes", + price: "11,50 €" + }, + { + Food: "Jägerschnitzel", + sideDish: "mit Pommes", + price: "12,50 €" + } + ]; + expect(component.subtitle.Foods).toEqual(expectedFoods); + }); }); -- 2.39.5