From 8dd13a0936979f7032abfa9d06d0ec674dcc1f22 Mon Sep 17 00:00:00 2001 From: Susmitha Girumala Date: Thu, 13 Aug 2020 16:08:45 -0400 Subject: [PATCH] chore: Create auth-method route --- ui/core/app/router.js | 1 + ui/core/app/routes/scopes/scope/auth-methods.js | 2 +- .../app/routes/scopes/scope/auth-methods/new.js | 14 ++++++++++++++ .../templates/scopes/scope/auth-methods/index.hbs | 8 ++++++++ .../templates/scopes/scope/auth-methods/new.hbs | 15 +++++++++++++++ ui/core/tests/acceptance/auth-methods-test.js | 12 ++++++++++++ .../routes/scopes/scope/auth-methods/new-test.js | 11 +++++++++++ 7 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 ui/core/app/routes/scopes/scope/auth-methods/new.js create mode 100644 ui/core/app/templates/scopes/scope/auth-methods/new.hbs create mode 100644 ui/core/tests/unit/routes/scopes/scope/auth-methods/new-test.js diff --git a/ui/core/app/router.js b/ui/core/app/router.js index da0c7dcce..af71f6132 100644 --- a/ui/core/app/router.js +++ b/ui/core/app/router.js @@ -38,6 +38,7 @@ Router.map(function () { }); this.route('auth-methods', function() { this.route('auth-method', { path: ':auth_method_id' }, function() {}); + this.route('new'); }); }); }); diff --git a/ui/core/app/routes/scopes/scope/auth-methods.js b/ui/core/app/routes/scopes/scope/auth-methods.js index 91c6ac1f4..ffad801fa 100644 --- a/ui/core/app/routes/scopes/scope/auth-methods.js +++ b/ui/core/app/routes/scopes/scope/auth-methods.js @@ -44,7 +44,7 @@ export default class ScopesScopeAuthMethodsRoute extends Route { this.notify.success( this.intl.t(isNew ? 'notify.create-success' : 'notify.save-success') ); - this.transitionTo('scopes.scope.auth-methods.auth-method'); + this.transitionTo('scopes.scope.auth-methods.auth-method', authMethod); } catch (error) { //TODO: replace with translated strings this.notify.error(error.message, { closeAfter: null }); diff --git a/ui/core/app/routes/scopes/scope/auth-methods/new.js b/ui/core/app/routes/scopes/scope/auth-methods/new.js new file mode 100644 index 000000000..ceeb6a5d7 --- /dev/null +++ b/ui/core/app/routes/scopes/scope/auth-methods/new.js @@ -0,0 +1,14 @@ +import Route from '@ember/routing/route'; + +export default class ScopesScopeAuthMethodsNewRoute extends Route { + // =methods + + /** + * Create a new unsaved auth-method. + * @return {AuthMethodModel} + */ + model() { + const scopeModel = this.modelFor('scopes.scope'); + return this.store.createRecord('auth-method', { type: 'password', scopeModel }); + } +} diff --git a/ui/core/app/templates/scopes/scope/auth-methods/index.hbs b/ui/core/app/templates/scopes/scope/auth-methods/index.hbs index 9d741b6cd..61c7a08e4 100644 --- a/ui/core/app/templates/scopes/scope/auth-methods/index.hbs +++ b/ui/core/app/templates/scopes/scope/auth-methods/index.hbs @@ -3,6 +3,14 @@

{{t "resources.auth-methods"}}

+ + {{#if @model}} + + {{t "titles.new"}} + + {{/if}} + + {{#if @model}} diff --git a/ui/core/app/templates/scopes/scope/auth-methods/new.hbs b/ui/core/app/templates/scopes/scope/auth-methods/new.hbs new file mode 100644 index 000000000..315156454 --- /dev/null +++ b/ui/core/app/templates/scopes/scope/auth-methods/new.hbs @@ -0,0 +1,15 @@ +{{title (t "titles.new")}} + + + +

{{t "titles.new"}}

+
+ + + + +
\ No newline at end of file diff --git a/ui/core/tests/acceptance/auth-methods-test.js b/ui/core/tests/acceptance/auth-methods-test.js index fe4dc5c0e..5b816f253 100644 --- a/ui/core/tests/acceptance/auth-methods-test.js +++ b/ui/core/tests/acceptance/auth-methods-test.js @@ -64,6 +64,18 @@ module('Acceptance | auth methods', function (hooks) { assert.expect(0); }); + test('can create new auth method', async function (assert) { + assert.expect(0); + }); + + test('can cancel new auth method creation', async function (assert) { + assert.expect(0); + }); + + test('saving a new auth method with invalid fields displays error messages', async function (assert) { + assert.expect(0); + }); + test('errors are displayed when save on auth method fails', async function (assert) { assert.expect(0); }); diff --git a/ui/core/tests/unit/routes/scopes/scope/auth-methods/new-test.js b/ui/core/tests/unit/routes/scopes/scope/auth-methods/new-test.js new file mode 100644 index 000000000..6eea2751c --- /dev/null +++ b/ui/core/tests/unit/routes/scopes/scope/auth-methods/new-test.js @@ -0,0 +1,11 @@ +import { module, test } from 'qunit'; +import { setupTest } from 'ember-qunit'; + +module('Unit | Route | scopes/scope/auth-methods/new', function(hooks) { + setupTest(hooks); + + test('it exists', function(assert) { + let route = this.owner.lookup('route:scopes/scope/auth-methods/new'); + assert.ok(route); + }); +});