| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import { CreateFacet, LanguageCode } from '@vendure/common/lib/generated-types';
- import gql from 'graphql-tag';
- import path from 'path';
- import { CREATE_FACET } from '../../../admin-ui/src/app/data/definitions/facet-definitions';
- import { TEST_SETUP_TIMEOUT_MS } from './config/test-config';
- import { TestShopClient } from './test-client';
- import { TestServer } from './test-server';
- describe('EntityIdStrategy', () => {
- const shopClient = new TestShopClient();
- const server = new TestServer();
- beforeAll(async () => {
- await server.init({
- productsCsvPath: path.join(__dirname, 'fixtures/e2e-products-minimal.csv'),
- customerCount: 1,
- });
- await shopClient.init();
- }, TEST_SETUP_TIMEOUT_MS);
- afterAll(async () => {
- await server.destroy();
- });
- it('Does not doubly-encode ids from resolved properties', async () => {
- const result = await shopClient.query(gql`
- query {
- product(id: "T_1", languageCode: en) {
- id
- variants {
- id
- options {
- id
- name
- }
- }
- }
- }
- `);
- expect(result.product.id).toBe('T_1');
- expect(result.product.variants[0].id).toBe('T_1');
- expect(result.product.variants[0].options[0].id).toBe('T_1');
- });
- });
|