Files
react-native/local-cli/link/__tests__/ios/writePlist-test.js
Rubén Norte ffa9036252 jest: rename tests to follow the new convention
Summary:
Renamed test files to match `-test.js`, so people can add test helpers without blacklisting.

Codemod code: P60365841

Script executed:

```
cd xplat/js
./scripts/node/node rename-script.js > result.txt
```

Reviewed By: mjesun

Differential Revision: D13185673

fbshipit-source-id: 87451635aa538c2c1d1886e75574d0e5c889596e
2018-11-26 10:30:12 -08:00

63 lines
1.6 KiB
JavaScript

/**
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @format
* @emails oncall+javascript_foundation
*/
'use strict';
jest.mock('path');
jest.mock('fs');
let plistPath = null;
jest.mock('../../ios/getPlistPath', () => () => plistPath);
const {readFileSync} = jest.requireActual('fs');
const fs = require('fs');
const xcode = require('xcode');
const writePlist = require('../../ios/writePlist');
const realPath = jest.requireActual('path');
const projectPath = realPath.join(
__dirname,
'../../__fixtures__/project.pbxproj',
);
const infoPlistPath = realPath.join(__dirname, '../../__fixtures__/Info.plist');
fs.readFileSync = jest.fn(() => readFileSync(projectPath).toString());
const {writeFileSync} = fs;
fs.writeFileSync = jest.fn(writeFileSync);
const project = xcode.project('/Basic/project.pbxproj');
const plist = {
CFBundleDevelopmentRegion: 'en',
UISupportedInterfaceOrientations: ['UIInterfaceOrientationPortrait'],
};
describe('ios::writePlist', () => {
beforeEach(() => {
project.parseSync();
fs.writeFileSync.mockReset();
});
it('should write a `.plist` file', () => {
plistPath = '/Basic/Info.plist';
writePlist(project, '/', plist);
const infoPlist = readFileSync(infoPlistPath).toString();
expect(fs.writeFileSync).toHaveBeenCalledWith(plistPath, infoPlist);
});
it('when plistPath is null it should return null', () => {
plistPath = null;
expect(writePlist(project, '/', plist)).toBeNull();
expect(fs.writeFileSync).not.toHaveBeenCalled();
});
});