Exemplo n.º 1
0
 public void StackSet_IndexOutOfBoundsThrowsException(int address, UInt32 value)
 {
     // Arrange
     var stack = new Stack(100);
     
     // Act, Assert
     Assert.Throws<IndexOutOfRangeException>(() => stack.SetAt(address, value));
 }
Exemplo n.º 2
0
 public void StackPush_ThrowsExceptionOnOverflow()
 {
     // Arrange
     var stack = new Stack(10);
     
     // Act, Assert
     stack.SetAt(9, 1);
     stack.Invoking(s => s.Push(2)).ShouldThrow<StackOverflowException>();
 }
Exemplo n.º 3
0
        public void StackPop_DecrementsStackPointer()
        {
            // Arrange
            var stack = new Stack(16);
            stack.SetAt(8, 80085);

            // Act
            stack.Pop();

            // Assert
            stack.StackPointer.Should().Be(7);
        }
Exemplo n.º 4
0
        public void StackPop_ReturnsValueFromTopOfStack()
        {
            // Arrange
            var stack = new Stack(16);
            stack.SetAt(8, 80085);

            // Act
            var value = stack.Pop();

            // Assert
            value.Should().Be(80085);
        }
Exemplo n.º 5
0
        public void StackSetGet_SetsValueAtGivenAddress(int address, UInt64 value)
        {
            // Arrange
            var stack = new Stack(10);

            // Act
            stack.SetAt(address, value);

            // Assert
            stack.GetAt(address).Should().Be(value);
        }