Files
threshold-ui/ui/desktop/tests/integration/components/settings-card/user-test.js
T

80 lines
2.2 KiB
JavaScript

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: BUSL-1.1
*/
import { module, test } from 'qunit';
import { setupRenderingTest } from 'ember-qunit';
import { render } from '@ember/test-helpers';
import { hbs } from 'ember-cli-htmlbars';
import { setupIntl } from 'ember-intl/test-support';
import Service from '@ember/service';
const data = {
authenticated: {
username: 'admin',
authenticator: 'authenticator:password',
},
};
const USERNAME = '[data-test-username]';
const AUTH_METHOD_TYPE = '[data-test-auth-method]';
const AUTHENTICATION_BADGE = '.hds-badge__text';
module('Integration | Component | settings-card/user', function (hooks) {
setupRenderingTest(hooks);
setupIntl(hooks, 'en-us');
test('it renders password correctly', async function (assert) {
this.owner.register(
'service:session',
class extends Service {
data = data;
isAuthenticated = true;
},
);
await render(hbs`<SettingsCard::User />`);
assert.dom(AUTHENTICATION_BADGE).hasText('Authenticated');
assert.dom(AUTH_METHOD_TYPE).hasText('Password');
assert.dom(USERNAME).hasText('admin');
});
test('it renders OIDC correctly', async function (assert) {
let oidcData = structuredClone(data);
oidcData.authenticated.authenticator = 'authenticator:oidc';
this.owner.register(
'service:session',
class extends Service {
data = oidcData;
isAuthenticated = true;
},
);
await render(hbs`<SettingsCard::User />`);
assert.dom(AUTHENTICATION_BADGE).hasText('Authenticated');
assert.dom(AUTH_METHOD_TYPE).hasText('OIDC');
assert.dom(USERNAME).hasText('admin');
});
test('it renders LDAP correctly', async function (assert) {
let ldapData = structuredClone(data);
ldapData.authenticated.authenticator = 'authenticator:ldap';
this.owner.register(
'service:session',
class extends Service {
data = ldapData;
isAuthenticated = true;
},
);
await render(hbs`<SettingsCard::User />`);
assert.dom(AUTHENTICATION_BADGE).hasText('Authenticated');
assert.dom(AUTH_METHOD_TYPE).hasText('LDAP');
assert.dom(USERNAME).hasText('admin');
});
});