public void TestSpinLock() { var sut = new SpinLock(3); var result = sut.IterateAndValueOfNextIndex(1); Assert.Equal("01", sut.ToString()); Assert.Equal(0, result); result = sut.IterateAndValueOfNextIndex(2); Assert.Equal("021", sut.ToString()); Assert.Equal(1, result); result = sut.IterateAndValueOfNextIndex(3); Assert.Equal("0231", sut.ToString()); Assert.Equal(1, result); }