Aktualisiere Versionsnummer auf 3.1.0 in README.md, package.json, package-lock.json und package-solution.json. Füge CurrentNavigationSettingsProvider hinzu und integriere zugehörige Tests.
This commit is contained in:
@@ -9,8 +9,9 @@ function assert(condition: boolean, message: string): void {
|
||||
}
|
||||
|
||||
const providers: Array<ISettingsProvider<any>> = getSettingsProviders(); // tslint:disable-line:no-any
|
||||
assert(providers.length === 3, 'Genau drei Provider werden erwartet.');
|
||||
assert(providers.length === 4, 'Genau vier Provider werden erwartet.');
|
||||
assert(!!getSettingsProvider('megamenu'), 'MegaMenu-Provider fehlt.');
|
||||
assert(!!getSettingsProvider('currentnavigation'), 'CurrentNavigation-Provider fehlt.');
|
||||
assert(!!getSettingsProvider('custombranding'), 'CustomBranding-Provider fehlt.');
|
||||
assert(!!getSettingsProvider('expiryindicator'), 'ExpiryIndicator-Provider fehlt.');
|
||||
|
||||
@@ -31,6 +32,22 @@ assert(normalizedMega.menuMode === 'megaMenu', 'MegaMenu Modus-Fallback fehlt.')
|
||||
assert(normalizedMega.portalSettings.providerKey === 'megamenu', 'MegaMenu-Vertragsmarker fehlt.');
|
||||
assert(normalizedMega.unknownFuture === 'keep', 'Unbekannte MegaMenu-Properties gehen verloren.');
|
||||
|
||||
const current: ISettingsProvider<any> = getSettingsProvider('currentnavigation'); // tslint:disable-line:no-any
|
||||
assert(!!current.storage.action, 'CurrentNavigation-Aktivierungsdefinition fehlt.');
|
||||
assert(current.storage.action.name === 'CurrentNavigation', 'CurrentNavigation Action-Name ist nicht stabil.');
|
||||
assert(current.storage.action.sequence === 110, 'CurrentNavigation Action-Sequenz ist nicht stabil.');
|
||||
const normalizedCurrent: any = current.normalize({ // tslint:disable-line:no-any
|
||||
cacheMinutes: 5000, cacheVersion: '', maxDepth: 99, showRoot: true, future: 'keep'
|
||||
});
|
||||
assert(normalizedCurrent.cacheMinutes === 1440, 'CurrentNavigation Cache-Maximum greift nicht.');
|
||||
assert(normalizedCurrent.cacheVersion === '1', 'CurrentNavigation Cache-Fallback fehlt.');
|
||||
assert(normalizedCurrent.maxDepth === 8, 'CurrentNavigation Tiefenlimit greift nicht.');
|
||||
assert(normalizedCurrent.showRoot === true, 'CurrentNavigation Root-Anzeige geht verloren.');
|
||||
assert(normalizedCurrent.future === 'keep', 'Unbekannte CurrentNavigation-Properties gehen verloren.');
|
||||
const invalidCurrent: any = current.createDefault(); // tslint:disable-line:no-any
|
||||
invalidCurrent.termSetName = 'Nur ein Name';
|
||||
assert(current.validate(invalidCurrent).length > 0, 'CurrentNavigation muss eine Termset-ID verlangen.');
|
||||
|
||||
const branding: ISettingsProvider<any> = getSettingsProvider('custombranding'); // tslint:disable-line:no-any
|
||||
assert(!!branding.storage.action, 'CustomBranding-Aktivierungsdefinition fehlt.');
|
||||
assert(branding.storage.action.name === 'CustomBranding', 'CustomBranding Action-Name ist nicht stabil.');
|
||||
|
||||
Reference in New Issue
Block a user