Charlie Tran 843a6c5bbb
feat(frontend): update datahub-web client UI code (#1806)
* Releases updated version of datahub-web client UI code

* Fix typo in yarn lock

* Change yarn lock to match yarn registry directories

* Previous commit missed some paths

* Even more changes to yarnlock missing in previous commit

* Include codegen file for typings

* Add files to get parity for datahub-web and current OS datahub-midtier

* Add in typo fix from previous commit - change to proper license

* Implement proper OS fix for person entity picture url

* Workarounds for open source DH issues

* Fixes institutional memory api and removes unopensourced tabs for datasets

* Fixes search dataset deprecation and user search issue as a result of changes

* Remove internal only options in the avatar menu
2020-08-26 15:44:50 -07:00

55 lines
2.0 KiB
TypeScript

import { module, test } from 'qunit';
import { setupRenderingTest } from 'ember-qunit';
import { render } from '@ember/test-helpers';
import hbs from 'htmlbars-inline-precompile';
import setupRouter from '@datahub/utils/test-helpers/setup-router';
module('Integration | Component | tracking/trackable-link-to', function(hooks): void {
setupRenderingTest(hooks);
test('it renders', async function(assert): Promise<void> {
setupRouter(this);
this.set('contentName', 'contentName');
this.set('contentPiece', 'contentPiece');
this.set('linkParams', { route: 'browse' });
this.set('id', 'test-analytics-trackable-link-to');
await render(hbs`
<Tracking::TrackableLinkTo @params={{linkParams}} @contentPiece={{contentPiece}} @contentName={{contentName}} id={{id}}>
Link to browse
</Tracking::TrackableLinkTo>
`);
// For subsequent tests asserts that trackableLink is not null to prevent repeated checks, if false, tests will still fail as expected
const trackableLink: HTMLElement | null = this.element.querySelector(
'#test-analytics-trackable-link-to'
) as HTMLElement;
assert.equal(trackableLink.tagName, 'A', 'expected component element to be an anchor tag');
assert.equal(
trackableLink.dataset.contentName,
'contentName',
'expected component to have a data-content-name attribute'
);
assert.equal(
trackableLink.dataset.contentPiece,
'contentPiece',
'expected component to have a data-content-piece attribute'
);
assert.equal(trackableLink.getAttribute('href'), '/browse', 'expected the href attribute to be browse route');
assert.ok(
trackableLink.dataset.contentTarget?.includes('/browse'),
'expected component attribute data-content-target to contain "browse"'
);
assert.equal(
trackableLink.textContent && trackableLink.textContent.trim(),
'Link to browse',
'expected the anchor element text to match'
);
});
});