@masala/parser
Version:
Masala Parser
299 lines (274 loc) • 7.26 kB
JavaScript
import atry from '../../lib/data/try'
/*
======== A Handy Little Nodeunit Reference ========
https://github.com/caolan/nodeunit
Test methods:
test.expect(numAssertions)
test.done()
Test assertions:
test.ok(value, [message])
test.equal(actual, expected, [message])
test.notEqual(actual, expected, [message])
test.deepEqual(actual, expected, [message])
test.notDeepEqual(actual, expected, [message])
test.strictEqual(actual, expected, [message])
test.notStrictEqual(actual, expected, [message])
test.throws(block, [error], [message])
test.doesNotThrow(block, [error], [message])
test.ifError(value)
*/
export default {
setUp: function (done) {
done()
},
'atry success': function (test) {
test.expect(1)
// tests here
test.ok(atry.success(1).isSuccess(), 'should be success.')
test.done()
},
'atry failure': function (test) {
test.expect(1)
// tests here
test.ok(atry.failure(1).isFailure(), 'should be failure.')
test.done()
},
'atry success map can be a success': function (test) {
test.expect(1)
// tests here
test.ok(
atry
.success(1)
.map(function (i) {
return i + 1
})
.isSuccess(),
'should be success.',
)
test.done()
},
'atry success map can be a failure': function (test) {
test.expect(1)
// tests here
test.ok(
atry
.success(1)
.map(function () {
throw new Error()
})
.isFailure(),
'should be failure.',
)
test.done()
},
'atry success map': function (test) {
test.expect(1)
// tests here
test.equal(
atry
.success(1)
.map(function (i) {
return i + 1
})
.success(),
2,
'should be success.',
)
test.done()
},
'atry failure map is a failure': function (test) {
test.expect(1)
// tests here
test.ok(
atry
.failure(1)
.map(function (i) {
return i + 1
})
.isFailure(),
'should be failure.',
)
test.done()
},
'atry failure map': function (test) {
test.expect(1)
// tests here
test.equal(
atry
.failure(1)
.map(function (i) {
return i + 1
})
.failure(),
1,
'should be failure.',
)
test.done()
},
'atry success flatMap of atry': function (test) {
test.expect(1)
// tests here
test.equal(
atry
.success(1)
.flatMap(function (i) {
return atry.success(i + 1)
})
.success(),
2,
'should be success.',
)
test.done()
},
'atry failure flatMap of int': function (test) {
test.expect(1)
// tests here
test.equal(
atry
.failure(1)
.flatMap(function (i) {
return i + 1
})
.failure(),
1,
'should be failure.',
)
test.done()
},
'atry failure flatMap of Error': function (test) {
test.expect(1)
// tests here
test.equal(
atry
.success(1)
.flatMap(function () {
throw 1
})
.failure(),
1,
'should be failure.',
)
test.done()
},
'atry success recoverWith': function (test) {
test.expect(1)
// tests here
test.equal(atry.success(1).recoverWith(2), 1, 'should be success.')
test.done()
},
'atry failure recoverWith': function (test) {
test.expect(1)
// tests here
test.equal(atry.failure(1).recoverWith(2), 2, 'should be failure.')
test.done()
},
'atry success lazyRecoverWith': function (test) {
test.expect(1)
// tests here
test.equal(
atry.success(1).lazyRecoverWith(function () {
return 2
}),
1,
'should be success.',
)
test.done()
},
'atry failure lazyRecoverWith': function (test) {
test.expect(1)
// tests here
test.equal(
atry.failure(1).lazyRecoverWith(function () {
return 2
}),
2,
'should be failure.',
)
test.done()
},
'atry success filter': function (test) {
test.expect(1)
// tests here
test.equal(
atry
.success(1)
.filter(function (v) {
return v === 1
})
.isSuccess(),
true,
'should be success.',
)
test.done()
},
'atry success wrong filter': function (test) {
test.expect(1)
// tests here
test.equal(
atry
.success(1)
.filter(function (v) {
return v === 2
})
.isFailure(),
true,
'should be failure.',
)
test.done()
},
'atry failure filter': function (test) {
test.expect(1)
// tests here
test.equal(
atry
.failure(1)
.filter(function (v) {
return v === 1
})
.isFailure(),
true,
'should be failure.',
)
test.done()
},
'atry success onSuccess': function (test) {
test.expect(1)
// tests here
var success = false
atry.success(1).onSuccess(function () {
success = true
})
test.equal(success, true, 'should be true.')
test.done()
},
'atry failure onSuccess': function (test) {
test.expect(1)
// tests here
var success = false
atry.failure().onSuccess(function () {
success = true
})
test.equal(success, false, 'should be false.')
test.done()
},
'atry success onFailure': function (test) {
test.expect(1)
// tests here
var failure = false
atry.success(1).onFailure(function () {
failure = true
})
test.equal(failure, false, 'should be false.')
test.done()
},
'atry failure onFailure': function (test) {
test.expect(1)
// tests here
var failure = false
atry.failure().onFailure(function () {
failure = true
})
test.equal(failure, true, 'should be true.')
test.done()
},
}