UNPKG

react-native-integrate

Version:

Automate integration of additional code into React Native projects

30 lines (29 loc) 2.06 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); require('../../../../mocks/mockAll'); const escapeRegExp_1 = require("../../../../../utils/escapeRegExp"); const getIosProjectPath_1 = require("../../../../../utils/getIosProjectPath"); const importIosBuildProperties_1 = require("../../../../../utils/upgrade/ios/importIosBuildProperties"); const mockFs_1 = require("../../../../mocks/mockFs"); const mockPbxProjTemplate_1 = require("../../../../mocks/mockPbxProjTemplate"); describe('importIosBuildProperties', () => { it('should get project version', async () => { mockFs_1.mockFs.writeFileSync((0, getIosProjectPath_1.getPbxProjectPath)('/oldProject'), mockPbxProjTemplate_1.mockPbxProjTemplate.replace(new RegExp((0, escapeRegExp_1.escapeRegExp)('DEVELOPMENT_TEAM = 1234'), 'g'), 'DEVELOPMENT_TEAM = ABCD')); mockFs_1.mockFs.writeFileSync((0, getIosProjectPath_1.getPbxProjectPath)(), mockPbxProjTemplate_1.mockPbxProjTemplate); const importGetter = (0, importIosBuildProperties_1.importIosBuildProperties)('/oldProject'); expect(importGetter).toBeTruthy(); expect(importGetter.value).toEqual('2 properties'); await importGetter.apply(); expect(mockFs_1.mockFs.readFileSync((0, getIosProjectPath_1.getPbxProjectPath)())).toContain('DEVELOPMENT_TEAM = ABCD'); }); it('should handle errors', () => { mockFs_1.mockFs.setReadPermission(false); const importGetter = (0, importIosBuildProperties_1.importIosBuildProperties)('/oldProject'); expect(importGetter).toBeNull(); }); it('should handle not finding project version', () => { mockFs_1.mockFs.writeFileSync((0, getIosProjectPath_1.getPbxProjectPath)('/oldProject'), mockPbxProjTemplate_1.mockPbxProjTemplate.replace(new RegExp((0, escapeRegExp_1.escapeRegExp)('DEVELOPMENT_TEAM = 1234'), 'g'), 'random = "random"')); const importGetter = (0, importIosBuildProperties_1.importIosBuildProperties)('/oldProject'); expect(importGetter).toBeNull(); }); });