The tests are bogus just the assumption that a substr of length 8 will give you 8 bits rather than 8 bytes, that's already wildly inconsistent with what substr does otherwise.
really this code looks like the desire to have `vec` from perl5 implemented in perl6 by re-using the substr name. I think it's the wrong peg to hang this feature off of.