diff --git a/test/bit.bqn b/test/bit.bqn index 121320cb..f10cabf2 100644 --- a/test/bit.bqn +++ b/test/bit.bqn @@ -1,6 +1,7 @@ u ← ⌊100×(•UnixTime+1|100וMonoTime)@ r ← •MakeRand •Show u ⟨RandVals, casts⟩ ← ⟨r⟩ •Import "utils.bqn" +widths ← ⊑¨casts # Test •bit._cast first # Convert unsigned width 𝕗 to 𝕘 @@ -21,7 +22,42 @@ TestCast ← { f‿t 𝕊 len: len +↩ (1⌈÷˜´⊑¨c) | -len # Round up to exact conversion (c _bitcast ≡ c •bit._cast) len RandVals f } -cs ← / 64>⊑¨casts # TODO floats +cs ← / 64>widths # TODO floats cx ← ⊏⟜(32‿'c'⊸≢¨casts)⊸/ cs # TODO 32-bit char output ls ← (↕100) ∾ r.Range¨⊸+ ⌊ 100 × ↕∘⌈⌾(1.5⊸⋆⁼) 100 {cs (⋈ !∘TestCast 𝕩˙)⌜ cx}¨ ls + +# Now other •bit operations +OpArgs ← {_b‿F‿a: + m←(1