1*dc51e206SEvan Baconimport { copyAsync } from '../../utils/dir';
2*dc51e206SEvan Baconimport { saveAssetsAsync } from '../saveAssets';
3*dc51e206SEvan Bacon
4*dc51e206SEvan Baconjest.mock('../../log');
5*dc51e206SEvan Bacon
6*dc51e206SEvan Baconjest.mock('../../utils/dir', () => ({
7*dc51e206SEvan Bacon  copyAsync: jest.fn(),
8*dc51e206SEvan Bacon}));
9*dc51e206SEvan Bacon
10*dc51e206SEvan Bacondescribe(saveAssetsAsync, () => {
11*dc51e206SEvan Bacon  it(`copy assets into directory`, async () => {
12*dc51e206SEvan Bacon    await saveAssetsAsync('/', {
13*dc51e206SEvan Bacon      outputDir: 'output',
14*dc51e206SEvan Bacon      assets: [
15*dc51e206SEvan Bacon        {
16*dc51e206SEvan Bacon          __packager_asset: true,
17*dc51e206SEvan Bacon          files: ['/icon.png', '/[email protected]'],
18*dc51e206SEvan Bacon          hash: '4e3f888fc8475f69fd5fa32f1ad5216a',
19*dc51e206SEvan Bacon          name: 'icon',
20*dc51e206SEvan Bacon          type: 'png',
21*dc51e206SEvan Bacon          fileHashes: ['4e3f888fc8475f69fd5fa32f1ad5216a', 'hash-2'],
22*dc51e206SEvan Bacon        },
23*dc51e206SEvan Bacon      ],
24*dc51e206SEvan Bacon    });
25*dc51e206SEvan Bacon
26*dc51e206SEvan Bacon    expect(copyAsync).toBeCalledTimes(2);
27*dc51e206SEvan Bacon    expect(copyAsync).toHaveBeenNthCalledWith(
28*dc51e206SEvan Bacon      1,
29*dc51e206SEvan Bacon      '/icon.png',
30*dc51e206SEvan Bacon      'output/assets/4e3f888fc8475f69fd5fa32f1ad5216a'
31*dc51e206SEvan Bacon    );
32*dc51e206SEvan Bacon    expect(copyAsync).toHaveBeenNthCalledWith(2, '/[email protected]', 'output/assets/hash-2');
33*dc51e206SEvan Bacon  });
34*dc51e206SEvan Bacon});
35