| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- import gql from 'graphql-tag';
- import { CREATE_ASSETS } from '../../admin-ui/src/app/data/definitions/product-definitions';
- import { createUploadPostData } from './create-upload-post-data';
- describe('createUploadPostData()', () => {
- it('creates correct output for createAssets mutation', () => {
- const result = createUploadPostData(CREATE_ASSETS, ['a.jpg', 'b.jpg'], filePaths => ({
- input: filePaths.map(() => ({ file: null })),
- }));
- expect(result.operations.operationName).toBe('CreateAssets');
- expect(result.operations.variables).toEqual({
- input: [{ file: null }, { file: null }],
- });
- expect(result.map).toEqual({
- 0: 'variables.input.0.file',
- 1: 'variables.input.1.file',
- });
- expect(result.filePaths).toEqual([{ name: '0', file: 'a.jpg' }, { name: '1', file: 'b.jpg' }]);
- });
- it('creates correct output for importProducts mutation', () => {
- const result = createUploadPostData(
- gql`
- mutation ImportProducts($input: Upload!) {
- importProducts(csvFile: $input) {
- errors
- importedCount
- }
- }
- `,
- 'data.csv',
- () => ({ csvFile: null }),
- );
- expect(result.operations.operationName).toBe('ImportProducts');
- expect(result.operations.variables).toEqual({ csvFile: null });
- expect(result.map).toEqual({
- 0: 'variables.csvFile',
- });
- expect(result.filePaths).toEqual([{ name: '0', file: 'data.csv' }]);
- });
- });
|