UNPKG

binary-data

Version:

Declarative binary data encoder / decoder.

1 lines 2.66 kB
{"version":3,"sources":["encoding-length.js"],"names":["encodingLength","require","describe","test","expectedSize","schema","a","encode","decode","jest","fn","mockImplementation","obj","expect","toBe","toBeCalled","b","c","toHaveBeenLastCalledWith"],"mappings":"AAAA;;AAEA,MAAM,EAAEA,cAAF,KAAqBC,QAAQ,qBAAR,CAA3B;;AAEAC,SAAS,gBAAT,EAA2B,MAAM;AAC/BC,OAAK,mBAAL,EAA0B,MAAM;AAC9B,UAAMC,eAAe,CAArB;;AAEA,UAAMC,SAAS;AACbC,SAAG;AACDC,iBAAS,CAAE,CADV;AAEDC,iBAAS,CAAE,CAFV;AAGDR,wBAAgBS,KAAKC,EAAL,GAAUC,kBAAV,CAA6B,MAAMP,YAAnC;AAHf;AADU,KAAf;;AAQA,UAAMQ,MAAM;AACVN,SAAG;AADO,KAAZ;;AAIAO,WAAOb,eAAeY,GAAf,EAAoBP,MAApB,CAAP,EAAoCS,IAApC,CAAyCV,YAAzC;AACAS,WAAOR,OAAOC,CAAP,CAASN,cAAhB,EAAgCe,UAAhC;AACD,GAjBD;;AAmBAZ,OAAK,+BAAL,EAAsC,MAAM;AAC1C,UAAMC,eAAe,CAArB;;AAEA,UAAMC,SAAS;AACbC,SAAG;AACDC,iBAAS,CAAE,CADV;AAEDC,iBAAS,CAAE,CAFV;AAGDR,wBAAgBS,KAAKC,EAAL,GAAUC,kBAAV,CAA6B,MAAMP,YAAnC;AAHf,OADU;AAMbY,SAAG;AACDC,WAAG;AACDV,mBAAS,CAAE,CADV;AAEDC,mBAAS,CAAE,CAFV;AAGDR,0BAAgBS,KAAKC,EAAL,GAAUC,kBAAV,CAA6B,MAAMP,YAAnC;AAHf;AADF;AANU,KAAf;;AAeA,UAAMQ,MAAM;AACVN,SAAG,CADO;AAEVU,SAAG;AACDC,WAAG;AADF;AAFO,KAAZ;;AAOAJ,WAAOb,eAAeY,GAAf,EAAoBP,MAApB,CAAP,EAAoCS,IAApC,CAAyCV,eAAe,CAAxD;AACAS,WAAOR,OAAOC,CAAP,CAASN,cAAhB,EAAgCkB,wBAAhC,CAAyDN,IAAIN,CAA7D;AACAO,WAAOR,OAAOW,CAAP,CAASC,CAAT,CAAWjB,cAAlB,EAAkCkB,wBAAlC,CAA2DN,IAAII,CAAJ,CAAMC,CAAjE;AACD,GA5BD;AA6BD,CAjDD","file":"encoding-length.js","sourcesContent":["'use strict';\n\nconst { encodingLength } = require('lib/encoding-length');\n\ndescribe('encodingLength', () => {\n test('should use schema', () => {\n const expectedSize = 5;\n\n const schema = {\n a: {\n encode() {},\n decode() {},\n encodingLength: jest.fn().mockImplementation(() => expectedSize),\n },\n };\n\n const obj = {\n a: 1,\n };\n\n expect(encodingLength(obj, schema)).toBe(expectedSize);\n expect(schema.a.encodingLength).toBeCalled();\n });\n\n test('should support nested schemas', () => {\n const expectedSize = 5;\n\n const schema = {\n a: {\n encode() {},\n decode() {},\n encodingLength: jest.fn().mockImplementation(() => expectedSize),\n },\n b: {\n c: {\n encode() {},\n decode() {},\n encodingLength: jest.fn().mockImplementation(() => expectedSize),\n },\n },\n };\n\n const obj = {\n a: 1,\n b: {\n c: 15,\n },\n };\n\n expect(encodingLength(obj, schema)).toBe(expectedSize * 2);\n expect(schema.a.encodingLength).toHaveBeenLastCalledWith(obj.a);\n expect(schema.b.c.encodingLength).toHaveBeenLastCalledWith(obj.b.c);\n });\n});\n"]}