private static void VerifyUnaryCalculation(uint x
                                                   , CalculateUnaryOperationCallback <uint> expectedOp
                                                   , CalculateUnaryOperationCallback <ImmutableBitArray> actualOp)
        {
            var expected = expectedOp(x);
            var a        = CreateBitArray(x);
            var actual   = actualOp(a);

            Assert.NotNull(actual);
            // Demarcation from System.Collections.BitArray.
            Assert.NotSame(a, actual);
            Assert.Equal(GetEndianAwareBytes(expected), actual.ToBytes(!IsLittleEndian));
        }
 public void Bitwise_Not_Unary_calculation_is_correct(uint x
                                                      , CalculateUnaryOperationCallback <uint> expectedOp
                                                      , CalculateUnaryOperationCallback <ImmutableBitArray> actualOp)
 => VerifyUnaryCalculation(x, expectedOp, actualOp);