aboutsummaryrefslogtreecommitdiff
path: root/test/test.ts
blob: 91dc433799586dd254b780c3caa95a0cc9bb4c35 (plain)
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
import { expect } from 'chai';
import 'mocha';
import { autorun, reaction } from "mobx";
import { Doc } from '../src/new_fields/Doc';
import { Cast } from '../src/new_fields/Types';

describe("Document", () => {
    it('should hold fields', () => {
        let key = "Test";
        let key2 = "Test2";
        let field = 15;
        let doc = new Doc();
        doc[key] = field;
        let getField = Cast(doc[key], "number");
        let getField2 = Cast(doc[key2], "number");
        expect(getField).to.equal(field);
        expect(getField2).to.equal(undefined);
    });

    it('should update', () => {
        let doc = new Doc();
        let key = "Test";
        let key2 = "Test2";
        let ran = false;
        reaction(() => doc[key], (field) => { ran = true; });
        expect(ran).to.equal(false);

        doc[key2] = 4;
        expect(ran).to.equal(false);

        doc[key] = 5;

        expect(ran).to.equal(true);
    });
});