public void ThrowsWhenIndexOutOfRange() { Assert.Throws <ArgumentOutOfRangeException>(() => { var builder = new BooleanArray.Builder(); builder.Toggle(8); }); }
public void ThrowsWhenIndexOutOfRange() { Assert.Throws <ArgumentOutOfRangeException>(() => { var builder = new BooleanArray.Builder(); builder.Set(builder.Length, false); }); }
public void SetsExpectedBitsToFalse(int length, int index) { var array = new BooleanArray.Builder() .Resize(length) .Set(index, false) .Build(); Assert.False(array.GetValue(index).Value); }
public void SetsExpectedBitToTrue(int length, int index) { var array = new BooleanArray.Builder() .Resize(length) .Set(index, true) .Build(); Assert.True(array.GetBoolean(index)); }
public void TogglesExpectedBitToTreu(int length, int index) { var array = new BooleanArray.Builder() .Resize(length) .Set(index, false) .Toggle(index) .Build(); Assert.True(array.GetValue(index).Value); }
public void TogglesExpectedBitToFalse(int length, int index) { var array = new BooleanArray.Builder() .Resize(length) .Set(index, true) .Toggle(index) .Build(); Assert.False(array.GetBoolean(index)); }
public void SwapsExpectedBits() { var array = new BooleanArray.Builder() .Resize(8) .Set(0, true) .Swap(0, 7) .Build(); Assert.False(array.GetBoolean(0)); Assert.True(array.GetBoolean(7)); }
public void IncrementsLength(int count) { var builder = new BooleanArray.Builder(); for (var i = 0; i < count; i++) { builder.Append(true); } var array = builder.Build(); Assert.Equal(count, array.Length); }
public void SetsAllBitsToDefault() { var array = new BooleanArray.Builder() .Resize(8) .Set(0, true) .Set(7, true) .Clear() .Build(); for (var i = 0; i < array.Length; i++) { Assert.False(array.GetValue(i).Value); } }
public void AppendsExpectedBit() { var array1 = new BooleanArray.Builder() .Append(false) .Build(); Assert.False(array1.GetValue(0).Value); var array2 = new BooleanArray.Builder() .Append(true) .Build(); Assert.True(array2.GetValue(0).Value); }
public void SwapsExpectedBits() { var array = new BooleanArray.Builder() .Resize(8) .Set(0, true) .Swap(0, 7) .Build(); Assert.False(array.GetValue(0).Value); Assert.True(array.GetValue(7).Value); #pragma warning disable CS0618 Assert.False(array.GetBoolean(0)); Assert.True(array.GetBoolean(7)); #pragma warning restore CS0618 }
public void UnsetBitsAreUnchanged(int index) { var array = new BooleanArray.Builder() .Resize(8) .Set(index, true) .Build(); for (var i = 0; i < 8; i++) { if (i != index) { Assert.False(array.GetBoolean(i)); } } }
public void SwapsExpectedBits() { var array = new BooleanArray.Builder() .AppendRange(Enumerable.Repeat(false, 8)) .Set(0, true) .Swap(0, 7) .Build(); Assert.True(array.GetValue(0).HasValue); Assert.False(array.GetValue(0).Value); Assert.True(array.GetValue(7).HasValue); Assert.True(array.GetValue(7).Value); #pragma warning disable CS0618 Assert.False(array.GetBoolean(0)); Assert.True(array.GetBoolean(7)); #pragma warning restore CS0618 }
public void UnsetBitsAreUnchanged(int index) { var array = new BooleanArray.Builder() .Resize(8) .Set(index, true) .Build(); for (var i = 0; i < 8; i++) { if (i != index) { Assert.False(array.GetValue(i).Value); #pragma warning disable CS0618 Assert.False(array.GetBoolean(i)); #pragma warning restore CS0618 } } }
public void UnsetBitsAreUnchanged(int index) { var array = new BooleanArray.Builder() .AppendRange(Enumerable.Repeat(false, 8)) .Set(index, true) .Build(); for (var i = 0; i < 8; i++) { if (i != index) { Assert.True(array.GetValue(i).HasValue); Assert.False(array.GetValue(i).Value); #pragma warning disable CS0618 Assert.False(array.GetBoolean(i)); #pragma warning restore CS0618 } } }
public void NewBatch() { _builder = new BooleanArray.Builder(); }