@o3r/testing
Version:
The module provides testing (e2e, unit test) utilities to help you build your own E2E pipeline integrating visual testing.
96 lines • 4.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.LocalizationDependencyMocks = exports.O3rTranslatePipeMock = exports.TranslatePipeMock = void 0;
exports.mockTranslationModules = mockTranslationModules;
var tslib_1 = require("tslib");
var core_1 = require("@angular/core");
var core_2 = require("@ngx-translate/core");
var localization_1 = require("@o3r/localization");
var rxjs_1 = require("rxjs");
var defaultLocalizationConfiguration = {
supportedLocales: ['en'],
language: 'en',
endPointUrl: '',
fallbackLanguage: 'en'
};
var TranslatePipeMock = /** @class */ (function () {
function TranslatePipeMock() {
}
TranslatePipeMock.prototype.transform = function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return args && args.map(function (arg) { return JSON.parse(arg); }).join(', ');
};
TranslatePipeMock = tslib_1.__decorate([
(0, core_1.Pipe)({ name: 'translate' })
], TranslatePipeMock);
return TranslatePipeMock;
}());
exports.TranslatePipeMock = TranslatePipeMock;
var O3rTranslatePipeMock = /** @class */ (function () {
function O3rTranslatePipeMock() {
}
O3rTranslatePipeMock.prototype.transform = function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return args && args.map(function (arg) { return JSON.parse(arg); }).join(', ');
};
O3rTranslatePipeMock = tslib_1.__decorate([
(0, core_1.Pipe)({ name: 'o3rTranslate' })
], O3rTranslatePipeMock);
return O3rTranslatePipeMock;
}());
exports.O3rTranslatePipeMock = O3rTranslatePipeMock;
var LocalizationDependencyMocks = /** @class */ (function () {
function LocalizationDependencyMocks() {
}
LocalizationDependencyMocks_1 = LocalizationDependencyMocks;
LocalizationDependencyMocks.forTest = function (pipeWithPrefix) {
if (pipeWithPrefix === void 0) { pipeWithPrefix = false; }
return {
ngModule: LocalizationDependencyMocks_1,
providers: [{ provide: localization_1.O3rLocalizationTranslatePipe, useClass: pipeWithPrefix ? O3rTranslatePipeMock : TranslatePipeMock }]
};
};
var LocalizationDependencyMocks_1;
LocalizationDependencyMocks = LocalizationDependencyMocks_1 = tslib_1.__decorate([
(0, core_1.NgModule)({
declarations: [TranslatePipeMock, O3rTranslatePipeMock],
exports: [TranslatePipeMock, O3rTranslatePipeMock]
})
], LocalizationDependencyMocks);
return LocalizationDependencyMocks;
}());
exports.LocalizationDependencyMocks = LocalizationDependencyMocks;
/**
* Function to get the list of modules required to test component using Localization module
* @param localizationConfiguration Localization configuration
* @param translations Translations to use
* @param translationCompilerProvider Provider for translations compiler
* @param mockPipe Enable translation pipe mocking
* @param pipeWithPrefix Enable pipe with prefix
* @returns List of modules to import in the TestBed
*/
function mockTranslationModules(localizationConfiguration, translations, translationCompilerProvider, mockPipe, pipeWithPrefix) {
if (localizationConfiguration === void 0) { localizationConfiguration = defaultLocalizationConfiguration; }
if (translations === void 0) { translations = {}; }
if (mockPipe === void 0) { mockPipe = false; }
if (pipeWithPrefix === void 0) { pipeWithPrefix = false; }
return tslib_1.__spreadArray([
localization_1.LocalizationModule.forRoot(function () { return localizationConfiguration; }),
core_2.TranslateModule.forRoot({
loader: {
provide: core_2.TranslateLoader,
useValue: {
getTranslation: function (lang) { return (0, rxjs_1.of)(translations[lang]); }
}
},
compiler: translationCompilerProvider
})
], (mockPipe ? [LocalizationDependencyMocks.forTest(pipeWithPrefix)] : []), true);
}
//# sourceMappingURL=localization-mock.js.map