UNPKG

pbxproj

Version:

parse & stringify xcode pbxproj format

58 lines (43 loc) 1.61 kB
var assert = require('assert'); var fs = require('fs'); var PBXProjExporter = require('../../lib/exporter'); var fixturesNames = [ 'obj-in-obj', 'number-in-obj', 'empty-array-in-obj', 'filled-array-in-obj' ]; var fixtures = {}; fixturesNames.forEach(function (fixturesName) { var basePath = __dirname + '/../fixtures/' + fixturesName; fixtures[fixturesName] = { obj: JSON.parse(fs.readFileSync(basePath + '.json', 'utf8')), pbxproj: fs.readFileSync(basePath + '.pbxproj', 'utf8'), } }); describe('exporter', function () { it('should export an empty object', function () { var exporter = new PBXProjExporter(); assert.equal('// !$*UTF8*$!\n{\n};\n', exporter.stringify({})); }); it('should export object into object', function () { var exporter = new PBXProjExporter(); var fixture = fixtures['obj-in-obj']; assert.equal(fixture.pbxproj, exporter.stringify(fixture.obj)); }); it('should export number into object', function () { var exporter = new PBXProjExporter(); var fixture = fixtures['number-in-obj']; assert.equal(fixture.pbxproj, exporter.stringify(fixture.obj)); }); it('should export empty array into object', function () { var exporter = new PBXProjExporter(); var fixture = fixtures['empty-array-in-obj']; assert.equal(fixture.pbxproj, exporter.stringify(fixture.obj)); }); it('should export filled array into object', function () { var exporter = new PBXProjExporter(); var fixture = fixtures['filled-array-in-obj']; assert.equal(fixture.pbxproj, exporter.stringify(fixture.obj)); }); });