Files
cell/tests/fit.cm

188 lines
4.8 KiB
Plaintext

var fit = use("fit");
return {
and_12_10: function() {
if (fit.and(12, 10) != 8) disrupt
},
and_16_2: function() {
if (fit.and(16, 2) != 0) disrupt
},
and_15_3: function() {
if (fit.and(15, 3) != 3) disrupt
},
and_13_3: function() {
if (fit.and(13, 3) != 1) disrupt
},
and_string_input: function() {
if (fit.and("10", 3) != null) disrupt
},
or_12_10: function() {
if (fit.or(12, 10) != 14) disrupt
},
or_16_2: function() {
if (fit.or(16, 2) != 18) disrupt
},
or_15_3: function() {
if (fit.or(15, 3) != 15) disrupt
},
or_13_3: function() {
if (fit.or(13, 3) != 15) disrupt
},
xor_12_10: function() {
if (fit.xor(12, 10) != 6) disrupt
},
xor_16_2: function() {
if (fit.xor(16, 2) != 18) disrupt
},
xor_15_3: function() {
if (fit.xor(15, 3) != 12) disrupt
},
xor_13_3: function() {
if (fit.xor(13, 3) != 14) disrupt
},
xor_float_input: function() {
if (fit.xor(13.01, 3) != null) disrupt
},
left_12_10: function() {
if (fit.left(12, 10) != 12288) disrupt
},
left_16_2: function() {
if (fit.left(16, 2) != 64) disrupt
},
left_15_53: function() {
if (fit.left(15, 53) != -9007199254740992) disrupt
},
right_12_10: function() {
if (fit.right(12, 10) != 0) disrupt
},
right_19_2: function() {
if (fit.right(19, 2) != 4) disrupt
},
right_large: function() {
if (fit.right(-9007199254740992, 53) != 7) disrupt
},
right_signed: function() {
if (fit.right_signed(-2, 1) != -1) disrupt
},
mask_0: function() {
if (fit.mask(0) != 0) disrupt
},
mask_1: function() {
if (fit.mask(1) != 1) disrupt
},
mask_3: function() {
if (fit.mask(3) != 7) disrupt
},
mask_8: function() {
if (fit.mask(8) != 255) disrupt
},
mask_16: function() {
if (fit.mask(16) != 65535) disrupt
},
mask_32: function() {
if (fit.mask(32) != 4294967295) disrupt
},
mask_55: function() {
if (fit.mask(55) != 36028797018963967) disrupt
},
mask_56: function() {
if (fit.mask(56) != -1) disrupt
},
mask_57: function() {
if (fit.mask(57) != null) disrupt
},
mask_neg1: function() {
if (fit.mask(-1) != -2) disrupt
},
mask_neg3: function() {
if (fit.mask(-3) != -8) disrupt
},
mask_neg8: function() {
if (fit.mask(-8) != -256) disrupt
},
mask_neg16: function() {
if (fit.mask(-16) != -65536) disrupt
},
mask_neg32: function() {
if (fit.mask(-32) != -4294967296) disrupt
},
mask_neg55: function() {
if (fit.mask(-55) != -36028797018963968) disrupt
},
mask_neg56: function() {
if (fit.mask(-56) != 0) disrupt
},
not_0: function() {
if (fit.not(0) != -1) disrupt
},
not_1: function() {
if (fit.not(1) != -2) disrupt
},
not_neg1: function() {
if (fit.not(-1) != 0) disrupt
},
ones_neg1: function() {
if (fit.ones(-1) != 56) disrupt
},
ones_0: function() {
if (fit.ones(0) != 0) disrupt
},
ones_8: function() {
if (fit.ones(8) != 1) disrupt
},
ones_18: function() {
if (fit.ones(18) != 2) disrupt
},
ones_255: function() {
if (fit.ones(255) != 8) disrupt
},
zeros_neg1: function() {
if (fit.zeros(-1) != 0) disrupt
},
zeros_0: function() {
if (fit.zeros(0) != 56) disrupt
},
zeros_1: function() {
if (fit.zeros(1) != 55) disrupt
},
zeros_2: function() {
if (fit.zeros(2) != 54) disrupt
},
zeros_1024: function() {
if (fit.zeros(1024) != 45) disrupt
},
rotate_1_1: function() {
if (fit.rotate(1, 1) != 2) disrupt
},
rotate_neg2_1: function() {
if (fit.rotate(-2, 1) != -3) disrupt
},
rotate_full: function() {
if (fit.rotate(1, 56) != 1) disrupt
},
rotate_right: function() {
if (fit.rotate(1, -1) != 1 << 55) disrupt
},
reverse_neg: function() {
if (fit.reverse(-36028797018963968) != 1) disrupt
},
reverse_pi: function() {
if (fit.reverse(3141592653589793) != 2334719610726733) disrupt
},
and_out_of_range: function() {
if (fit.and(1 << 56, 1) != null) disrupt
},
left_negative_shift: function() {
if (fit.left(1, -1) != null) disrupt
},
left_large_shift: function() {
if (fit.left(1, 100) != null) disrupt
},
right_negative_shift: function() {
if (fit.right(1, -1) != null) disrupt
},
mask_float: function() {
if (fit.mask(3.5) != null) disrupt
}
}