Exemplo n.º 1
0
        public void TryWriteSixChars()
        {
            Span <char> span = stackalloc char[0];

            Assert.False(SpanUtility.TryWriteChars(span, 'a', 'b', 'c', 'd', 'e', 'f'));

            span = stackalloc char[5] {
                '0', '1', '2', '3', '4'
            };
            Assert.False(SpanUtility.TryWriteChars(span, 'a', 'b', 'c', 'd', 'e', 'f'));
            Assert.Equal(new char[] { '0', '1', '2', '3', '4' }, span.ToArray());

            span = stackalloc char[6] {
                '0', '1', '2', '3', '4', '5'
            };
            Assert.True(SpanUtility.TryWriteChars(span, 'a', 'b', 'c', 'd', 'e', 'f'));
            Assert.Equal(new char[] { 'a', 'b', 'c', 'd', 'e', 'f' }, span.ToArray());

            span = stackalloc char[7] {
                '0', '1', '2', '3', '4', '5', '6'
            };
            Assert.True(SpanUtility.TryWriteChars(span, 'a', 'b', 'c', 'd', 'e', 'f'));
            Assert.Equal(new char[] { 'a', 'b', 'c', 'd', 'e', 'f', '6' }, span.ToArray());
        }
Exemplo n.º 2
0
        public void TryWriteFourChars()
        {
            Span <char> span = stackalloc char[0];

            Assert.False(SpanUtility.TryWriteChars(span, 'a', 'b', 'c', 'd'));

            span = stackalloc char[3] {
                '0', '1', '2'
            };
            Assert.False(SpanUtility.TryWriteChars(span, 'a', 'b', 'c', 'd'));
            Assert.Equal(new char[] { '0', '1', '2' }, span.ToArray());

            span = stackalloc char[4] {
                '0', '1', '2', '3'
            };
            Assert.True(SpanUtility.TryWriteChars(span, 'a', 'b', 'c', 'd'));
            Assert.Equal(new char[] { 'a', 'b', 'c', 'd' }, span.ToArray());

            span = stackalloc char[5] {
                '0', '1', '2', '3', '4'
            };
            Assert.True(SpanUtility.TryWriteChars(span, 'a', 'b', 'c', 'd'));
            Assert.Equal(new char[] { 'a', 'b', 'c', 'd', '4' }, span.ToArray());
        }