Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
it ('should resolve multiple contraints on same variable', () => {
const tcs = [Z.Monoid, Z.Setoid];
const {constraints} = resolve ($) (tcs) ($.env) ('foo :: (Monoid a, Setoid a) => a -> b');
assert.deepEqual (constraints, {a: [Z.Monoid, Z.Setoid]});
});
});
test ('Monoid', () => {
eq (Z.Monoid.test (Left ([]))) (false);
eq (Z.Monoid.test (Right ([]))) (false);
});
test ('Monoid', () => {
eq (Z.Monoid.test (Nothing)) (true);
eq (Z.Monoid.test (Just (Useless))) (false);
eq (Z.Monoid.test (Just (0))) (false);
eq (Z.Monoid.test (Just ([]))) (true);
});
test ('Monoid', () => {
eq (Z.Monoid.test (Identity ([]))) (false);
});
test ('Monoid', () => {
eq (Z.Monoid.test (Left ([]))) (false);
eq (Z.Monoid.test (Right ([]))) (false);
});
test ('Monoid', () => {
eq (Z.Monoid.test (Nothing)) (true);
eq (Z.Monoid.test (Just (Useless))) (false);
eq (Z.Monoid.test (Just (0))) (false);
eq (Z.Monoid.test (Just ([]))) (true);
});
leftIdentity: assert.forall1 (function(m) {
return Z.Monoid.test (m) &&
Z.Monoid.test (empty) &&
equals (concat (empty) (m),
m);
}),
leftIdentity: assert.forall1 (function(m) {
return Z.Monoid.test (m) &&
Z.Monoid.test (empty) &&
equals (concat (empty) (m),
m);
}),