From ec870acba876ca42ed36cdfe8353360af7f93a37 Mon Sep 17 00:00:00 2001 From: Susmitha Girumala Date: Wed, 16 Sep 2020 14:29:02 -0400 Subject: [PATCH] style: format addons/api --- addons/api/addon/adapters/application.js | 7 +- addons/api/addon/generated/models/account.js | 12 +- .../api/addon/generated/models/auth-method.js | 7 +- addons/api/addon/generated/models/group.js | 3 +- .../addon/generated/models/host-catalog.js | 37 +++--- addons/api/addon/generated/models/host-set.js | 35 +++--- addons/api/addon/generated/models/host.js | 30 +++-- addons/api/addon/generated/models/role.js | 1 - addons/api/addon/generated/models/scope.js | 7 +- addons/api/addon/generated/models/target.js | 31 +++-- addons/api/addon/generated/models/user.js | 2 +- addons/api/addon/mixins/adapter-build-url.js | 4 +- addons/api/addon/models/account.js | 10 +- addons/api/addon/models/base.js | 2 - .../models/fragment-account-attributes.js | 7 +- .../addon/models/fragment-host-attributes.js | 7 +- addons/api/addon/models/fragment-host-set.js | 12 +- addons/api/addon/models/fragment-principal.js | 17 +-- addons/api/addon/models/fragment-scope.js | 24 ++-- addons/api/addon/models/fragment-string.js | 4 +- .../models/fragment-target-attributes.js | 7 +- addons/api/addon/models/group.js | 25 ++-- addons/api/addon/models/host-set.js | 22 ++-- addons/api/addon/models/host.js | 2 - addons/api/addon/models/role.js | 29 +++-- addons/api/addon/models/scope.js | 4 +- addons/api/addon/models/target.js | 27 ++--- addons/api/addon/serializers/account.js | 5 +- addons/api/addon/serializers/application.js | 8 +- .../addon/serializers/fragment-host-set.js | 2 - .../addon/serializers/fragment-principal.js | 2 - addons/api/addon/serializers/group.js | 4 +- addons/api/addon/serializers/host-set.js | 5 +- addons/api/addon/serializers/role.js | 17 +-- addons/api/addon/serializers/target.js | 8 +- addons/api/tests/dummy/mirage/config.js | 6 +- .../tests/dummy/mirage/scenarios/default.js | 4 +- .../dummy/mirage/serializers/application.js | 3 +- .../tests/unit/adapters/application-test.js | 60 +++++++--- .../unit/mixins/adapter-build-url-test.js | 13 +- addons/api/tests/unit/models/account-test.js | 5 +- .../api/tests/unit/models/auth-method-test.js | 4 +- addons/api/tests/unit/models/base-test.js | 40 +++---- .../unit/models/fragment-host-set-test.js | 4 +- .../unit/models/fragment-principal-test.js | 4 +- .../tests/unit/models/fragment-string-test.js | 4 +- addons/api/tests/unit/models/group-test.js | 84 +++++++------ .../tests/unit/models/host-catalog-test.js | 4 +- addons/api/tests/unit/models/host-set-test.js | 4 +- addons/api/tests/unit/models/host-test.js | 10 +- addons/api/tests/unit/models/role-test.js | 80 +++++++------ addons/api/tests/unit/models/scope-test.js | 58 ++++++--- addons/api/tests/unit/models/target-test.js | 111 +++++++++++------- addons/api/tests/unit/models/user-test.js | 4 +- .../tests/unit/serializers/account-test.js | 24 ++-- .../unit/serializers/application-test.js | 24 ++-- .../serializers/fragment-host-set-test.js | 12 +- .../serializers/fragment-principal-test.js | 12 +- .../api/tests/unit/serializers/group-test.js | 21 ++-- .../tests/unit/serializers/host-set-test.js | 23 ++-- .../api/tests/unit/serializers/role-test.js | 33 +++--- .../api/tests/unit/serializers/target-test.js | 34 +++--- 62 files changed, 590 insertions(+), 521 deletions(-) diff --git a/addons/api/addon/adapters/application.js b/addons/api/addon/adapters/application.js index d2c91e481..944bfb2be 100644 --- a/addons/api/addon/adapters/application.js +++ b/addons/api/addon/adapters/application.js @@ -35,13 +35,12 @@ function payloadIsBlank(adapterPayload) { * @return {object} */ function prenormalizeArrayResponse(response) { - return payloadIsBlank(response) ? {items: []} : response; + return payloadIsBlank(response) ? { items: [] } : response; } export default class ApplicationAdapter extends RESTAdapter.extend( AdapterBuildURLMixin ) { - // =attributes /** @@ -68,7 +67,7 @@ export default class ApplicationAdapter extends RESTAdapter.extend( * @param {object} snapshot * @return {string} */ - urlSuffix(modelName, id, snapshot={}) { + urlSuffix(modelName, id, snapshot = {}) { const method = getWithDefault(snapshot, 'adapterOptions.method', ''); return method ? `:${method}` : ''; } @@ -205,7 +204,7 @@ export default class ApplicationAdapter extends RESTAdapter.extend( normalizeErrorResponse(/*status, headers, payload*/) { const errors = super.normalizeErrorResponse(...arguments); if (isArray(errors)) { - errors.forEach(error => { + errors.forEach((error) => { switch (Number(error.status)) { case 401: error.isUnauthenticated = true; diff --git a/addons/api/addon/generated/models/account.js b/addons/api/addon/generated/models/account.js index 1abfe3e3f..df7012495 100644 --- a/addons/api/addon/generated/models/account.js +++ b/addons/api/addon/generated/models/account.js @@ -2,19 +2,20 @@ import BaseModel from '../../models/base'; import { attr } from '@ember-data/model'; /** - * Account contains all fields related to an account resource + * Account contains all fields related to an account resource */ export default class GeneratedAccountModel extends BaseModel { - // =attributes @attr('string', { - description: 'The type of the resource, to help differentiate schemas' - }) type; + description: 'The type of the resource, to help differentiate schemas', + }) + type; @attr('string', { description: 'The owning auth method ID.', - }) auth_method_id; + }) + auth_method_id; @attr('string', { description: 'Optional name for identification purposes', @@ -42,5 +43,4 @@ export default class GeneratedAccountModel extends BaseModel { description: 'Current version number of this resource.', }) version; - } diff --git a/addons/api/addon/generated/models/auth-method.js b/addons/api/addon/generated/models/auth-method.js index 7dd5805c0..8c68a8f53 100644 --- a/addons/api/addon/generated/models/auth-method.js +++ b/addons/api/addon/generated/models/auth-method.js @@ -5,12 +5,12 @@ import { attr } from '@ember-data/model'; * */ export default class GeneratedAuthMethodModel extends BaseModel { - // =attributes @attr('string', { - description: 'The type of the resource, to help differentiate schemas' - }) type; + description: 'The type of the resource, to help differentiate schemas', + }) + type; @attr('string', { description: 'Optional name for identification purposes', @@ -43,5 +43,4 @@ export default class GeneratedAuthMethodModel extends BaseModel { description: 'Current version number of this resource.', }) version; - } diff --git a/addons/api/addon/generated/models/group.js b/addons/api/addon/generated/models/group.js index e8c442e1b..45a10bc86 100644 --- a/addons/api/addon/generated/models/group.js +++ b/addons/api/addon/generated/models/group.js @@ -3,7 +3,7 @@ import { attr } from '@ember-data/model'; /** * Group contains all fields related to a Group resource -*/ + */ export default class GeneratedGroupModel extends BaseModel { // = attributes @@ -38,5 +38,4 @@ export default class GeneratedGroupModel extends BaseModel { description: 'Current version number of this resource.', }) version; - } diff --git a/addons/api/addon/generated/models/host-catalog.js b/addons/api/addon/generated/models/host-catalog.js index 7207048c2..5f4569e6a 100644 --- a/addons/api/addon/generated/models/host-catalog.js +++ b/addons/api/addon/generated/models/host-catalog.js @@ -5,42 +5,47 @@ import { attr } from '@ember-data/model'; * HostCatalog manages Hosts and HostSets */ export default class GeneratedHostCatalogModel extends BaseModel { - // =attributes @attr('string', { - description: 'The type of the resource, to help differentiate schemas' - }) type; + description: 'The type of the resource, to help differentiate schemas', + }) + type; @attr('string', { - description: 'Optional name for identification purposes' - }) name; + description: 'Optional name for identification purposes', + }) + name; @attr('string', { - description: 'Optional user-set description for identification purposes' - }) description; + description: 'Optional user-set description for identification purposes', + }) + description; @attr('date', { description: 'The time this resource was created\nOutput only.', - readOnly: true - }) created_time; + readOnly: true, + }) + created_time; @attr('date', { description: 'The time this resource was last updated\nOutput only.', - readOnly: true - }) updated_time; + readOnly: true, + }) + updated_time; @attr('boolean', { - description: 'Whether the catalog is disabled' - }) disabled; + description: 'Whether the catalog is disabled', + }) + disabled; @attr({ - description: 'Attributes specific to the catalog type' - }) attributes; + description: 'Attributes specific to the catalog type', + }) + attributes; @attr('number', { description: 'Current version number of this resource.', }) version; - } diff --git a/addons/api/addon/generated/models/host-set.js b/addons/api/addon/generated/models/host-set.js index 309165055..44c0991d6 100644 --- a/addons/api/addon/generated/models/host-set.js +++ b/addons/api/addon/generated/models/host-set.js @@ -5,35 +5,40 @@ import { attr } from '@ember-data/model'; * HostSet is a collection of Hosts created and managed by a HostCatalog */ export default class GeneratedHostSetModel extends BaseModel { - // =attributes @attr('string', { description: 'The type of the resource, to help differentiate schemas', - readOnly: true - }) type; + readOnly: true, + }) + type; @attr('string', { description: 'The owning host catalog ID.', - }) host_catalog_id; + }) + host_catalog_id; @attr('string', { - description: 'Optional name for identification purposes' - }) name; + description: 'Optional name for identification purposes', + }) + name; @attr('string', { - description: 'Optional user-set description for identification purposes' - }) description; + description: 'Optional user-set description for identification purposes', + }) + description; @attr('date', { description: 'The time this resource was created\nOutput only.', - readOnly: true - }) created_time; + readOnly: true, + }) + created_time; @attr('date', { description: 'The time this resource was last updated\nOutput only.', - readOnly: true - }) updated_time; + readOnly: true, + }) + updated_time; @attr('number', { description: 'Current version number of this resource.', @@ -42,7 +47,7 @@ export default class GeneratedHostSetModel extends BaseModel { @attr('number', { description: 'The total count of hosts in this host set\nOutput only.', - readOnly: true - }) size; - + readOnly: true, + }) + size; } diff --git a/addons/api/addon/generated/models/host.js b/addons/api/addon/generated/models/host.js index 50f1463e0..10486fe1d 100644 --- a/addons/api/addon/generated/models/host.js +++ b/addons/api/addon/generated/models/host.js @@ -5,38 +5,42 @@ import { attr } from '@ember-data/model'; * Host contains all fields related to a Host resource */ export default class GeneratedHostModel extends BaseModel { - // =attributes @attr('string', { - description: 'The type of the resource, to help differentiate schemas' - }) type; + description: 'The type of the resource, to help differentiate schemas', + }) + type; @attr('string', { description: 'The owning host catalog ID.', - }) host_catalog_id; + }) + host_catalog_id; @attr('string', { - description: 'Optional name for identification purposes' - }) name; + description: 'Optional name for identification purposes', + }) + name; @attr('string', { - description: 'Optional user-set description for identification purposes' - }) description; + description: 'Optional user-set description for identification purposes', + }) + description; @attr('date', { description: 'The time this resource was created\nOutput only.', - readOnly: true - }) created_time; + readOnly: true, + }) + created_time; @attr('date', { description: 'The time this resource was last updated\nOutput only.', - readOnly: true - }) updated_time; + readOnly: true, + }) + updated_time; @attr('number', { description: 'Current version number of this resource.', }) version; - } diff --git a/addons/api/addon/generated/models/role.js b/addons/api/addon/generated/models/role.js index 0177972a0..5d8f2bddc 100644 --- a/addons/api/addon/generated/models/role.js +++ b/addons/api/addon/generated/models/role.js @@ -38,5 +38,4 @@ export default class GeneratedRoleModel extends BaseModel { description: 'Current version number of this resource.', }) version; - } diff --git a/addons/api/addon/generated/models/scope.js b/addons/api/addon/generated/models/scope.js index 3c3731b3d..2fff1057b 100644 --- a/addons/api/addon/generated/models/scope.js +++ b/addons/api/addon/generated/models/scope.js @@ -5,12 +5,12 @@ import { attr } from '@ember-data/model'; * */ export default class GeneratedScopeModel extends BaseModel { - // =attributes @attr('string', { - description: 'The type of the resource' - }) type; + description: 'The type of the resource', + }) + type; @attr('string', { description: 'Optional name for identification purposes', @@ -38,5 +38,4 @@ export default class GeneratedScopeModel extends BaseModel { description: 'Current version number of this resource.', }) version; - } diff --git a/addons/api/addon/generated/models/target.js b/addons/api/addon/generated/models/target.js index 60a105b45..38b831966 100644 --- a/addons/api/addon/generated/models/target.js +++ b/addons/api/addon/generated/models/target.js @@ -5,34 +5,39 @@ import { attr } from '@ember-data/model'; * Target */ export default class GeneratedTargetModel extends BaseModel { - // =attributes @attr('string', { - description: 'The type of the resource, to help differentiate schemas' - }) type; + description: 'The type of the resource, to help differentiate schemas', + }) + type; @attr('string', { - description: 'Optional name for identification purposes' - }) name; + description: 'Optional name for identification purposes', + }) + name; @attr('string', { - description: 'Optional user-set description for identification purposes' - }) description; + description: 'Optional user-set description for identification purposes', + }) + description; @attr('date', { description: 'The time this resource was created\nOutput only.', - readOnly: true - }) created_time; + readOnly: true, + }) + created_time; @attr('date', { description: 'The time this resource was last updated\nOutput only.', - readOnly: true - }) updated_time; + readOnly: true, + }) + updated_time; @attr('boolean', { - description: 'Whether the catalog is disabled' - }) disabled; + description: 'Whether the catalog is disabled', + }) + disabled; @attr('number', { description: 'Current version number of this resource.', diff --git a/addons/api/addon/generated/models/user.js b/addons/api/addon/generated/models/user.js index 433faeceb..a8bc17acf 100644 --- a/addons/api/addon/generated/models/user.js +++ b/addons/api/addon/generated/models/user.js @@ -3,7 +3,7 @@ import { attr } from '@ember-data/model'; /** * User contains all fields related to a user resource -*/ + */ export default class GeneratedUserModel extends BaseModel { // =attributes diff --git a/addons/api/addon/mixins/adapter-build-url.js b/addons/api/addon/mixins/adapter-build-url.js index cee278e05..3437cb981 100644 --- a/addons/api/addon/mixins/adapter-build-url.js +++ b/addons/api/addon/mixins/adapter-build-url.js @@ -13,7 +13,6 @@ import { get } from '@ember/object'; * uses this mixin to alter generated URLs. */ export default Mixin.create({ - // =methods /** @@ -162,6 +161,5 @@ export default Mixin.create({ */ urlForDeleteRecord(id, modelName, snapshot) { return this._buildURL(modelName, id, snapshot); - } - + }, }); diff --git a/addons/api/addon/models/account.js b/addons/api/addon/models/account.js index 4c52347f5..874b88ec4 100644 --- a/addons/api/addon/models/account.js +++ b/addons/api/addon/models/account.js @@ -2,7 +2,6 @@ import GeneratedAccountModel from '../generated/models/account'; import { fragment } from 'ember-data-model-fragments/attributes'; export default class AccountModel extends GeneratedAccountModel { - /** * Attributes of this resource, if any, represented as a JSON fragment. * @type {FragmentAccountAttributesModel} @@ -19,18 +18,17 @@ export default class AccountModel extends GeneratedAccountModel { * @param {object} options.adapterOptions * @return {Promise} */ - setPassword(password, options={ adapterOptions: {} }) { + setPassword(password, options = { adapterOptions: {} }) { const defaultAdapterOptions = { method: 'set-password', - password + password, }; return this.save({ ...options, adapterOptions: { ...defaultAdapterOptions, - ...options.adapterOptions - } + ...options.adapterOptions, + }, }); } - } diff --git a/addons/api/addon/models/base.js b/addons/api/addon/models/base.js index cfbcce14b..2a01e39f5 100644 --- a/addons/api/addon/models/base.js +++ b/addons/api/addon/models/base.js @@ -26,7 +26,6 @@ import { get } from '@ember/object'; * 2) Or as an ID: `record.scopeID`. */ export default class BaseModel extends Model { - // =relationships /** @@ -83,5 +82,4 @@ export default class BaseModel extends Model { get cannotSave() { return !this.canSave; } - } diff --git a/addons/api/addon/models/fragment-account-attributes.js b/addons/api/addon/models/fragment-account-attributes.js index 76ee82487..bb0371398 100644 --- a/addons/api/addon/models/fragment-account-attributes.js +++ b/addons/api/addon/models/fragment-account-attributes.js @@ -2,9 +2,8 @@ import Fragment from 'ember-data-model-fragments/fragment'; import { attr } from '@ember-data/model'; export default class FragmentAccountAttributesModel extends Fragment { - @attr('string', { - description: 'The account login name' - }) login_name; - + description: 'The account login name', + }) + login_name; } diff --git a/addons/api/addon/models/fragment-host-attributes.js b/addons/api/addon/models/fragment-host-attributes.js index 851b404b2..3f0ac9073 100644 --- a/addons/api/addon/models/fragment-host-attributes.js +++ b/addons/api/addon/models/fragment-host-attributes.js @@ -2,9 +2,8 @@ import Fragment from 'ember-data-model-fragments/fragment'; import { attr } from '@ember-data/model'; export default class FragmentHostAttributesModel extends Fragment { - @attr('string', { - description: 'The address (DNS or IP name) used to reach the host' - }) address; - + description: 'The address (DNS or IP name) used to reach the host', + }) + address; } diff --git a/addons/api/addon/models/fragment-host-set.js b/addons/api/addon/models/fragment-host-set.js index 975d7e1f0..e0f3a1e1c 100644 --- a/addons/api/addon/models/fragment-host-set.js +++ b/addons/api/addon/models/fragment-host-set.js @@ -2,15 +2,15 @@ import Fragment from 'ember-data-model-fragments/fragment'; import { attr } from '@ember-data/model'; export default class FragmentHostSetModel extends Fragment { - // =attributes @attr('string', { - description: 'ID of the related host set' - }) host_set_id; + description: 'ID of the related host set', + }) + host_set_id; @attr('string', { - description: 'ID of the catalog to which the host set belongs' - }) host_catalog_id; - + description: 'ID of the catalog to which the host set belongs', + }) + host_catalog_id; } diff --git a/addons/api/addon/models/fragment-principal.js b/addons/api/addon/models/fragment-principal.js index 4c6bcb9c0..5488ef509 100644 --- a/addons/api/addon/models/fragment-principal.js +++ b/addons/api/addon/models/fragment-principal.js @@ -2,19 +2,20 @@ import Fragment from 'ember-data-model-fragments/fragment'; import { attr } from '@ember-data/model'; export default class FragmentPrincipal extends Fragment { - // =attributes @attr('string', { - description: 'ID of the related scope' - }) scope_id; + description: 'ID of the related scope', + }) + scope_id; @attr('string', { - description: 'ID of the related principal (user or group)' - }) principal_id; + description: 'ID of the related principal (user or group)', + }) + principal_id; @attr('string', { - description: 'Type of the related principal (user or group)' - }) type; - + description: 'Type of the related principal (user or group)', + }) + type; } diff --git a/addons/api/addon/models/fragment-scope.js b/addons/api/addon/models/fragment-scope.js index 1a402c383..f6d7a2db8 100644 --- a/addons/api/addon/models/fragment-scope.js +++ b/addons/api/addon/models/fragment-scope.js @@ -4,33 +4,39 @@ import { attr } from '@ember-data/model'; import { scopeTypes } from './scope'; export default class FragmentScope extends Fragment { - // =attributes @attr('string', { - description: 'ID of the related scope' - }) scope_id; + description: 'ID of the related scope', + }) + scope_id; @attr('string', { - description: 'The type of the resource' - }) type; + description: 'The type of the resource', + }) + type; /** * @type {boolean} */ @computed('type') - get isGlobal() { return this.type === scopeTypes.global; } + get isGlobal() { + return this.type === scopeTypes.global; + } /** * @type {boolean} */ @computed('type') - get isOrg() { return this.type === scopeTypes.org; } + get isOrg() { + return this.type === scopeTypes.org; + } /** * @type {boolean} */ @computed('type') - get isProject() { return this.type === scopeTypes.project; } - + get isProject() { + return this.type === scopeTypes.project; + } } diff --git a/addons/api/addon/models/fragment-string.js b/addons/api/addon/models/fragment-string.js index 78ddb80b5..8f2c8690c 100644 --- a/addons/api/addon/models/fragment-string.js +++ b/addons/api/addon/models/fragment-string.js @@ -5,12 +5,10 @@ import { attr } from '@ember-data/model'; * Represents an item in an array of strings. */ export default class FragmentStringModel extends Fragment { - // =attributes @attr('string', { - description: 'The value of the string.' + description: 'The value of the string.', }) value; - } diff --git a/addons/api/addon/models/fragment-target-attributes.js b/addons/api/addon/models/fragment-target-attributes.js index 1ab994d9d..44f1a94aa 100644 --- a/addons/api/addon/models/fragment-target-attributes.js +++ b/addons/api/addon/models/fragment-target-attributes.js @@ -2,9 +2,8 @@ import Fragment from 'ember-data-model-fragments/fragment'; import { attr } from '@ember-data/model'; export default class FragmentTargetAttributesModel extends Fragment { - @attr('number', { - description: 'The default port a target should use if present.' - }) default_port; - + description: 'The default port a target should use if present.', + }) + default_port; } diff --git a/addons/api/addon/models/group.js b/addons/api/addon/models/group.js index 6b0da1b1a..87fff30c1 100644 --- a/addons/api/addon/models/group.js +++ b/addons/api/addon/models/group.js @@ -4,7 +4,6 @@ import { computed } from '@ember/object'; import { A } from '@ember/array'; export default class GroupModel extends GeneratedGroupModel { - // =attributes /** @@ -14,8 +13,9 @@ export default class GroupModel extends GeneratedGroupModel { @attr({ readOnly: true, defaultValue: () => A(), - emptyArrayIfMissing: true - }) member_ids; + emptyArrayIfMissing: true, + }) + member_ids; /** * An array of resolved user instances. @@ -26,7 +26,7 @@ export default class GroupModel extends GeneratedGroupModel { @computed('member_ids.[]') get members() { return this.member_ids - .map(id => this.store.peekRecord('user', id)) + .map((id) => this.store.peekRecord('user', id)) .filter(Boolean); } @@ -40,10 +40,10 @@ export default class GroupModel extends GeneratedGroupModel { * @param {object} options.adapterOptions * @return {Promise} */ - addMembers(memberIDs, options={ adapterOptions: {} }) { + addMembers(memberIDs, options = { adapterOptions: {} }) { const defaultAdapterOptions = { method: 'add-members', - memberIDs + memberIDs, }; // There is no "deep merge" in ES. // All of this nonsense is here to ensure we get @@ -52,8 +52,8 @@ export default class GroupModel extends GeneratedGroupModel { ...options, adapterOptions: { ...defaultAdapterOptions, - ...options.adapterOptions - } + ...options.adapterOptions, + }, }); } @@ -65,10 +65,10 @@ export default class GroupModel extends GeneratedGroupModel { * @param {object} options.adapterOptions * @return {Promise} */ - removeMembers(memberIDs, options={ adapterOptions: {} }) { + removeMembers(memberIDs, options = { adapterOptions: {} }) { const defaultAdapterOptions = { method: 'remove-members', - memberIDs + memberIDs, }; // There is no "deep merge" in ES. // All of this nonsense is here to ensure we get @@ -77,8 +77,8 @@ export default class GroupModel extends GeneratedGroupModel { ...options, adapterOptions: { ...defaultAdapterOptions, - ...options.adapterOptions - } + ...options.adapterOptions, + }, }); } @@ -91,5 +91,4 @@ export default class GroupModel extends GeneratedGroupModel { removeMember(memberID, options) { return this.removeMembers([memberID], options); } - } diff --git a/addons/api/addon/models/host-set.js b/addons/api/addon/models/host-set.js index 018f95f64..61033dd79 100644 --- a/addons/api/addon/models/host-set.js +++ b/addons/api/addon/models/host-set.js @@ -2,7 +2,6 @@ import GeneratedHostSetModel from '../generated/models/host-set'; import { fragmentArray } from 'ember-data-model-fragments/attributes'; export default class HostSetModel extends GeneratedHostSetModel { - // =attributes /** @@ -11,8 +10,9 @@ export default class HostSetModel extends GeneratedHostSetModel { */ @fragmentArray('fragment-string', { readOnly: true, - emptyArrayIfMissing: true - }) host_ids; + emptyArrayIfMissing: true, + }) + host_ids; // =methods @@ -24,17 +24,17 @@ export default class HostSetModel extends GeneratedHostSetModel { * @param {object} options.adapterOptions * @return {Promise} */ - addHosts(hostIDs, options={ adapterOptions: {} }) { + addHosts(hostIDs, options = { adapterOptions: {} }) { const defaultAdapterOptions = { method: 'add-hosts', - hostIDs + hostIDs, }; return this.save({ ...options, adapterOptions: { ...defaultAdapterOptions, - ...options.adapterOptions - } + ...options.adapterOptions, + }, }); } @@ -46,17 +46,17 @@ export default class HostSetModel extends GeneratedHostSetModel { * @param {object} options.adapterOptions * @return {Promise} */ - removeHosts(hostIDs, options={ adapterOptions: {} }) { + removeHosts(hostIDs, options = { adapterOptions: {} }) { const defaultAdapterOptions = { method: 'remove-hosts', - hostIDs + hostIDs, }; return this.save({ ...options, adapterOptions: { ...defaultAdapterOptions, - ...options.adapterOptions - } + ...options.adapterOptions, + }, }); } diff --git a/addons/api/addon/models/host.js b/addons/api/addon/models/host.js index a2e855084..7748e023b 100644 --- a/addons/api/addon/models/host.js +++ b/addons/api/addon/models/host.js @@ -2,11 +2,9 @@ import GeneratedHostModel from '../generated/models/host'; import { fragment } from 'ember-data-model-fragments/attributes'; export default class HostModel extends GeneratedHostModel { - /** * Attributes of this resource, if any, represented as a JSON fragment. * @type {FragmentHostAttributesModel} */ @fragment('fragment-host-attributes', { defaultValue: {} }) attributes; - } diff --git a/addons/api/addon/models/role.js b/addons/api/addon/models/role.js index 83d1a99a7..9e37867ad 100644 --- a/addons/api/addon/models/role.js +++ b/addons/api/addon/models/role.js @@ -2,7 +2,6 @@ import GeneratedRoleModel from '../generated/models/role'; import { fragmentArray } from 'ember-data-model-fragments/attributes'; export default class RoleModel extends GeneratedRoleModel { - // =attributes /** @@ -14,14 +13,15 @@ export default class RoleModel extends GeneratedRoleModel { */ @fragmentArray('fragment-principal', { readOnly: true, - emptyArrayIfMissing: true - }) principals; + emptyArrayIfMissing: true, + }) + principals; /** * Grants is read-only _most_ under normal circumstances. But grants can * be persisted via a dedicated call to `saveGrants()`. */ - @fragmentArray('fragment-string', {readOnly: true}) grants; + @fragmentArray('fragment-string', { readOnly: true }) grants; // =methods @@ -34,8 +34,8 @@ export default class RoleModel extends GeneratedRoleModel { return this.save({ adapterOptions: { method: 'set-grants', - serializeGrants: true - } + serializeGrants: true, + }, }); } @@ -47,10 +47,10 @@ export default class RoleModel extends GeneratedRoleModel { * @param {object} options.adapterOptions * @return {Promise} */ - addPrincipals(principalIDs, options={ adapterOptions: {} }) { + addPrincipals(principalIDs, options = { adapterOptions: {} }) { const defaultAdapterOptions = { method: 'add-principals', - principalIDs + principalIDs, }; // There is no "deep merge" in ES. // All of this nonsense is here to ensure we get @@ -59,8 +59,8 @@ export default class RoleModel extends GeneratedRoleModel { ...options, adapterOptions: { ...defaultAdapterOptions, - ...options.adapterOptions - } + ...options.adapterOptions, + }, }); } @@ -72,10 +72,10 @@ export default class RoleModel extends GeneratedRoleModel { * @param {object} options.adapterOptions * @return {Promise} */ - removePrincipals(principalIDs, options={ adapterOptions: {} }) { + removePrincipals(principalIDs, options = { adapterOptions: {} }) { const defaultAdapterOptions = { method: 'remove-principals', - principalIDs + principalIDs, }; // There is no "deep merge" in ES. // All of this nonsense is here to ensure we get @@ -84,8 +84,8 @@ export default class RoleModel extends GeneratedRoleModel { ...options, adapterOptions: { ...defaultAdapterOptions, - ...options.adapterOptions - } + ...options.adapterOptions, + }, }); } @@ -98,5 +98,4 @@ export default class RoleModel extends GeneratedRoleModel { removePrincipal(principalID, options) { return this.removePrincipals([principalID], options); } - } diff --git a/addons/api/addon/models/scope.js b/addons/api/addon/models/scope.js index 061501759..69b82381e 100644 --- a/addons/api/addon/models/scope.js +++ b/addons/api/addon/models/scope.js @@ -4,11 +4,10 @@ import { computed } from '@ember/object'; export const scopeTypes = { global: 'global', org: 'org', - project: 'project' + project: 'project', }; export default class ScopeModel extends GeneratedScopeModel { - // =attributes /** @@ -42,5 +41,4 @@ export default class ScopeModel extends GeneratedScopeModel { set isProject(value) { if (value) this.type = scopeTypes.project; } - } diff --git a/addons/api/addon/models/target.js b/addons/api/addon/models/target.js index 57b87ff29..25a67ea9b 100644 --- a/addons/api/addon/models/target.js +++ b/addons/api/addon/models/target.js @@ -3,7 +3,6 @@ import { fragment, fragmentArray } from 'ember-data-model-fragments/attributes'; import { computed } from '@ember/object'; export default class TargetModel extends GeneratedTargetModel { - // =attributes /** @@ -17,8 +16,9 @@ export default class TargetModel extends GeneratedTargetModel { */ @fragmentArray('fragment-host-set', { readOnly: true, - emptyArrayIfMissing: true - }) host_sets; + emptyArrayIfMissing: true, + }) + host_sets; /** * An array of resolved host set and host catalog instances. Model instances @@ -31,9 +31,9 @@ export default class TargetModel extends GeneratedTargetModel { return this.host_sets .map(({ host_set_id, host_catalog_id }) => ({ model: this.store.peekRecord('host-set', host_set_id), - hostCatalog: this.store.peekRecord('host-catalog', host_catalog_id) + hostCatalog: this.store.peekRecord('host-catalog', host_catalog_id), })) - .filter(hostSetRef => hostSetRef.model !== null); + .filter((hostSetRef) => hostSetRef.model !== null); } // =methods @@ -46,10 +46,10 @@ export default class TargetModel extends GeneratedTargetModel { * @param {object} options.adapterOptions * @return {Promise} */ - addHostSets(hostSetIDs, options={ adapterOptions: {} }) { + addHostSets(hostSetIDs, options = { adapterOptions: {} }) { const defaultAdapterOptions = { method: 'add-host-sets', - hostSetIDs + hostSetIDs, }; // There is no "deep merge" in ES. // All of this nonsense is here to ensure we get @@ -58,8 +58,8 @@ export default class TargetModel extends GeneratedTargetModel { ...options, adapterOptions: { ...defaultAdapterOptions, - ...options.adapterOptions - } + ...options.adapterOptions, + }, }); } @@ -71,10 +71,10 @@ export default class TargetModel extends GeneratedTargetModel { * @param {object} options.adapterOptions * @return {Promise} */ - removeHostSets(hostSetIDs, options={ adapterOptions: {} }) { + removeHostSets(hostSetIDs, options = { adapterOptions: {} }) { const defaultAdapterOptions = { method: 'remove-host-sets', - hostSetIDs + hostSetIDs, }; // There is no "deep merge" in ES. // All of this nonsense is here to ensure we get @@ -83,8 +83,8 @@ export default class TargetModel extends GeneratedTargetModel { ...options, adapterOptions: { ...defaultAdapterOptions, - ...options.adapterOptions - } + ...options.adapterOptions, + }, }); } @@ -97,5 +97,4 @@ export default class TargetModel extends GeneratedTargetModel { removeHostSet(hostSetID, options) { return this.removeHostSets([hostSetID], options); } - } diff --git a/addons/api/addon/serializers/account.js b/addons/api/addon/serializers/account.js index c014c2361..a24def72e 100644 --- a/addons/api/addon/serializers/account.js +++ b/addons/api/addon/serializers/account.js @@ -1,7 +1,6 @@ import ApplicationSerializer from './application'; export default class AccountSerializer extends ApplicationSerializer { - // =methods /** @@ -16,7 +15,8 @@ export default class AccountSerializer extends ApplicationSerializer { serialize(snapshot) { const password = snapshot?.adapterOptions?.password; let serialized = super.serialize(...arguments); - if (password && snapshot?.record?.isNew) serialized.attributes.password = password; + if (password && snapshot?.record?.isNew) + serialized.attributes.password = password; if (snapshot?.adapterOptions?.method === 'set-password') { serialized = this.serializeForSetPassword(snapshot, password); } @@ -35,5 +35,4 @@ export default class AccountSerializer extends ApplicationSerializer { password, }; } - } diff --git a/addons/api/addon/serializers/application.js b/addons/api/addon/serializers/application.js index 6dd0b84bd..a41c97730 100644 --- a/addons/api/addon/serializers/application.js +++ b/addons/api/addon/serializers/application.js @@ -7,7 +7,6 @@ import { copy } from 'ember-copy'; * Manages serialization/normalization of data to/from the API. */ export default class ApplicationSerializer extends RESTSerializer { - // =methods /** @@ -160,9 +159,11 @@ export default class ApplicationSerializer extends RESTSerializer { * @return {object} */ normalizeMissingArrays(store, primaryModelClass, payload) { - const attrDefs = store._attributesDefinitionFor(primaryModelClass.modelName); + const attrDefs = store._attributesDefinitionFor( + primaryModelClass.modelName + ); if (attrDefs) { - Object.keys(attrDefs).forEach(key => { + Object.keys(attrDefs).forEach((key) => { if (!payload[key] && attrDefs[key]?.options?.emptyArrayIfMissing) { payload[key] = []; } @@ -187,5 +188,4 @@ export default class ApplicationSerializer extends RESTSerializer { if (scopeID) normalizedHash.scope.scope_id = scopeID; return super.normalize(typeClass, normalizedHash); } - } diff --git a/addons/api/addon/serializers/fragment-host-set.js b/addons/api/addon/serializers/fragment-host-set.js index e073397ec..564c7ec9b 100644 --- a/addons/api/addon/serializers/fragment-host-set.js +++ b/addons/api/addon/serializers/fragment-host-set.js @@ -1,7 +1,6 @@ import JSONSerializer from '@ember-data/serializer/json'; export default class FragmentHostSetSerializer extends JSONSerializer { - // =methods /** @@ -14,5 +13,4 @@ export default class FragmentHostSetSerializer extends JSONSerializer { normalize(typeClass, { id: host_set_id, ...obj }) { return super.normalize(typeClass, { host_set_id, ...obj }); } - } diff --git a/addons/api/addon/serializers/fragment-principal.js b/addons/api/addon/serializers/fragment-principal.js index 8d8896594..d4d5555a0 100644 --- a/addons/api/addon/serializers/fragment-principal.js +++ b/addons/api/addon/serializers/fragment-principal.js @@ -1,7 +1,6 @@ import JSONSerializer from '@ember-data/serializer/json'; export default class FragmentPrincipalSerializer extends JSONSerializer { - // =methods /** @@ -14,5 +13,4 @@ export default class FragmentPrincipalSerializer extends JSONSerializer { normalize(typeClass, { id: principal_id, ...obj }) { return super.normalize(typeClass, { principal_id, ...obj }); } - } diff --git a/addons/api/addon/serializers/group.js b/addons/api/addon/serializers/group.js index bbccc068f..906e28cde 100644 --- a/addons/api/addon/serializers/group.js +++ b/addons/api/addon/serializers/group.js @@ -1,7 +1,6 @@ import ApplicationSerializer from './application'; export default class GroupSerializer extends ApplicationSerializer { - // =methods /** @@ -27,8 +26,7 @@ export default class GroupSerializer extends ApplicationSerializer { serializewithMembers(snapshot, memberIDs) { return { version: snapshot.attr('version'), - member_ids: memberIDs + member_ids: memberIDs, }; } - } diff --git a/addons/api/addon/serializers/host-set.js b/addons/api/addon/serializers/host-set.js index 3ce7c7161..591da7c76 100644 --- a/addons/api/addon/serializers/host-set.js +++ b/addons/api/addon/serializers/host-set.js @@ -1,7 +1,6 @@ import ApplicationSerializer from './application'; export default class HostSetSerializer extends ApplicationSerializer { - // =methods /** @@ -44,10 +43,8 @@ export default class HostSetSerializer extends ApplicationSerializer { // TODO: can fragment string normalization be handled generically? // TODO: host_ids might actually be attributes.host_ids if (resourceHash.host_ids) { - resourceHash.host_ids = - resourceHash.host_ids.map(value => ({ value })); + resourceHash.host_ids = resourceHash.host_ids.map((value) => ({ value })); } return super.normalize(modelClass, resourceHash); } - } diff --git a/addons/api/addon/serializers/role.js b/addons/api/addon/serializers/role.js index 89d10353d..5efd37c0f 100644 --- a/addons/api/addon/serializers/role.js +++ b/addons/api/addon/serializers/role.js @@ -2,7 +2,6 @@ import ApplicationSerializer from './application'; import { get } from '@ember/object'; export default class RoleSerializer extends ApplicationSerializer { - // =methods /** @@ -20,8 +19,8 @@ export default class RoleSerializer extends ApplicationSerializer { let serialized = super.serialize(...arguments); if (serializeGrants) serialized = this.serializeWithGrants(snapshot); const principalIDs = snapshot?.adapterOptions?.principalIDs; - if (principalIDs) serialized = - this.serializewithPrincipals(snapshot, principalIDs); + if (principalIDs) + serialized = this.serializewithPrincipals(snapshot, principalIDs); return serialized; } @@ -33,7 +32,9 @@ export default class RoleSerializer extends ApplicationSerializer { serializeWithGrants(snapshot) { return { version: snapshot.attr('version'), - grant_strings: snapshot.attr('grants').map(grant => grant.attr('value')) + grant_strings: snapshot + .attr('grants') + .map((grant) => grant.attr('value')), }; } @@ -47,7 +48,7 @@ export default class RoleSerializer extends ApplicationSerializer { serializewithPrincipals(snapshot, principalIDs) { return { version: snapshot.attr('version'), - principal_ids: principalIDs + principal_ids: principalIDs, }; } @@ -62,10 +63,10 @@ export default class RoleSerializer extends ApplicationSerializer { normalize(modelClass, resourceHash) { // TODO: can fragment string normalization be handled generically? if (resourceHash.grant_strings) { - resourceHash.grants = - resourceHash.grant_strings.map(value => ({ value })); + resourceHash.grants = resourceHash.grant_strings.map((value) => ({ + value, + })); } return super.normalize(modelClass, resourceHash); } - } diff --git a/addons/api/addon/serializers/target.js b/addons/api/addon/serializers/target.js index eae3ad5b1..4c6745b89 100644 --- a/addons/api/addon/serializers/target.js +++ b/addons/api/addon/serializers/target.js @@ -1,7 +1,6 @@ import ApplicationSerializer from './application'; export default class TargetSerializer extends ApplicationSerializer { - // =methods /** @@ -15,8 +14,8 @@ export default class TargetSerializer extends ApplicationSerializer { serialize(snapshot) { let serialized = super.serialize(...arguments); const hostSetIDs = snapshot?.adapterOptions?.hostSetIDs; - if (hostSetIDs) serialized = - this.serializeWithHostSets(snapshot, hostSetIDs); + if (hostSetIDs) + serialized = this.serializeWithHostSets(snapshot, hostSetIDs); return serialized; } @@ -30,8 +29,7 @@ export default class TargetSerializer extends ApplicationSerializer { serializeWithHostSets(snapshot, hostSetIDs) { return { version: snapshot.attr('version'), - host_set_ids: hostSetIDs + host_set_ids: hostSetIDs, }; } - } diff --git a/addons/api/tests/dummy/mirage/config.js b/addons/api/tests/dummy/mirage/config.js index c2cd26a9d..3e74fe7c0 100644 --- a/addons/api/tests/dummy/mirage/config.js +++ b/addons/api/tests/dummy/mirage/config.js @@ -1,17 +1,13 @@ -export default function() { - +export default function () { // These comments are here to help you get started. Feel free to delete them. - /* Config (with defaults). Note: these only affect routes defined *after* them! */ - // this.urlPrefix = ''; // make this `http://localhost:8080`, for example, if your API is on a different server // this.namespace = ''; // make this `/api`, for example, if your API is namespaced // this.timing = 400; // delay for each request, automatically set to 0 during testing - /* Shorthand cheatsheet: diff --git a/addons/api/tests/dummy/mirage/scenarios/default.js b/addons/api/tests/dummy/mirage/scenarios/default.js index adb3af4c0..d388296b5 100644 --- a/addons/api/tests/dummy/mirage/scenarios/default.js +++ b/addons/api/tests/dummy/mirage/scenarios/default.js @@ -1,9 +1,7 @@ -export default function(/* server */) { - +export default function (/* server */) { /* Seed your development database using your factories. This data will not be loaded in your tests. */ - // server.createList('post', 10); } diff --git a/addons/api/tests/dummy/mirage/serializers/application.js b/addons/api/tests/dummy/mirage/serializers/application.js index 6d47a3669..6224ab8c9 100644 --- a/addons/api/tests/dummy/mirage/serializers/application.js +++ b/addons/api/tests/dummy/mirage/serializers/application.js @@ -1,4 +1,3 @@ import { JSONAPISerializer } from 'ember-cli-mirage'; -export default JSONAPISerializer.extend({ -}); +export default JSONAPISerializer.extend({}); diff --git a/addons/api/tests/unit/adapters/application-test.js b/addons/api/tests/unit/adapters/application-test.js index 633dc7b73..a2d8d9b0e 100644 --- a/addons/api/tests/unit/adapters/application-test.js +++ b/addons/api/tests/unit/adapters/application-test.js @@ -35,7 +35,7 @@ module('Unit | Adapter | application', function (hooks) { const method = 'set-something'; const adapter = this.owner.lookup('adapter:application'); const suffix = adapter.urlSuffix(null, null, { - adapterOptions: { method } + adapterOptions: { method }, }); assert.ok(config.api.namespace); assert.equal(suffix, ':set-something'); @@ -48,31 +48,56 @@ module('Unit | Adapter | application', function (hooks) { const mockSnapshot = { adapterOptions: { scopeID, - method - } + method, + }, }; const adapter = this.owner.lookup('adapter:application'); // test URL generation for each request type... - const findRecordURL = adapter.buildURL('user', '1', mockSnapshot, 'findRecord'); + const findRecordURL = adapter.buildURL( + 'user', + '1', + mockSnapshot, + 'findRecord' + ); assert.equal(findRecordURL, '/v1/users/1:my-custom-method'); const findAllURL = adapter.buildURL('user', null, mockSnapshot, 'findAll'); assert.equal(findAllURL, '/v1/users:my-custom-method'); - const findBelongsToURL = adapter.buildURL('user', '2', mockSnapshot, 'findBelongsTo'); + const findBelongsToURL = adapter.buildURL( + 'user', + '2', + mockSnapshot, + 'findBelongsTo' + ); assert.equal(findBelongsToURL, '/v1/users/2:my-custom-method'); - const createRecordURL = adapter.buildURL('user', null, mockSnapshot, 'createRecord'); + const createRecordURL = adapter.buildURL( + 'user', + null, + mockSnapshot, + 'createRecord' + ); assert.equal(createRecordURL, '/v1/users:my-custom-method'); - const updateRecordURL = adapter.buildURL('user', '3', mockSnapshot, 'updateRecord'); + const updateRecordURL = adapter.buildURL( + 'user', + '3', + mockSnapshot, + 'updateRecord' + ); assert.equal(updateRecordURL, '/v1/users/3:my-custom-method'); - const deleteRecordURL = adapter.buildURL('user', '4', mockSnapshot, 'deleteRecord'); + const deleteRecordURL = adapter.buildURL( + 'user', + '4', + mockSnapshot, + 'deleteRecord' + ); assert.equal(deleteRecordURL, '/v1/users/4:my-custom-method'); }); test('it can request records through the store from a specified scope', async function (assert) { assert.expect(1); const store = this.owner.lookup('service:store'); - this.server.get('/v1/groups', (_, { queryParams: { scope_id }}) => { + this.server.get('/v1/groups', (_, { queryParams: { scope_id } }) => { assert.equal(scope_id, 'p_456', 'Scoped resource URL was requested.'); - return {items: []}; + return { items: [] }; }); await store.query('group', { scope_id: 'p_456' }); }); @@ -95,15 +120,15 @@ module('Unit | Adapter | application', function (hooks) { const store = this.owner.lookup('service:store'); const snapshot = store.createRecord('role', {})._createSnapshot(); snapshot.adapterOptions = { - method: 'custom-method' - } + method: 'custom-method', + }; // TODO this is icky, should be changed to a spy or stub const originalAjax = RESTAdapter.prototype.ajax; RESTAdapter.prototype.ajax = (url, type) => { assert.equal(type, 'POST'); RESTAdapter.prototype.ajax = originalAjax; }; - adapter.updateRecord(store, {modelName: 'user'}, snapshot); + adapter.updateRecord(store, { modelName: 'user' }, snapshot); }); test('it prenormalizes "empty" responses into a form that the fetch-manager will not reject', async function (assert) { @@ -111,8 +136,13 @@ module('Unit | Adapter | application', function (hooks) { const adapter = this.owner.lookup('adapter:application'); const store = this.owner.lookup('service:store'); this.server.get('/v1/users', () => new Response({})); - const prenormalized = await adapter.findAll(store, {modelName: 'user'}, null, []); - assert.deepEqual(prenormalized, {items: []}); + const prenormalized = await adapter.findAll( + store, + { modelName: 'user' }, + null, + [] + ); + assert.deepEqual(prenormalized, { items: [] }); }); test('it correctly identifies 400 responses as invalid', function (assert) { diff --git a/addons/api/tests/unit/mixins/adapter-build-url-test.js b/addons/api/tests/unit/mixins/adapter-build-url-test.js index 560f3f8fc..734d0d161 100644 --- a/addons/api/tests/unit/mixins/adapter-build-url-test.js +++ b/addons/api/tests/unit/mixins/adapter-build-url-test.js @@ -3,7 +3,7 @@ import AdapterBuildURLMixin from 'api/mixins/adapter-build-url'; import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Mixin | build-url', function(hooks) { +module('Unit | Mixin | build-url', function (hooks) { setupTest(hooks); test('it does not interfere with basic URLs', function (assert) { @@ -18,7 +18,7 @@ module('Unit | Mixin | build-url', function(hooks) { test('it does not interfere with namespaced URLs', function (assert) { assert.expect(1); const Adapter = RESTAdapter.extend(AdapterBuildURLMixin, { - namespace: 'api/v1' + namespace: 'api/v1', }); this.owner.register('adapter:adapter', Adapter); const adapter = this.owner.lookup('adapter:adapter'); @@ -30,8 +30,8 @@ module('Unit | Mixin | build-url', function(hooks) { assert.expect(1); const Adapter = RESTAdapter.extend(AdapterBuildURLMixin, { urlPrefix() { - return '/foo/bars' - } + return '/foo/bars'; + }, }); this.owner.register('adapter:adapter', Adapter); const adapter = this.owner.lookup('adapter:adapter'); @@ -43,13 +43,12 @@ module('Unit | Mixin | build-url', function(hooks) { assert.expect(1); const Adapter = RESTAdapter.extend(AdapterBuildURLMixin, { urlSuffix() { - return ':method' - } + return ':method'; + }, }); this.owner.register('adapter:adapter', Adapter); const adapter = this.owner.lookup('adapter:adapter'); const url = adapter._buildURL('model', 1); assert.equal(url, '/models/1:method'); }); - }); diff --git a/addons/api/tests/unit/models/account-test.js b/addons/api/tests/unit/models/account-test.js index dcd3fe8bb..554a72be5 100644 --- a/addons/api/tests/unit/models/account-test.js +++ b/addons/api/tests/unit/models/account-test.js @@ -1,13 +1,12 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Model | account', function(hooks) { +module('Unit | Model | account', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('account', {}); assert.ok(model); }); - }); diff --git a/addons/api/tests/unit/models/auth-method-test.js b/addons/api/tests/unit/models/auth-method-test.js index 3de95883a..31ff3fca1 100644 --- a/addons/api/tests/unit/models/auth-method-test.js +++ b/addons/api/tests/unit/models/auth-method-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Model | auth method', function(hooks) { +module('Unit | Model | auth method', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('auth-method', {}); assert.ok(model); diff --git a/addons/api/tests/unit/models/base-test.js b/addons/api/tests/unit/models/base-test.js index cc89967a0..228f47782 100644 --- a/addons/api/tests/unit/models/base-test.js +++ b/addons/api/tests/unit/models/base-test.js @@ -19,8 +19,8 @@ module('Unit | Model | base', function (hooks) { store.push({ data: { id: 'o_1', - type: 'scope' - } + type: 'scope', + }, }); store.push({ data: { @@ -29,10 +29,10 @@ module('Unit | Model | base', function (hooks) { attributes: { scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const scope = store.peekRecord('scope', 'o_1'); const model = store.peekRecord('user', '123abc'); @@ -42,7 +42,7 @@ module('Unit | Model | base', function (hooks) { test('it may accept a `scopeModel` for convenience, instead of a fragment', function (assert) { assert.expect(3); const store = this.owner.lookup('service:store'); - const scope = store.createRecord('scope', {id: 'o_1', type: 'org'}); + const scope = store.createRecord('scope', { id: 'o_1', type: 'org' }); const model = store.createRecord('user', '123abc'); assert.notEqual(model.scopeID, scope.id); model.scopeModel = scope; @@ -98,17 +98,17 @@ module('Unit | Model | base', function (hooks) { const store = this.owner.lookup('service:store'); const model = store.createRecord('user', { scopeID: 'o_123' }); this.server.post('/v1/users', () => { - assert.ok(true, 'Correctly scoped create record URL was requested.') + assert.ok(true, 'Correctly scoped create record URL was requested.'); return {}; }); await model.save(); this.server.patch('/v1/users', () => { - assert.ok(true, 'Correctly scoped update record URL was requested.') + assert.ok(true, 'Correctly scoped update record URL was requested.'); return {}; }); await model.save(); this.server.delete('/v1/users', () => { - assert.ok(true, 'Correctly scoped delete record URL was requested.') + assert.ok(true, 'Correctly scoped delete record URL was requested.'); return {}; }); await model.destroyRecord(); @@ -118,35 +118,35 @@ module('Unit | Model | base', function (hooks) { assert.expect(3); const store = this.owner.lookup('service:store'); const customScopeID = 'global'; - const scope = {scope_id: 'o_123'}; + const scope = { scope_id: 'o_123' }; const model = store.createRecord('user', { scope }); this.server.post('/v1/users', () => { - assert.ok(true, 'Correctly scoped create record URL was requested.') + assert.ok(true, 'Correctly scoped create record URL was requested.'); return {}; }); - await model.save({adapterOptions: {scopeID: customScopeID}}); + await model.save({ adapterOptions: { scopeID: customScopeID } }); this.server.patch('/v1/users', () => { - assert.ok(true, 'Correctly scoped update record URL was requested.') + assert.ok(true, 'Correctly scoped update record URL was requested.'); return {}; }); - await model.save({adapterOptions: {scopeID: customScopeID}}); + await model.save({ adapterOptions: { scopeID: customScopeID } }); this.server.delete('/v1/users', () => { - assert.ok(true, 'Correctly scoped delete record URL was requested.') + assert.ok(true, 'Correctly scoped delete record URL was requested.'); return {}; }); - await model.destroyRecord({adapterOptions: {scopeID: customScopeID}}); + await model.destroyRecord({ adapterOptions: { scopeID: customScopeID } }); }); test('it saves records to a URL with a custom method if requested', async function (assert) { assert.expect(1); const store = this.owner.lookup('service:store'); const method = 'my-custom-method'; - const scope = {scope_id: 'o_123'}; + const scope = { scope_id: 'o_123' }; const model = store.createRecord('user', { scope }); this.server.post(`/v1/users:${method}`, () => { - assert.ok(true, 'Correctly scoped create record URL was requested.') + assert.ok(true, 'Correctly scoped create record URL was requested.'); return {}; }); - await model.save({adapterOptions: {method}}); + await model.save({ adapterOptions: { method } }); }); }); diff --git a/addons/api/tests/unit/models/fragment-host-set-test.js b/addons/api/tests/unit/models/fragment-host-set-test.js index 5862a94a3..9d9248f8b 100644 --- a/addons/api/tests/unit/models/fragment-host-set-test.js +++ b/addons/api/tests/unit/models/fragment-host-set-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Model | fragment host set', function(hooks) { +module('Unit | Model | fragment host set', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('fragment-host-set', {}); assert.ok(model); diff --git a/addons/api/tests/unit/models/fragment-principal-test.js b/addons/api/tests/unit/models/fragment-principal-test.js index 055f52da7..f6c243ede 100644 --- a/addons/api/tests/unit/models/fragment-principal-test.js +++ b/addons/api/tests/unit/models/fragment-principal-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Model | fragment principal', function(hooks) { +module('Unit | Model | fragment principal', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('fragment-principal', {}); assert.ok(model); diff --git a/addons/api/tests/unit/models/fragment-string-test.js b/addons/api/tests/unit/models/fragment-string-test.js index 8bfd2c018..72f2c3eee 100644 --- a/addons/api/tests/unit/models/fragment-string-test.js +++ b/addons/api/tests/unit/models/fragment-string-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Model | fragment string', function(hooks) { +module('Unit | Model | fragment string', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('fragment-string', {}); assert.ok(model); diff --git a/addons/api/tests/unit/models/group-test.js b/addons/api/tests/unit/models/group-test.js index e5b2423c8..9788c99cd 100644 --- a/addons/api/tests/unit/models/group-test.js +++ b/addons/api/tests/unit/models/group-test.js @@ -2,11 +2,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; -module('Unit | Model | group', function(hooks) { +module('Unit | Model | group', function (hooks) { setupTest(hooks); setupMirage(hooks); - test('it has a `members` array of resolved model instances (if those instances are already in the store)', function(assert) { + test('it has a `members` array of resolved model instances (if those instances are already in the store)', function (assert) { assert.expect(4); const store = this.owner.lookup('service:store'); store.push({ @@ -14,30 +14,42 @@ module('Unit | Model | group', function(hooks) { id: 'group_123', type: 'group', attributes: { - member_ids: [ '1', '2', ] - } - } + member_ids: ['1', '2'], + }, + }, }); const group = store.peekRecord('group', 'group_123'); - assert.equal(group.member_ids.length, 2, 'Group has two entires in member_ids'); - assert.equal(group.members.length, 0, 'Group has no resolved members because they are not loaded yet'); + assert.equal( + group.member_ids.length, + 2, + 'Group has two entires in member_ids' + ); + assert.equal( + group.members.length, + 0, + 'Group has no resolved members because they are not loaded yet' + ); store.push({ data: { id: '1', type: 'user', - attributes: {} - } + attributes: {}, + }, }); store.push({ data: { id: '2', type: 'user', - attributes: {} - } + attributes: {}, + }, }); // eslint-disable-next-line no-self-assign group.member_ids = [...group.member_ids]; - assert.equal(group.member_ids.length, 2, 'Group has two entires in member_ids'); + assert.equal( + group.member_ids.length, + 2, + 'Group has two entires in member_ids' + ); assert.equal(group.members.length, 2, 'Group has two resolved members'); }); @@ -47,7 +59,7 @@ module('Unit | Model | group', function(hooks) { const body = JSON.parse(request.requestBody); assert.deepEqual(body, { member_ids: ['123_abc', 'foobar'], - version: 1 + version: 1, }); }); const store = this.owner.lookup('service:store'); @@ -58,14 +70,14 @@ module('Unit | Model | group', function(hooks) { attributes: { name: 'Group', description: 'Description', - member_ids: [ '1', '2' ], + member_ids: ['1', '2'], version: 1, scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const model = store.peekRecord('group', '123abc'); await model.addMembers(['123_abc', 'foobar']); @@ -77,7 +89,7 @@ module('Unit | Model | group', function(hooks) { const body = JSON.parse(request.requestBody); assert.deepEqual(body, { member_ids: ['1', '3'], - version: 1 + version: 1, }); }); const store = this.owner.lookup('service:store'); @@ -88,14 +100,14 @@ module('Unit | Model | group', function(hooks) { attributes: { name: 'group', description: 'Description', - member_ids: [ '4', '5' ], + member_ids: ['4', '5'], version: 1, scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const model = store.peekRecord('group', '123abc'); await model.removeMembers(['1', '3']); @@ -107,7 +119,7 @@ module('Unit | Model | group', function(hooks) { const body = JSON.parse(request.requestBody); assert.deepEqual(body, { member_ids: ['3'], - version: 1 + version: 1, }); }); const store = this.owner.lookup('service:store'); @@ -118,29 +130,33 @@ module('Unit | Model | group', function(hooks) { attributes: { name: 'group', description: 'Description', - member_ids: [ '1', '3' ], + member_ids: ['1', '3'], version: 1, scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const model = store.peekRecord('group', '123abc'); await model.removeMember('3'); }); - test('it defaults `members_ids` to an empty array when model instance does not define it', function(assert) { + test('it defaults `members_ids` to an empty array when model instance does not define it', function (assert) { assert.expect(1); const store = this.owner.lookup('service:store'); store.push({ data: { id: 'group_123', - type: 'group' - } + type: 'group', + }, }); const group = store.peekRecord('group', 'group_123'); - assert.equal(group.member_ids.length, 0, 'Group has empty member_ids by default'); + assert.equal( + group.member_ids.length, + 0, + 'Group has empty member_ids by default' + ); }); }); diff --git a/addons/api/tests/unit/models/host-catalog-test.js b/addons/api/tests/unit/models/host-catalog-test.js index b653f00a5..e35a07be7 100644 --- a/addons/api/tests/unit/models/host-catalog-test.js +++ b/addons/api/tests/unit/models/host-catalog-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Model | host catalog', function(hooks) { +module('Unit | Model | host catalog', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('host-catalog', {}); assert.ok(model); diff --git a/addons/api/tests/unit/models/host-set-test.js b/addons/api/tests/unit/models/host-set-test.js index 61e007f70..540718c4e 100644 --- a/addons/api/tests/unit/models/host-set-test.js +++ b/addons/api/tests/unit/models/host-set-test.js @@ -1,11 +1,11 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Model | host set', function(hooks) { +module('Unit | Model | host set', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('host-set', {}); assert.ok(model); diff --git a/addons/api/tests/unit/models/host-test.js b/addons/api/tests/unit/models/host-test.js index 3cc0a3ad9..73e66b086 100644 --- a/addons/api/tests/unit/models/host-test.js +++ b/addons/api/tests/unit/models/host-test.js @@ -1,23 +1,23 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Model | host', function(hooks) { +module('Unit | Model | host', function (hooks) { setupTest(hooks); // Replace this with your real tests. - test('it exists', function(assert) { + test('it exists', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('host', {}); assert.ok(model); }); - test('it contains attributes', function(assert) { + test('it contains attributes', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('host', { type: 'static', attributes: { - address: '127.0.0.1' - } + address: '127.0.0.1', + }, }); assert.equal(model.attributes.address, '127.0.0.1'); }); diff --git a/addons/api/tests/unit/models/role-test.js b/addons/api/tests/unit/models/role-test.js index 42aefae25..2548aace8 100644 --- a/addons/api/tests/unit/models/role-test.js +++ b/addons/api/tests/unit/models/role-test.js @@ -6,7 +6,7 @@ module('Unit | Model | role', function (hooks) { setupTest(hooks); setupMirage(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('role', {}); assert.ok(model); @@ -18,7 +18,7 @@ module('Unit | Model | role', function (hooks) { const body = JSON.parse(request.requestBody); assert.deepEqual(body, { grant_strings: ['grant1', 'grant2'], - version: 1 + version: 1, }); }); const store = this.owner.lookup('service:store'); @@ -29,14 +29,14 @@ module('Unit | Model | role', function (hooks) { attributes: { name: 'Role', description: 'Description', - grants: [{value: 'grant1'}, {value: 'grant2'}], + grants: [{ value: 'grant1' }, { value: 'grant2' }], version: 1, scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const model = store.peekRecord('role', '123abc'); await model.saveGrants(); @@ -48,7 +48,7 @@ module('Unit | Model | role', function (hooks) { const body = JSON.parse(request.requestBody); assert.deepEqual(body, { principal_ids: ['123_abc', 'foobar'], - version: 1 + version: 1, }); }); const store = this.owner.lookup('service:store'); @@ -61,15 +61,15 @@ module('Unit | Model | role', function (hooks) { description: 'Description', principals: [ { id: '1', type: 'user' }, - { id: '3', type: 'group' } + { id: '3', type: 'group' }, ], version: 1, scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const model = store.peekRecord('role', '123abc'); await model.addPrincipals(['123_abc', 'foobar']); @@ -77,13 +77,16 @@ module('Unit | Model | role', function (hooks) { test('it has a `removePrincipals` method that targets a specific POST API endpoint and serialization', async function (assert) { assert.expect(1); - this.server.post('/v1/roles/123abc:remove-principals', (schema, request) => { - const body = JSON.parse(request.requestBody); - assert.deepEqual(body, { - principal_ids: ['1', '3'], - version: 1 - }); - }); + this.server.post( + '/v1/roles/123abc:remove-principals', + (schema, request) => { + const body = JSON.parse(request.requestBody); + assert.deepEqual(body, { + principal_ids: ['1', '3'], + version: 1, + }); + } + ); const store = this.owner.lookup('service:store'); store.push({ data: { @@ -94,15 +97,15 @@ module('Unit | Model | role', function (hooks) { description: 'Description', principals: [ { id: '1', type: 'user' }, - { id: '3', type: 'group' } + { id: '3', type: 'group' }, ], version: 1, scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const model = store.peekRecord('role', '123abc'); await model.removePrincipals(['1', '3']); @@ -110,13 +113,16 @@ module('Unit | Model | role', function (hooks) { test('it has a `removePrincipal` method that deletes a single principal using `removePrincipals` method', async function (assert) { assert.expect(1); - this.server.post('/v1/roles/123abc:remove-principals', (schema, request) => { - const body = JSON.parse(request.requestBody); - assert.deepEqual(body, { - principal_ids: ['3'], - version: 1 - }); - }); + this.server.post( + '/v1/roles/123abc:remove-principals', + (schema, request) => { + const body = JSON.parse(request.requestBody); + assert.deepEqual(body, { + principal_ids: ['3'], + version: 1, + }); + } + ); const store = this.owner.lookup('service:store'); store.push({ data: { @@ -127,15 +133,15 @@ module('Unit | Model | role', function (hooks) { description: 'Description', principals: [ { id: '1', type: 'user' }, - { id: '3', type: 'group' } + { id: '3', type: 'group' }, ], version: 1, scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const model = store.peekRecord('role', '123abc'); await model.removePrincipal('3'); diff --git a/addons/api/tests/unit/models/scope-test.js b/addons/api/tests/unit/models/scope-test.js index ee2e212b9..1ac318e57 100644 --- a/addons/api/tests/unit/models/scope-test.js +++ b/addons/api/tests/unit/models/scope-test.js @@ -2,37 +2,60 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import setupMirage from 'ember-cli-mirage/test-support/setup-mirage'; -module('Unit | Model | scope', function(hooks) { +module('Unit | Model | scope', function (hooks) { setupTest(hooks); setupMirage(hooks); - test('it may have a scope fragment', async function(assert) { + test('it may have a scope fragment', async function (assert) { assert.expect(6); const store = this.owner.lookup('service:store'); this.server.get('/v1/scopes', () => ({ items: [ - {id: 'global', type: 'global'}, - {id: 'o_1', type: 'org', scope: {scope_id: 'global'}}, - {id: 'o_2', type: 'org', scope: {scope_id: 'global'}}, - {id: 'p_1', type: 'project', scope: {scope_id: 'o_1'}}, - {id: 'p_2', type: 'project', scope: {scope_id: 'o_1'}}, - {id: 'p_3', type: 'project', scope: {scope_id: 'o_2'}}, - ] + { id: 'global', type: 'global' }, + { id: 'o_1', type: 'org', scope: { scope_id: 'global' } }, + { id: 'o_2', type: 'org', scope: { scope_id: 'global' } }, + { id: 'p_1', type: 'project', scope: { scope_id: 'o_1' } }, + { id: 'p_2', type: 'project', scope: { scope_id: 'o_1' } }, + { id: 'p_3', type: 'project', scope: { scope_id: 'o_2' } }, + ], })); const scopes = await store.findAll('scope'); // check integrity of scope relationships - assert.notOk(await scopes.firstObject.get('scope'), 'Global scope has no parent'); - assert.equal(await scopes.objectAt(1).get('scope.scope_id'), 'global', 'Org 1 parent scope is global'); - assert.equal(await scopes.objectAt(2).get('scope.scope_id'), 'global', 'Org 2 parent scope is global'); - assert.equal(await scopes.objectAt(3).get('scope.scope_id'), 'o_1', 'Project 1 parent scope is org 1'); - assert.equal(await scopes.objectAt(4).get('scope.scope_id'), 'o_1', 'Project 2 parent scope is org 1'); - assert.equal(await scopes.objectAt(5).get('scope.scope_id'), 'o_2', 'Project 3 parent scope is org 2'); + assert.notOk( + await scopes.firstObject.get('scope'), + 'Global scope has no parent' + ); + assert.equal( + await scopes.objectAt(1).get('scope.scope_id'), + 'global', + 'Org 1 parent scope is global' + ); + assert.equal( + await scopes.objectAt(2).get('scope.scope_id'), + 'global', + 'Org 2 parent scope is global' + ); + assert.equal( + await scopes.objectAt(3).get('scope.scope_id'), + 'o_1', + 'Project 1 parent scope is org 1' + ); + assert.equal( + await scopes.objectAt(4).get('scope.scope_id'), + 'o_1', + 'Project 2 parent scope is org 1' + ); + assert.equal( + await scopes.objectAt(5).get('scope.scope_id'), + 'o_2', + 'Project 3 parent scope is org 2' + ); }); - test('it has isType boolean getters and setters', async function(assert) { + test('it has isType boolean getters and setters', async function (assert) { assert.expect(9); const store = this.owner.lookup('service:store'); - const model = store.createRecord('scope', {type: 'global'}); + const model = store.createRecord('scope', { type: 'global' }); assert.ok(model.isGlobal); assert.notOk(model.isOrg); assert.notOk(model.isProject); @@ -45,5 +68,4 @@ module('Unit | Model | scope', function(hooks) { assert.notOk(model.isOrg); assert.ok(model.isProject); }); - }); diff --git a/addons/api/tests/unit/models/target-test.js b/addons/api/tests/unit/models/target-test.js index 2652fcce7..d7e98bcd8 100644 --- a/addons/api/tests/unit/models/target-test.js +++ b/addons/api/tests/unit/models/target-test.js @@ -6,7 +6,7 @@ module('Unit | Model | target', function (hooks) { setupTest(hooks); setupMirage(hooks); - test('it has a `hostSets` array of resolved model instances (if those instances are already in the store)', function(assert) { + test('it has a `hostSets` array of resolved model instances (if those instances are already in the store)', function (assert) { assert.expect(6); const store = this.owner.lookup('service:store'); store.push({ @@ -16,41 +16,56 @@ module('Unit | Model | target', function (hooks) { attributes: { host_sets: [ { host_set_id: '1', host_catalog_id: '2' }, - { host_set_id: '3', host_catalog_id: '2' } - ] - } - } + { host_set_id: '3', host_catalog_id: '2' }, + ], + }, + }, }); const target = store.peekRecord('target', '123abc'); - assert.equal(target.host_sets.length, 2, 'Target has two entires in host_sets'); - assert.equal(target.hostSets.length, 0, 'Target has no resolved hostSets because they are not loaded yet'); + assert.equal( + target.host_sets.length, + 2, + 'Target has two entires in host_sets' + ); + assert.equal( + target.hostSets.length, + 0, + 'Target has no resolved hostSets because they are not loaded yet' + ); store.push({ data: { id: '1', type: 'host-set', - attributes: {} - } + attributes: {}, + }, }); store.push({ data: { id: '3', type: 'host-set', - attributes: {} - } + attributes: {}, + }, }); // Since `hostSets` is computed on `host_sets`, not the store itself, // it's necessary to do this assignment to kick-off the computed update. // eslint-disable-next-line no-self-assign target.host_sets = target.host_sets; - assert.equal(target.host_sets.length, 2, 'Target has two entires in host_sets'); + assert.equal( + target.host_sets.length, + 2, + 'Target has two entires in host_sets' + ); assert.equal(target.hostSets.length, 2, 'Target has two resolved hostSets'); - assert.notOk(target.hostSets[0].hostCatalog, 'Host catalog was not resolved because it is not loaded yet'); + assert.notOk( + target.hostSets[0].hostCatalog, + 'Host catalog was not resolved because it is not loaded yet' + ); store.push({ data: { id: '2', type: 'host-catalog', - attributes: {} - } + attributes: {}, + }, }); // eslint-disable-next-line no-self-assign target.host_sets = target.host_sets; @@ -63,7 +78,7 @@ module('Unit | Model | target', function (hooks) { const body = JSON.parse(request.requestBody); assert.deepEqual(body, { host_set_ids: ['123_abc', 'foobar'], - version: 1 + version: 1, }); }); const store = this.owner.lookup('service:store'); @@ -76,15 +91,15 @@ module('Unit | Model | target', function (hooks) { description: 'Description', host_sets: [ { host_set_id: '1', host_catalog_id: '2' }, - { host_set_id: '3', host_catalog_id: '4' } + { host_set_id: '3', host_catalog_id: '4' }, ], version: 1, scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const model = store.peekRecord('target', '123abc'); await model.addHostSets(['123_abc', 'foobar']); @@ -92,13 +107,16 @@ module('Unit | Model | target', function (hooks) { test('it has a `removeHostSets` method that targets a specific POST API endpoint and serialization', async function (assert) { assert.expect(1); - this.server.post('/v1/targets/123abc:remove-host-sets', (schema, request) => { - const body = JSON.parse(request.requestBody); - assert.deepEqual(body, { - host_set_ids: ['1', '3'], - version: 1 - }); - }); + this.server.post( + '/v1/targets/123abc:remove-host-sets', + (schema, request) => { + const body = JSON.parse(request.requestBody); + assert.deepEqual(body, { + host_set_ids: ['1', '3'], + version: 1, + }); + } + ); const store = this.owner.lookup('service:store'); store.push({ data: { @@ -109,15 +127,15 @@ module('Unit | Model | target', function (hooks) { description: 'Description', host_sets: [ { host_set_id: '1', host_catalog_id: '2' }, - { host_set_id: '3', host_catalog_id: '4' } + { host_set_id: '3', host_catalog_id: '4' }, ], version: 1, scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const model = store.peekRecord('target', '123abc'); await model.removeHostSets(['1', '3']); @@ -125,13 +143,16 @@ module('Unit | Model | target', function (hooks) { test('it has a `removeHostSet` method that deletes a single host set using `removeHostSets` method', async function (assert) { assert.expect(1); - this.server.post('/v1/targets/123abc:remove-host-sets', (schema, request) => { - const body = JSON.parse(request.requestBody); - assert.deepEqual(body, { - host_set_ids: ['3'], - version: 1 - }); - }); + this.server.post( + '/v1/targets/123abc:remove-host-sets', + (schema, request) => { + const body = JSON.parse(request.requestBody); + assert.deepEqual(body, { + host_set_ids: ['3'], + version: 1, + }); + } + ); const store = this.owner.lookup('service:store'); store.push({ data: { @@ -142,15 +163,15 @@ module('Unit | Model | target', function (hooks) { description: 'Description', host_sets: [ { host_set_id: '1', host_catalog_id: '2' }, - { host_set_id: '3', host_catalog_id: '4' } + { host_set_id: '3', host_catalog_id: '4' }, ], version: 1, scope: { scope_id: 'o_1', - type: 'scope' - } - } - } + type: 'scope', + }, + }, + }, }); const model = store.peekRecord('target', '123abc'); await model.removeHostSet('3'); diff --git a/addons/api/tests/unit/models/user-test.js b/addons/api/tests/unit/models/user-test.js index 1ba358ae1..df69a6501 100644 --- a/addons/api/tests/unit/models/user-test.js +++ b/addons/api/tests/unit/models/user-test.js @@ -1,10 +1,10 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Model | user', function(hooks) { +module('Unit | Model | user', function (hooks) { setupTest(hooks); - test('it exists', function(assert) { + test('it exists', function (assert) { let store = this.owner.lookup('service:store'); let model = store.createRecord('user', {}); assert.ok(model); diff --git a/addons/api/tests/unit/serializers/account-test.js b/addons/api/tests/unit/serializers/account-test.js index 85f9b655f..a94bf28f6 100644 --- a/addons/api/tests/unit/serializers/account-test.js +++ b/addons/api/tests/unit/serializers/account-test.js @@ -1,7 +1,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Serializer | account', function(hooks) { +module('Unit | Serializer | account', function (hooks) { setupTest(hooks); test('it serializes normally', function (assert) { @@ -16,7 +16,7 @@ module('Unit | Serializer | account', function(hooks) { attributes: { login_name: 'Login Name', }, - version: 1 + version: 1, }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = {}; @@ -27,9 +27,9 @@ module('Unit | Serializer | account', function(hooks) { auth_method_id: '1', description: 'Description', attributes: { - login_name: 'Login Name' + login_name: 'Login Name', }, - version: 1 + version: 1, }); }); @@ -45,11 +45,11 @@ module('Unit | Serializer | account', function(hooks) { attributes: { login_name: 'Login Name', }, - version: 1 + version: 1, }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = { - password: 'Password' + password: 'Password', }; const serializedRecord = serializer.serialize(snapshot); assert.deepEqual(serializedRecord, { @@ -59,9 +59,9 @@ module('Unit | Serializer | account', function(hooks) { description: 'Description', attributes: { login_name: 'Login Name', - password: 'Password' + password: 'Password', }, - version: 1 + version: 1, }); }); @@ -78,20 +78,20 @@ module('Unit | Serializer | account', function(hooks) { name: 'Name', description: 'Description', attributes: { - login_name: 'Login Name' + login_name: 'Login Name', }, auth_method_id: '1', - version: 1 + version: 1, }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = { method: 'set-password', - password: 'Password' + password: 'Password', }; const serializedRecord = serializer.serialize(snapshot); assert.deepEqual(serializedRecord, { password: 'Password', - version: 1 + version: 1, }); }); }); diff --git a/addons/api/tests/unit/serializers/application-test.js b/addons/api/tests/unit/serializers/application-test.js index 094e0ffb3..3ab733e52 100644 --- a/addons/api/tests/unit/serializers/application-test.js +++ b/addons/api/tests/unit/serializers/application-test.js @@ -19,14 +19,14 @@ module('Unit | Serializer | application', function (hooks) { description: 'Description', scope: { scope_id: 'global', - type: 'global' - } + type: 'global', + }, }); const serializedRecord = record.serialize(); assert.deepEqual(serializedRecord, { name: 'User', description: 'Description', - scope_id: 'global' + scope_id: 'global', }); }); @@ -38,14 +38,14 @@ module('Unit | Serializer | application', function (hooks) { description: 'Description', scope: { scope_id: 'global', - type: 'global' - } + type: 'global', + }, }); const serializedRecord = record.serialize(); assert.deepEqual(serializedRecord, { name: 'User', description: 'Description', - scope_id: 'global' + scope_id: 'global', }); }); @@ -55,19 +55,19 @@ module('Unit | Serializer | application', function (hooks) { const record = store.createRecord('user', { name: 'User', description: 'Description', - version: null + version: null, }); let serializedRecord = record.serialize(); assert.deepEqual(serializedRecord, { name: 'User', - description: 'Description' + description: 'Description', }); record.version = 1; serializedRecord = record.serialize(); assert.deepEqual(serializedRecord, { name: 'User', description: 'Description', - version: 1 + version: 1, }); }); @@ -121,7 +121,7 @@ module('Unit | Serializer | application', function (hooks) { const payload = { id: '1', name: 'User 1', - scope: { id: 'o_123' } + scope: { id: 'o_123' }, }; const normalized = serializer.normalizeSingleResponse( store, @@ -147,7 +147,7 @@ module('Unit | Serializer | application', function (hooks) { const payload = { id: '1', name: 'Target 1', - scope: { id: 'o_123' } + scope: { id: 'o_123' }, }; const normalized = serializer.normalizeSingleResponse( store, @@ -162,7 +162,7 @@ module('Unit | Serializer | application', function (hooks) { attributes: { name: 'Target 1', scope: { scope_id: 'o_123' }, - host_sets: [] + host_sets: [], }, relationships: {}, }, diff --git a/addons/api/tests/unit/serializers/fragment-host-set-test.js b/addons/api/tests/unit/serializers/fragment-host-set-test.js index 7a0cb2c59..61285678d 100644 --- a/addons/api/tests/unit/serializers/fragment-host-set-test.js +++ b/addons/api/tests/unit/serializers/fragment-host-set-test.js @@ -2,27 +2,27 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import FragmentHostSet from 'api/models/fragment-host-set'; -module('Unit | Serializer | fragment host set', function(hooks) { +module('Unit | Serializer | fragment host set', function (hooks) { setupTest(hooks); - test('it normalizes `id` into `host_set_id`', function(assert) { + test('it normalizes `id` into `host_set_id`', function (assert) { assert.expect(1); const store = this.owner.lookup('service:store'); const serializer = store.serializerFor('fragment-host-set'); const normalized = serializer.normalize(FragmentHostSet, { id: '2', - host_catalog_id: '1' + host_catalog_id: '1', }); assert.deepEqual(normalized, { data: { attributes: { host_set_id: '2', - host_catalog_id: '1' + host_catalog_id: '1', }, id: null, relationships: {}, - type: 'fragment-host-set' - } + type: 'fragment-host-set', + }, }); }); }); diff --git a/addons/api/tests/unit/serializers/fragment-principal-test.js b/addons/api/tests/unit/serializers/fragment-principal-test.js index bda2d46c5..d6606dff3 100644 --- a/addons/api/tests/unit/serializers/fragment-principal-test.js +++ b/addons/api/tests/unit/serializers/fragment-principal-test.js @@ -2,29 +2,29 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import FragmentPrincipal from 'api/models/fragment-principal'; -module('Unit | Serializer | fragment principal', function(hooks) { +module('Unit | Serializer | fragment principal', function (hooks) { setupTest(hooks); - test('it normalizes `id` into `principal_id`', function(assert) { + test('it normalizes `id` into `principal_id`', function (assert) { assert.expect(1); const store = this.owner.lookup('service:store'); const serializer = store.serializerFor('fragment-principal'); const normalized = serializer.normalize(FragmentPrincipal, { scope_id: '1', principal_id: '2', - type: 'user' + type: 'user', }); assert.deepEqual(normalized, { data: { attributes: { scope_id: '1', principal_id: '2', - type: 'user' + type: 'user', }, id: null, relationships: {}, - type: 'fragment-principal' - } + type: 'fragment-principal', + }, }); }); }); diff --git a/addons/api/tests/unit/serializers/group-test.js b/addons/api/tests/unit/serializers/group-test.js index 8c80a1b50..29d0e5d90 100644 --- a/addons/api/tests/unit/serializers/group-test.js +++ b/addons/api/tests/unit/serializers/group-test.js @@ -1,7 +1,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Serializer | group', function(hooks) { +module('Unit | Serializer | group', function (hooks) { setupTest(hooks); test('it serializes groups normally, without members', function (assert) { @@ -11,8 +11,8 @@ module('Unit | Serializer | group', function(hooks) { const record = store.createRecord('group', { name: 'Group', description: 'Description', - member_ids: [ '1', '2', ], - version: 1 + member_ids: ['1', '2'], + version: 1, }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = {}; @@ -20,7 +20,7 @@ module('Unit | Serializer | group', function(hooks) { assert.deepEqual(serializedRecord, { name: 'Group', description: 'Description', - version: 1 + version: 1, }); }); @@ -31,17 +31,17 @@ module('Unit | Serializer | group', function(hooks) { const record = store.createRecord('group', { name: 'Group', description: 'Description', - member_ids: [ '1', '2', ], - version: 1 + member_ids: ['1', '2'], + version: 1, }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = { - memberIDs: ['4', '5'] + memberIDs: ['4', '5'], }; const serializedRecord = serializer.serialize(snapshot); assert.deepEqual(serializedRecord, { member_ids: ['4', '5'], - version: 1 + version: 1, }); }); @@ -53,7 +53,7 @@ module('Unit | Serializer | group', function(hooks) { const payload = { id: '1', name: 'Group 1', - scope: { id: 'o_123' } + scope: { id: 'o_123' }, }; const normalized = serializer.normalizeSingleResponse( store, @@ -68,11 +68,10 @@ module('Unit | Serializer | group', function(hooks) { attributes: { name: 'Group 1', scope: { scope_id: 'o_123' }, - member_ids: [] + member_ids: [], }, relationships: {}, }, }); }); - }); diff --git a/addons/api/tests/unit/serializers/host-set-test.js b/addons/api/tests/unit/serializers/host-set-test.js index be9d51436..015c7802b 100644 --- a/addons/api/tests/unit/serializers/host-set-test.js +++ b/addons/api/tests/unit/serializers/host-set-test.js @@ -1,7 +1,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Serializer | host set', function(hooks) { +module('Unit | Serializer | host set', function (hooks) { setupTest(hooks); test('it serializes host sets normally, without host_ids', function (assert) { @@ -12,7 +12,7 @@ module('Unit | Serializer | host set', function(hooks) { name: 'Host Set 1', description: 'Description', host_catalog_id: '123', - version: 1 + version: 1, }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = {}; @@ -21,7 +21,7 @@ module('Unit | Serializer | host set', function(hooks) { name: 'Host Set 1', description: 'Description', host_catalog_id: '123', - version: 1 + version: 1, }); }); @@ -32,17 +32,17 @@ module('Unit | Serializer | host set', function(hooks) { const record = store.createRecord('host-set', { name: 'Host Set 1', description: 'Description', - host_ids: [{value: '1'}, {value: '2'}, {value: '3'}], - version: 1 + host_ids: [{ value: '1' }, { value: '2' }, { value: '3' }], + version: 1, }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = { - hostIDs: ['4', '5'] + hostIDs: ['4', '5'], }; const serializedRecord = serializer.serialize(snapshot); assert.deepEqual(serializedRecord, { host_ids: ['4', '5'], - version: 1 + version: 1, }); }); @@ -54,7 +54,7 @@ module('Unit | Serializer | host set', function(hooks) { const payload = { id: '1', name: 'Host Set 1', - host_ids: ['1', '2', '3'] + host_ids: ['1', '2', '3'], }; const normalized = serializer.normalizeSingleResponse( store, @@ -68,7 +68,7 @@ module('Unit | Serializer | host set', function(hooks) { type: 'host-set', attributes: { name: 'Host Set 1', - host_ids: [{value: '1'}, {value: '2'}, {value: '3'}], + host_ids: [{ value: '1' }, { value: '2' }, { value: '3' }], }, relationships: {}, }, @@ -83,7 +83,7 @@ module('Unit | Serializer | host set', function(hooks) { const payload = { id: '1', name: 'Host Set 1', - scope: { id: 'o_123' } + scope: { id: 'o_123' }, }; const normalized = serializer.normalizeSingleResponse( store, @@ -98,11 +98,10 @@ module('Unit | Serializer | host set', function(hooks) { attributes: { name: 'Host Set 1', scope: { scope_id: 'o_123' }, - host_ids: [] + host_ids: [], }, relationships: {}, }, }); }); - }); diff --git a/addons/api/tests/unit/serializers/role-test.js b/addons/api/tests/unit/serializers/role-test.js index 7a3d6e59d..1e0624d6a 100644 --- a/addons/api/tests/unit/serializers/role-test.js +++ b/addons/api/tests/unit/serializers/role-test.js @@ -1,7 +1,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Serializer | role', function(hooks) { +module('Unit | Serializer | role', function (hooks) { setupTest(hooks); test('it serializes roles normally, without grants', function (assert) { @@ -11,8 +11,8 @@ module('Unit | Serializer | role', function(hooks) { const record = store.createRecord('role', { name: 'User', description: 'Description', - grants: [{value: 'foo'}, {value: 'bar'}], - version: 1 + grants: [{ value: 'foo' }, { value: 'bar' }], + version: 1, }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = {}; @@ -20,7 +20,7 @@ module('Unit | Serializer | role', function(hooks) { assert.deepEqual(serializedRecord, { name: 'User', description: 'Description', - version: 1 + version: 1, }); }); @@ -31,17 +31,17 @@ module('Unit | Serializer | role', function(hooks) { const record = store.createRecord('role', { name: 'User', description: 'Description', - grants: [{value: 'foo'}, {value: 'bar'}], - version: 1 + grants: [{ value: 'foo' }, { value: 'bar' }], + version: 1, }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = { - serializeGrants: true + serializeGrants: true, }; const serializedRecord = serializer.serialize(snapshot); assert.deepEqual(serializedRecord, { grant_strings: ['foo', 'bar'], - version: 1 + version: 1, }); }); @@ -53,7 +53,7 @@ module('Unit | Serializer | role', function(hooks) { const payload = { id: '1', name: 'Role 1', - grant_strings: ['*', '*'] + grant_strings: ['*', '*'], }; const normalized = serializer.normalizeSingleResponse( store, @@ -67,8 +67,8 @@ module('Unit | Serializer | role', function(hooks) { type: 'role', attributes: { name: 'Role 1', - grants: [{value: '*'}, {value: '*'}], - principals: [] + grants: [{ value: '*' }, { value: '*' }], + principals: [], }, relationships: {}, }, @@ -83,13 +83,9 @@ module('Unit | Serializer | role', function(hooks) { const payload = { id: '1', name: 'Role 1', - scope: { id: 'o_123' } + scope: { id: 'o_123' }, }; - const normalized = serializer.normalizeSingleResponse( - store, - role, - payload - ); + const normalized = serializer.normalizeSingleResponse(store, role, payload); assert.deepEqual(normalized, { included: [], data: { @@ -98,11 +94,10 @@ module('Unit | Serializer | role', function(hooks) { attributes: { name: 'Role 1', scope: { scope_id: 'o_123' }, - principals: [] + principals: [], }, relationships: {}, }, }); }); - }); diff --git a/addons/api/tests/unit/serializers/target-test.js b/addons/api/tests/unit/serializers/target-test.js index e129331eb..07d5b3c21 100644 --- a/addons/api/tests/unit/serializers/target-test.js +++ b/addons/api/tests/unit/serializers/target-test.js @@ -1,7 +1,7 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; -module('Unit | Serializer | target', function(hooks) { +module('Unit | Serializer | target', function (hooks) { setupTest(hooks); test('it serializes targets normally, without host sets', function (assert) { @@ -13,14 +13,14 @@ module('Unit | Serializer | target', function(hooks) { description: 'Description', host_sets: [ { host_set_id: '1', host_catalog_id: '2' }, - { host_set_id: '3', host_catalog_id: '4' } + { host_set_id: '3', host_catalog_id: '4' }, ], scope: { scope_id: 'org_1', - type: 'org' + type: 'org', }, version: 1, - type: 'tcp' + type: 'tcp', }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = {}; @@ -32,10 +32,9 @@ module('Unit | Serializer | target', function(hooks) { type: 'tcp', scope_id: 'org_1', attributes: { - default_port: null - } + default_port: null, + }, }); - }); test('it serializes only host sets and version when an `adapterOptions.hostSetIDs` array is passed', function (assert) { @@ -47,18 +46,18 @@ module('Unit | Serializer | target', function(hooks) { description: 'Description', host_sets: [ { host_set_id: '1', host_catalog_id: '2' }, - { host_set_id: '3', host_catalog_id: '4' } + { host_set_id: '3', host_catalog_id: '4' }, ], - version: 1 + version: 1, }); const snapshot = record._createSnapshot(); snapshot.adapterOptions = { - hostSetIDs: ['4', '5'] + hostSetIDs: ['4', '5'], }; const serializedRecord = serializer.serialize(snapshot); assert.deepEqual(serializedRecord, { host_set_ids: ['4', '5'], - version: 1 + version: 1, }); }); @@ -72,8 +71,8 @@ module('Unit | Serializer | target', function(hooks) { name: 'Target 1', host_sets: [ { host_set_id: '1', host_catalog_id: '2' }, - { host_set_id: '3', host_catalog_id: '4' } - ] + { host_set_id: '3', host_catalog_id: '4' }, + ], }; const normalized = serializer.normalizeSingleResponse( store, @@ -89,8 +88,8 @@ module('Unit | Serializer | target', function(hooks) { name: 'Target 1', host_sets: [ { host_set_id: '1', host_catalog_id: '2' }, - { host_set_id: '3', host_catalog_id: '4' } - ] + { host_set_id: '3', host_catalog_id: '4' }, + ], }, relationships: {}, }, @@ -105,7 +104,7 @@ module('Unit | Serializer | target', function(hooks) { const payload = { id: '1', name: 'Target 1', - scope: { id: 'o_123' } + scope: { id: 'o_123' }, }; const normalized = serializer.normalizeSingleResponse( store, @@ -120,11 +119,10 @@ module('Unit | Serializer | target', function(hooks) { attributes: { name: 'Target 1', scope: { scope_id: 'o_123' }, - host_sets: [] + host_sets: [], }, relationships: {}, }, }); }); - });