| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- import { LanguageCode, mergeConfig } from '@vendure/core';
- import { createTestEnvironment } from '@vendure/testing';
- import gql from 'graphql-tag';
- import path from 'path';
- import { afterAll, beforeAll, describe, expect, it } from 'vitest';
- import { initialData } from '../../../e2e-common/e2e-initial-data';
- import { testConfig, TEST_SETUP_TIMEOUT_MS } from '../../../e2e-common/test-config';
- import * as DE from './fixtures/i18n/de.json';
- import * as EN from './fixtures/i18n/en.json';
- import {
- CUSTOM_ERROR_MESSAGE_TRANSLATION,
- TranslationTestPlugin,
- } from './fixtures/test-plugins/translation-test-plugin';
- describe('Translation', () => {
- const { server, adminClient } = createTestEnvironment(
- mergeConfig(testConfig(), {
- plugins: [TranslationTestPlugin],
- }),
- );
- beforeAll(async () => {
- await server.init({
- initialData,
- productsCsvPath: path.join(__dirname, 'fixtures/e2e-products-minimal.csv'),
- customerCount: 0,
- });
- await adminClient.asSuperAdmin();
- }, TEST_SETUP_TIMEOUT_MS);
- afterAll(async () => {
- await server.destroy();
- });
- describe('translations added manualy', () => {
- it('shall receive custom error message', async () => {
- const { customErrorMessage } = await adminClient.query(gql(CUSTOM_ERROR));
- expect(customErrorMessage.errorCode).toBe('CUSTOM_ERROR');
- expect(customErrorMessage.message).toBe(CUSTOM_ERROR_MESSAGE_TRANSLATION);
- });
- it('shall receive german error message', async () => {
- const { customErrorMessage } = await adminClient.query(
- gql(CUSTOM_ERROR),
- {},
- { languageCode: LanguageCode.de },
- );
- expect(customErrorMessage.errorCode).toBe('CUSTOM_ERROR');
- expect(customErrorMessage.message).toBe('DE_' + CUSTOM_ERROR_MESSAGE_TRANSLATION);
- });
- });
- describe('translation added by file', () => {
- it('shall receive custom error message', async () => {
- const { newErrorMessage } = await adminClient.query(gql(NEW_ERROR));
- expect(newErrorMessage.errorCode).toBe('NEW_ERROR');
- expect(newErrorMessage.message).toBe(EN.errorResult.NEW_ERROR);
- });
- it('shall receive german error message', async () => {
- const { newErrorMessage } = await adminClient.query(
- gql(NEW_ERROR),
- {},
- { languageCode: LanguageCode.de },
- );
- expect(newErrorMessage.errorCode).toBe('NEW_ERROR');
- expect(newErrorMessage.message).toBe(DE.errorResult.NEW_ERROR);
- });
- });
- });
- const CUSTOM_ERROR = `
- query CustomError {
- customErrorMessage {
- ... on ErrorResult {
- errorCode
- message
- }
- }
- }
- `;
- const NEW_ERROR = `
- query NewError {
- newErrorMessage {
- ... on ErrorResult {
- errorCode
- message
- }
- }
- }
- `;
|