test/Reader.spec.js   A
last analyzed

Complexity

Total Complexity 7
Complexity/F 1

Size

Lines of Code 50
Function Count 7

Duplication

Duplicated Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
wmc 7
eloc 34
mnd 0
bc 0
fnc 7
dl 0
loc 50
bpm 0
cpm 1
noi 0
c 0
b 0
f 0
rs 10
1
const { Reader } = require("../dist/npm");
2
const snap = require("./snap-events");
3
4
const TOKEN = process.env.SURVEY_MONKEY_TOKEN;
5
6
describe("Reader", () => {
7
  it("should read surveys", done => {
8
    const reader = new Reader({
9
      url: "surveys",
10
      headers: { authorization: `bearer ${TOKEN}` }
11
    });
12
    snap(reader, done);
13
  });
14
  it("should read responses", done => {
15
    const reader = new Reader({
16
      url: "surveys/152303468/responses/bulk",
17
      headers: { authorization: `bearer ${TOKEN}` }
18
    });
19
    snap(reader, done);
20
  });
21
  it("should read multiple pages", done => {
22
    const reader = new Reader({
23
      url: "surveys/152299598/responses/bulk",
24
      headers: { authorization: `bearer ${TOKEN}` },
25
      qs: { per_page: 10 }
26
    });
27
    snap(reader, done);
28
  });
29
  it("should read empty responses", done => {
30
    const reader = new Reader({
31
      url: "surveys/152303492/responses/bulk",
32
      headers: { authorization: `bearer ${TOKEN}` }
33
    });
34
    snap(reader, done);
35
  });
36
  it("should emit api errors", done => {
37
    const reader = new Reader({
38
      url: "surveys",
39
      headers: { authorization: `bearer INVALID_TOKEN` }
40
    });
41
    snap(reader, done);
42
  });
43
  it("should emit http errors", done => {
44
    // This test relies on a custom http fixture
45
    const reader = new Reader({
46
      url: "zurveyz/24601"
47
    });
48
    snap(reader, done);
49
  });
50
});
51