Ejemplo n.º 1
0
        public void ReadingAtWithExplicitBuffer()
        {
            var buffer = new ConsoleInputBuffer();
            buffer.Insert("abcd");

            var outBuffer = new char[4];

            buffer.ReadAt(0, outBuffer, 0, 2);
            outBuffer[0].Should().Be('a');
            outBuffer[1].Should().Be('b');

            buffer.ReadAt(2, outBuffer, 0, 2);
            outBuffer[0].Should().Be('c');
            outBuffer[1].Should().Be('d');

            outBuffer[0] = 'x';
            buffer.ReadAt(0, outBuffer, 1, 1);
            outBuffer[0].Should().Be('x');
            outBuffer[1].Should().Be('a');

            ((Action)(() => buffer.ReadAt(0, null, 0, 2))).ShouldThrow<ArgumentNullException>();
            ((Action)(() => buffer.ReadAt(2, outBuffer, 0, 4))).ShouldThrow<ArgumentException>();
            ((Action)(() => buffer.ReadAt(2, outBuffer, 3, 2))).ShouldThrow<ArgumentException>();
        }
Ejemplo n.º 2
0
        public void ReadingAt()
        {
            var buffer = new ConsoleInputBuffer();
            buffer.Insert("abcd");

            buffer.ReadAt(0, 2).Should().ContainInOrder('a', 'b');
            buffer.ReadAt(2, 2).Should().ContainInOrder('c', 'd');

            ((Action)(() => buffer.ReadAt(2, 4))).ShouldThrow<ArgumentException>();
            ((Action)(() => buffer.ReadAt(3, 2))).ShouldThrow<ArgumentException>();
        }