it('should be a 422 error with causes', function () { var causes = ['owner is read-only', 'uuid required']; var e = new HttpError(HttpError.statusCodes.UNPROCESSABLE_ENTITY, 'Validation error', causes); expect(e).toEqual(jasmine.any(Error)); expect(e.name).toBe('HttpError'); expect(e.statusCode).toBe(422); expect(e.statusReason).toBe('Unprocessable entity'); expect(e.message).toBe('Validation error'); expect(e.causes).toEqual(causes); expect(e.toString()).toBe('HttpError: Validation error'); });
describe( 'Coordinate merger', () => { it( 'removes duplicate coordinates', () => { expect( buttons.uniqueCoords( [ [ 1, 2 ], [ 2, 1 ], [ 1, 2 ], [ 1, 2 ] ] ) ).toEqual( [ [ 1, 2 ], [ 2, 1 ] ] ); expect( buttons.uniqueCoords( [] ) ).toEqual( [] ); expect( buttons.uniqueCoords( [ [ 1, 2 ] ] ) ).toEqual( [ [ 1, 2 ] ] ); } ); } );
it('should append new children to XML document tree', function () { const configfile_cfg = new ConfigParser(configfile_xml); const platformJson = PlatformJson.load(plugins_dir, 'android'); const munger = new configChanges.PlatformMunger('android', temp, platformJson, pluginInfoProvider); munger.add_config_changes(configfile_cfg, true).save_all(); const am_xml = new et.ElementTree(et.XML(fs.readFileSync(path.join(temp, 'AndroidManifest.xml'), 'utf-8'))); const activity = am_xml.find('./application/activity[@android:name="com.foo.Bar"]'); expect(activity).toBeDefined(); expect(activity.attrib['android:label']).toEqual('@string/app_name'); });
it('Test 020 : should map a directory with a file', function () { mockFs.statMap[path.join(testRootDir, testSourceDir)] = testDirStats; mockFs.dirMap[path.join(testRootDir, testSourceDir)] = [testSourceFile]; mockFs.statMap[path.join(testRootDir, testSourceDir, testSourceFile)] = testFileStats; const dirMap = FileUpdater.mapDirectory(testRootDir, testSourceDir, ['**'], []); expect(Object.keys(dirMap).sort()).toEqual(['', testSourceFile]); expect(dirMap[''].subDir).toBe(testSourceDir); expect(dirMap[''].stats).toBe(testDirStats); expect(dirMap[testSourceFile].subDir).toBe(testSourceDir); expect(dirMap[testSourceFile].stats).toBe(testFileStats); });
it('Test 032 : should not merge platform tags with the wrong platform', function () { const testXml = et.XML('<widget><platform name="bar"><testElement testAttrib="value">testTEXT</testElement></platform></widget>'); const origCfg = et.tostring(dstXml); xml_helpers.mergeXml(testXml, dstXml, 'foo', true); expect(et.tostring(dstXml)).toEqual(origCfg); });
it('should copy `code`, `timestamp`, `message` and `causes` from passed instance of NspError', function () { var nspError = new NspError(NspError.codes.UNPROCESSABLE, undefined, ['error1', 'error2']); var httpError = HttpError.wrapError(nspError); expect(httpError.code).toEqual(nspError.code); expect(httpError.timestamp).toEqual(nspError.timestamp); expect(httpError.message).toEqual(nspError.message); expect(httpError.causes).toEqual(nspError.causes); });
describe( 'Array parser', () => { it( 'parses rows and columns', () => { expect( buttons.decodeStrings( [ 'r1:x...x', 'c4:..xx' ] ) ).toEqual( [ [ 1, 0 ], [ 1, 4 ], [ 2, 4 ], [ 3, 4 ] ] ); } ); it( 'purges duplicate coordinates', () => { expect( buttons.decodeStrings( [ 'r1:xx', 'c1:xxx' ] ) ).toEqual( [ [ 0, 1 ], [ 1, 0 ], [ 1, 1 ], [ 2, 1 ] ] ); } ); } );
it("Checking downRegion() method", () => { let cons = new Connections(1); expect(cons.downRegion([0,0] )).toEqual(null); expect(cons.downRegion([1,2] )).toEqual(null); expect(cons.downRegion([1,0] )).toEqual(null); expect(cons.downRegion([1,1] )).toEqual(null); expect(cons.downRegion([2,0] )).toEqual(null); expect(cons.downRegion([2,1] )).toEqual(null); expect(cons.downRegion([2,-1] )).toEqual(null); expect(cons.downRegion([1,-1] )).toEqual(null); expect(cons.downRegion([-1,-1])).toEqual(null); cons.destroy(); });
it('Checking getFreeRegion() method', () => { const cons = new Connections(1); expect(cons.getFreeRegion()).toEqual([0,0]); expect(cons.getFreeRegion()).toEqual([0,0]); cons.setData([0,0], 'sock', true); expect(cons.getFreeRegion()).toEqual(null); cons.clearData([0,0]); expect(cons.getFreeRegion()).toEqual([0,0]); cons.destroy(); });
it('should be a not implemented error with custom message and a cause', function () { var e = new NspError(NspError.codes.NOT_IMPLEMENTED, 'message', 'cause'); expect(e).toEqual(jasmine.any(Error)); expect(e.name).toBe('NspError'); expect(e.code).toBe('NOT_IMPLEMENTED'); expect(e.message).toBe('message'); expect(e.stack).toBeString(); expect(e.toString()).toBe('NspError: message'); expect(e.causes).toEqual([ 'cause' ]); });
it("Checking upRegion() method", () => { let cons = new Connections(1); expect(cons.upRegion([0,0] )).toEqual(null); expect(cons.upRegion([1,2] )).toEqual(null); expect(cons.upRegion([1,0] )).toEqual(null); expect(cons.upRegion([1,1] )).toEqual(null); expect(cons.upRegion([-1,0] )).toEqual(null); expect(cons.upRegion([-1,1] )).toEqual(null); expect(cons.upRegion([-1,-1])).toEqual(null); cons.destroy(); });
it('Test 021 : should map a directory with a subdirectory', function () { mockFs.statMap[testSourceDir] = testDirStats; mockFs.dirMap[testSourceDir] = [testSubDir]; mockFs.statMap[path.join(testSourceDir, testSubDir)] = testDirStats; mockFs.dirMap[path.join(testSourceDir, testSubDir)] = []; const dirMap = FileUpdater.mapDirectory('', testSourceDir, ['**'], []); expect(Object.keys(dirMap).sort()).toEqual(['', testSubDir]); expect(dirMap[''].subDir).toBe(testSourceDir); expect(dirMap[''].stats).toBe(testDirStats); expect(dirMap[testSubDir].subDir).toBe(testSourceDir); expect(dirMap[testSubDir].stats).toBe(testDirStats); });
it('should be an unprocessable error with custom message and causes', function () { var e = new NspError(NspError.codes.UNPROCESSABLE, 'message', [ 'cause1', 'cause2' ]); expect(e).toEqual(jasmine.any(Error)); expect(e.name).toBe('NspError'); expect(e.code).toBe('UNPROCESSABLE'); expect(e.message).toBe('message'); expect(e.stack).toBeString(); expect(e.toString()).toBe('NspError: message'); expect(e.causes).toEqual([ 'cause1', 'cause2' ]); });
it('Test 025 : should exclude paths that match exclude globs', function () { mockFs.statMap[testSourceDir] = testDirStats; mockFs.dirMap[testSourceDir] = [testSourceFile, testSourceFile2]; mockFs.statMap[path.join(testSourceDir, testSourceFile)] = testFileStats; mockFs.statMap[path.join(testSourceDir, testSourceFile2)] = testFileStats; const dirMap = FileUpdater.mapDirectory('', testSourceDir, ['**'], [testSourceFile2]); expect(Object.keys(dirMap).sort()).toEqual(['', testSourceFile]); expect(dirMap[''].subDir).toBe(testSourceDir); expect(dirMap[''].stats).toBe(testDirStats); expect(dirMap[testSourceFile].subDir).toBe(testSourceDir); expect(dirMap[testSourceFile].stats).toBe(testFileStats); });