aboutsummaryrefslogtreecommitdiffstats
path: root/tests/template/test.py
blob: 57bcaf81bc884efa3720e26436020b724583748d (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
29
30
#!/usr/bin/env python
from __future__ import print_function
import glob
import json
import os
import subprocess
for testfile in glob.glob("*.json"):
    testdoc = json.load(open(testfile))
    for test in testdoc["tests"]:
        if "lambda" in test["data"]:
            continue
        open('data', 'w').write(json.dumps(test["data"]))
        open('template', 'w').write(test["template"])
        if "partials" in test:
            open('partials', 'w').write(json.dumps(test["partials"]))
        else:
            open('partials', 'w').write("{}")
        ret = subprocess.check_output("./mustachetest").decode('utf8')
        print(testfile, test["name"])
        if ret != test["expected"]:
            if 'partials' in test:
                print('partials:', json.dumps(test["partials"]))
            print(json.dumps(test["data"]))
            print(test["template"])
            print('Expected:',repr(test["expected"]))
            print('Actual:',repr(ret))
        assert ret == test["expected"]
        os.unlink('data')
        os.unlink('template')
        os.unlink('partials')