mirror of
https://github.com/datahub-project/datahub.git
synced 2025-08-12 03:07:05 +00:00

* 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
48 lines
2.0 KiB
TypeScript
48 lines
2.0 KiB
TypeScript
import HealthProxy from '@datahub/shared/utils/health/health-proxy';
|
|
import { module, test } from 'qunit';
|
|
import { setupRenderingTest } from 'ember-qunit';
|
|
import setupMirage from 'ember-cli-mirage/test-support/setup-mirage';
|
|
import { MirageTestContext } from '@datahub/utils/types/vendor/ember-cli-mirage/mirage-tests';
|
|
import { getSerializedMirageModel } from '@datahub/utils/test-helpers/serialize-mirage-model';
|
|
|
|
module('Unit | Utility | health/health-proxy', function(hooks): void {
|
|
setupRenderingTest(hooks);
|
|
setupMirage(hooks);
|
|
|
|
test('Proxy attributes and behavior', function(this: MirageTestContext, assert) {
|
|
const { server } = this;
|
|
server.createList('entityHealth', 1, {
|
|
validations: [
|
|
{
|
|
score: 1,
|
|
description: '',
|
|
weight: 1,
|
|
tier: 'MINOR',
|
|
validator: 'com.linkedin.metadata.validators.OwnershipValidator'
|
|
}
|
|
]
|
|
});
|
|
|
|
let { score, validations, lastUpdated } = new HealthProxy();
|
|
assert.notOk(score, 'Expected the health score to be null when constructor invoked without arguments');
|
|
assert.ok(Array.isArray(validations), 'Expected validations to still be an array when no arguments are supplied');
|
|
assert.notOk(validations.length, 'Expected validations to still be an array when no arguments are supplied');
|
|
assert.notOk(lastUpdated, 'Expected lastUpdated to not have a value');
|
|
|
|
const [health] = getSerializedMirageModel('entityHealths', server);
|
|
|
|
const now = Date.now();
|
|
({ validations, score, lastUpdated } = new HealthProxy({ ...health, created: { actor: 'test', time: now } }));
|
|
const [validation] = validations;
|
|
|
|
assert.equal(
|
|
validation.validator,
|
|
'Ownership',
|
|
'Expected the validation validator string to match the OwnershipValidator'
|
|
);
|
|
|
|
assert.equal(typeof score, 'string', 'Expected the numeric score value to be converted to a string');
|
|
assert.equal(lastUpdated, now, `Expected last updated to match the timestamp ${now}`);
|
|
});
|
|
});
|