1 var test = require("tape")
2 var Result = require("rust-result")
4 var safeParse = require("../callback")
5 var safeParseTuple = require("../tuple")
6 var safeParseResult = require("../result")
8 test("safeParse is a function", function (assert) {
9 assert.equal(typeof safeParse, "function")
13 test("safeParse valid json", function (assert) {
14 safeParse("{ \"foo\": true }", function (err, json) {
16 assert.equal(json.foo, true)
22 test("safeParse faulty", function (assert) {
23 safeParse("WRONG", function (err) {
25 assert.equal(err.message, "Unexpected token W")
31 test("safeParseTuple valid json", function (assert) {
32 var t = safeParseTuple("{ \"foo\": true }")
35 assert.equal(t[1].foo, true)
40 test("safeParseTuple faulty", function (assert) {
41 var t = safeParseTuple("WRONG")
44 assert.equal(t[0].message, "Unexpected token W")
49 test("safeParseResult valid json", function (assert) {
50 var t = safeParseResult("{ \"foo\": true }")
52 assert.ifError(Result.isErr(t))
53 assert.equal(Result.Ok(t).foo, true)
58 test("safeParseResult faulty", function (assert) {
59 var t = safeParseResult("WRONG")
61 assert.ok(Result.Err(t))
62 assert.equal(Result.Err(t).message, "Unexpected token W")