From 742cbb5a184c6073237e375a20611c33cdb9bcec Mon Sep 17 00:00:00 2001 From: "jean-christophe.alleman" Date: Mon, 12 Nov 2018 10:31:32 +0100 Subject: [PATCH 1/4] feat(oui-stepper): add possibility to display steps with ngIf --- packages/oui-button/src/button.html | 2 +- .../src/step-form/step-form.component.js | 1 + .../src/step-form/step-form.controller.js | 6 ++++++ packages/oui-stepper/src/step-form/step-form.html | 2 +- packages/oui-stepper/src/stepper.controller.js | 14 +++++++++++++- 5 files changed, 22 insertions(+), 3 deletions(-) diff --git a/packages/oui-button/src/button.html b/packages/oui-button/src/button.html index 1106a01d..ef95d5c2 100644 --- a/packages/oui-button/src/button.html +++ b/packages/oui-button/src/button.html @@ -16,7 +16,7 @@ > - {{::$ctrl.text}} + {{$ctrl.text}} diff --git a/packages/oui-stepper/src/step-form/step-form.component.js b/packages/oui-stepper/src/step-form/step-form.component.js index 66adfbdf..374332d0 100644 --- a/packages/oui-stepper/src/step-form/step-form.component.js +++ b/packages/oui-stepper/src/step-form/step-form.component.js @@ -21,6 +21,7 @@ export default { navigation: " + text="{{$ctrl.submitText || ($ctrl.stepper.last ? $ctrl.translations.submitButtonLabel : $ctrl.translations.nextButtonLabel)}}"> -1) { + this.steps.splice(indexOfStep, 1); + } + } + addForm (form, index) { this.forms[index] = form; this.nextStep(); From 98090629bbac65750bc71e606bbcfff08256215e Mon Sep 17 00:00:00 2001 From: "jean-christophe.alleman" Date: Mon, 12 Nov 2018 10:37:29 +0100 Subject: [PATCH 2/4] feat(oui-stepper): add readme for dynamic steps --- packages/oui-stepper/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/oui-stepper/README.md b/packages/oui-stepper/README.md index 78864fca..c2a34915 100644 --- a/packages/oui-stepper/README.md +++ b/packages/oui-stepper/README.md @@ -174,6 +174,7 @@ | `navigation` | boolean | Date: Mon, 12 Nov 2018 16:23:47 +0100 Subject: [PATCH 3/4] feat(oui-stepper): add unit test for dynamic step --- packages/oui-angular/src/index.spec.js | 2 +- packages/oui-stepper/README.md | 2 +- packages/oui-stepper/src/index.spec.js | 32 ++++++++++++++++++++++++++ 3 files changed, 34 insertions(+), 2 deletions(-) diff --git a/packages/oui-angular/src/index.spec.js b/packages/oui-angular/src/index.spec.js index 67b46a72..5a0da012 100644 --- a/packages/oui-angular/src/index.spec.js +++ b/packages/oui-angular/src/index.spec.js @@ -5,7 +5,7 @@ loadTests(require.context("../../oui-back-button/src/", true, /.*((\.spec)|(inde loadTests(require.context("../../oui-button/src/", true, /.*((\.spec)|(index))$/)); loadTests(require.context("../../oui-calendar/src/", true, /.*((\.spec)|(index))$/)); loadTests(require.context("../../oui-checkbox/src/", true, /.*((\.spec)|(index))$/)); -loadTests(require.context("../../oui-chips/src/", true, /.*((\.spec)|(index))$/)); +// loadTests(require.context("../../oui-chips/src/", true, /.*((\.spec)|(index))$/)); loadTests(require.context("../../oui-clipboard/src/", true, /.*((\.spec)|(index))$/)); loadTests(require.context("../../oui-collapsible/src/", true, /.*((\.spec)|(index))$/)); loadTests(require.context("../../oui-criteria-adder/src/", true, /.*((\.spec)|(index))$/)); diff --git a/packages/oui-stepper/README.md b/packages/oui-stepper/README.md index c2a34915..a3ccda0d 100644 --- a/packages/oui-stepper/README.md +++ b/packages/oui-stepper/README.md @@ -167,7 +167,7 @@ | `description` | string | @? | yes | n/a | n/a | description of the step | `cancel-href` | string | @? | yes | n/a | n/a | link url on cancel | `cancel-text` | string | @? | yes | n/a | n/a | text for the cancel button -| `submit-text` | string | @? | yes | n/a | `Submit` | text for the submit button +| `submit-text` | string | @? | no | n/a | `Submit` | text for the submit button | `loading-text` | string | @? | no | n/a | n/a | text for the loading state | `loading` | boolean | { // Final condition expect(form2.hasClass(disabledClass)).toBe(false); }); + + it("should display dynamically steps", () => { + const element = TestUtils.compileTemplate(` + + + + + `, { isForm2: false }); + + $timeout.flush(); + + // it should be 2 forms + expect(element.find("form").length).toBe(2); + + element.scope().$ctrl.isForm2 = true; + + element.scope().$digest(); + + // it should be 3 forms + expect(element.find("form").length).toBe(3); + + const form1 = element.find("form").eq(0); + const form2 = element.find("form").eq(1); + const form3 = element.find("form").eq(2); + + // submit the form and be sure that second form is active + element.find("form").eq(0).triggerHandler("submit"); + element.scope().$digest(); + expect(form1.hasClass(completeClass)).toBe(true); + expect(form2.hasClass(disabledClass)).toBe(false); + expect(form3.hasClass(disabledClass)).toBe(true); + }); }); }); }); From b289968f0960d29fe50131ecc492b7386b22d316 Mon Sep 17 00:00:00 2001 From: "jean-christophe.alleman" Date: Mon, 12 Nov 2018 16:25:36 +0100 Subject: [PATCH 4/4] fix(oui-angular): renable some disabled test --- packages/oui-angular/src/index.spec.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/oui-angular/src/index.spec.js b/packages/oui-angular/src/index.spec.js index 5a0da012..67b46a72 100644 --- a/packages/oui-angular/src/index.spec.js +++ b/packages/oui-angular/src/index.spec.js @@ -5,7 +5,7 @@ loadTests(require.context("../../oui-back-button/src/", true, /.*((\.spec)|(inde loadTests(require.context("../../oui-button/src/", true, /.*((\.spec)|(index))$/)); loadTests(require.context("../../oui-calendar/src/", true, /.*((\.spec)|(index))$/)); loadTests(require.context("../../oui-checkbox/src/", true, /.*((\.spec)|(index))$/)); -// loadTests(require.context("../../oui-chips/src/", true, /.*((\.spec)|(index))$/)); +loadTests(require.context("../../oui-chips/src/", true, /.*((\.spec)|(index))$/)); loadTests(require.context("../../oui-clipboard/src/", true, /.*((\.spec)|(index))$/)); loadTests(require.context("../../oui-collapsible/src/", true, /.*((\.spec)|(index))$/)); loadTests(require.context("../../oui-criteria-adder/src/", true, /.*((\.spec)|(index))$/));