示例#1
0
        public void Dispose_CalledTwice_ShouldCallSocketDisposeOnce()
        {
            var socket = Mock.Create <ISocket>();

            Mock.Arrange(() => socket.Connected).Returns(true);
            _sut = new NetworkTunnel(socket, _recorder);

            _sut.Dispose();
            _sut.Dispose();

            Mock.Assert(() => socket.Dispose(), Occurs.Once());
        }
示例#2
0
        public void Dispose_CalledTwice_ShouldCallClosedEventOnce()
        {
            var closeRaised = 0;
            var socket      = Mock.Create <ISocket>();

            Mock.Arrange(() => socket.Connected).Returns(true);
            _sut         = new NetworkTunnel(socket, _recorder);
            _sut.Closed += () => closeRaised++;

            _sut.Dispose();
            _sut.Dispose();

            Assert.Equal(1, closeRaised);
        }