|
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- # jest-serializer
-
- Module for serializing and deserializing object into memory and disk. By default, the `v8` implementations are used, but if not present, it defaults to `JSON` implementation. Both serializers have the advantage of being able to serialize `Map`, `Set`, `undefined`, `NaN`, etc, although the JSON one does it through a replacer/reviver.
-
- ## Install
-
- ```sh
- $ yarn add jest-serializer
- ```
-
- ## API
-
- Three kinds of API groups are exposed:
-
- ### In-memory serialization: `serialize` and `deserialize`
-
- This set of functions take or return a `Buffer`. All the process happens in memory. This is useful when willing to transfer over HTTP, TCP or via UNIX pipes.
-
- ```javascript
- import {deserialize, serialize} from 'jest-serializer';
-
- const myObject = {
- foo: 'bar',
- baz: [0, true, '2', [], {}],
- };
-
- const buffer = serialize(myObject);
- const myCopyObject = deserialize(buffer);
- ```
-
- ### Synchronous persistent filesystem: `readFileSync` and `writeFileSync`
-
- This set of functions allow to send to disk a serialization result and retrieve it back, in a synchronous way. It mimics the `fs` API so it looks familiar.
-
- ```javascript
- import {readFileSync, writeFileSync} from 'jest-serializer';
-
- const myObject = {
- foo: 'bar',
- baz: [0, true, '2', [], {}],
- };
-
- const myFile = '/tmp/obj';
-
- writeFileSync(myFile, myObject);
- const myCopyObject = readFileSync(myFile);
- ```
|