public static void TryPeekTest() { var valueStack = new ValueStack <int>(new int[] { 1, 2, 3 }); var result = valueStack.TryPeek(out var value); Assert.That(() => result, Is.True ); Assert.That(() => value, Is.EqualTo(3) ); valueStack.Push(4); result = valueStack.TryPeek(out value); Assert.That(() => result, Is.True ); Assert.That(() => value, Is.EqualTo(4) ); Assert.That(() => valueStack, Has.Property("Capacity").EqualTo(6) .And.Count.EqualTo(4) ); valueStack = new ValueStack <int>(); Assert.That(() => valueStack.TryPeek(out _), Is.False ); }