aboutsummaryrefslogtreecommitdiff
path: root/test/content/operators/impls/PageScrollOperator.test.ts
blob: 80c91852e96fa3a864603e96f1b32df49b4aea6a (plain) (blame)
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
import { expect } from "chai";
import PageScrollOperator from "../../../../src/content/operators/impls/PageScrollOperator";
import MockScrollPresenter from "../../mock/MockScrollPresenter";
import MockSettingRepository from "../../mock/MockSettingRepository";

describe("PageScrollOperator", () => {
  describe("#run", () => {
    it("scroll by a page", async () => {
      const presenter = new MockScrollPresenter();
      const settingRepository = new MockSettingRepository();
      const sut = new PageScrollOperator(presenter, settingRepository, 1);

      await sut.run();

      expect(presenter.getScroll()).to.deep.equal({ x: 1, y: 0 });
    });

    it("scroll by a page with repeats", async () => {
      const presenter = new MockScrollPresenter();
      const settingRepository = new MockSettingRepository();
      const sut = new PageScrollOperator(presenter, settingRepository, 5);

      await sut.run();

      expect(presenter.getScroll()).to.deep.equal({ x: 5, y: 0 });
    });
  });
});