File: blob.js

package info (click to toggle)
node-socket.io-parser 4.2.1%2B~3.1.0-3
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 916 kB
  • sloc: javascript: 787; makefile: 9; sh: 4
file content (72 lines) | stat: -rw-r--r-- 1,717 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
const { PacketType } = require("..");
const helpers = require("./helpers.js");

const BlobBuilderImpl =
  typeof BlobBuilder !== "undefined"
    ? BlobBuilder
    : typeof WebKitBlobBuilder !== "undefined"
    ? WebKitBlobBuilder
    : typeof MSBlobBuilder !== "undefined"
    ? MSBlobBuilder
    : typeof MozBlobBuilder !== "undefined"
    ? MozBlobBuilder
    : false;

describe("parser", () => {
  it("encodes a Blob", (done) => {
    let data;
    if (BlobBuilderImpl) {
      const bb = new BlobBuilderImpl();
      bb.append(new ArrayBuffer(2));
      data = bb.getBlob();
    } else {
      data = new Blob([new ArrayBuffer(2)]);
    }

    const packet = {
      type: PacketType.EVENT,
      data: ["a", data],
      id: 0,
      nsp: "/",
    };
    helpers.test_bin(packet, done);
  });

  it("encodes an Blob deep in JSON", (done) => {
    let data;
    if (BlobBuilderImpl) {
      const bb = new BlobBuilderImpl();
      bb.append(new ArrayBuffer(2));
      data = bb.getBlob();
    } else {
      data = new Blob([new ArrayBuffer(2)]);
    }

    const packet = {
      type: PacketType.EVENT,
      data: ["a", { a: "hi", b: { why: data }, c: "bye" }],
      id: 999,
      nsp: "/deep",
    };
    helpers.test_bin(packet, done);
  });

  it("encodes a binary ack with a blob", (done) => {
    let data;
    if (BlobBuilderImpl) {
      const bb = new BlobBuilderImpl();
      bb.append(new ArrayBuffer(2));
      data = bb.getBlob();
    } else {
      data = new Blob([new ArrayBuffer(2)]);
    }

    const packet = {
      type: PacketType.ACK,
      data: [{ a: "hi ack", b: { why: data }, c: "bye ack" }],
      id: 999,
      nsp: "/deep",
    };
    helpers.test_bin(packet, done);
  });
});