Example #1
0
        public void TestBigCount()
        {
            BinaryAsciiString s = new BinaryAsciiString();

            for (int i = 0; i < 100; ++i)
            {
                s.AppendFastHex(10000);
            }
            s.Clear();
        }
Example #2
0
        public void ToTypeTest(MutableStringAppendTestType type)
        {
            if (type == MutableStringAppendTestType.Long)
            {
                BinaryAsciiString s = new BinaryAsciiString();
                s.Assign((long)100000000000000000);
                Assert.AreEqual(s.ToInt64(), (long)100000000000000000);
            }
            if (type == MutableStringAppendTestType.UTF8)
            {
                Array.Resize(ref utf8test, 100);
                s.Assign("AAAaaa");

                s.ToUTF8(utf8test);
                for (int i = 0; i < 3; ++i)
                {
                    Assert.AreEqual(utf8test[i], 65);
                }
                for (int i = 3; i < 6; ++i)
                {
                    Assert.AreEqual(utf8test[i], 97);
                }

                utf8test[1] = 45;
                utf8test[2] = 45;
                s.ToUTF8(0, 2, utf8test, 0);
                for (int i = 0; i < 2; ++i)
                {
                    Assert.AreEqual(utf8test[i], 65);
                }
                Assert.AreEqual(utf8test[2], 45);
                utf8test[1] = 45;
                utf8test[2] = 45;
                s.ToUTF8(utf8test, 2);
                for (int i = 2; i < 5; ++i)
                {
                    Assert.AreEqual(utf8test[i], 65);
                }
                for (int i = 5; i < 8; ++i)
                {
                    Assert.AreEqual(utf8test[i], 97);
                }
            }
            if (type == MutableStringAppendTestType.String)
            {
                BinaryAsciiString s = new BinaryAsciiString();
                s.Assign("abacaba");
                Assert.AreEqual(s.ToString(), "abacaba");
                Assert.AreEqual(s.Length, 7);
            }
        }
Example #3
0
        public void TestUpperAndLowerCaseMethod()
        {
            BinaryAsciiString s1 = new BinaryAsciiString("aza23523aza");
            BinaryAsciiString s2 = new BinaryAsciiString("AzA23523Aza");
            BinaryAsciiString s3 = new BinaryAsciiString("AZA23523AZA");
            BinaryAsciiString s4 = new BinaryAsciiString();

            s1.CopyTo(s4);
            s4.Append("a");
            Assert.IsTrue(s1.ToUpperCase().Equals(s2.ToUpperCase()));
            Assert.IsTrue(s3.Equals(s2));
            s1.Append("a");
            s3.Append("A");
            Assert.IsFalse(s1.Equals(s3));
            Assert.IsTrue(s1.ToLowerCase().Equals(s3.ToLowerCase().ToUpperCase().ToLowerCase()));
            Assert.IsTrue(s1.Equals(s4));
        }
Example #4
0
        public void HashCodeTest()
        {
            BinaryAsciiString ar = new BinaryAsciiString();

            ar.Clear();
            ar.Append("aba");
            ar.Append("caba");
            ar.Append("abacaba");
            BinaryAsciiString ar1 = new BinaryAsciiString();

            ar1.Clear();
            ar1.Append("abacaba");
            ar1.Append("abacaba");
            BinaryAsciiString ar2 = new BinaryAsciiString();

            ar2.Assign("abacabaabacaba");
            Assert.AreEqual(ar1.GetHashCode(), ar2.GetHashCode());
            Assert.AreEqual(ar1.GetHashCode(), ar.GetHashCode());
        }
Example #5
0
        public void BinaryAsciiStringTest()
        {
            char[]            charArray     = { 'a', 'b', 'c', 'd', 'e' };
            Span <char>       testCharSpan  = new Span <char>(charArray);
            BinaryAsciiString mutableString = new BinaryAsciiString();

            mutableString.Assign(testCharSpan);
            Assert.AreEqual(5, mutableString.Length);
            Assert.AreEqual("abcde", mutableString.ToString());
            mutableString.Append(testCharSpan);
            Assert.AreEqual(10, mutableString.Length);
            Assert.AreEqual("abcdeabcde", mutableString.ToString());
            Span <char> span = new Span <char>(new char[10]);

            mutableString.ToCharArray(span);
            BinaryAsciiString ar1 = new BinaryAsciiString(span);

            Assert.AreEqual("abcdeabcde", ar1.ToString());
        }
Example #6
0
        public void BinaryStringTestConstructors(MutableStringAppendTestType type)
        {
            if (type == MutableStringAppendTestType.MutableString)
            {
                BinaryAsciiString s  = new BinaryAsciiString("ab");
                BinaryAsciiString s1 = new BinaryAsciiString(s);
                Assert.AreEqual(s.ToString(), s1.ToString());
                Assert.AreEqual(s1.ToString(), "ab");
                BinaryAsciiString s2 = new BinaryAsciiString(100, s);
                Assert.AreEqual(s2.ToString(), s.ToString());
            }
            if (type == MutableStringAppendTestType.String)
            {
                BinaryAsciiString s = new BinaryAsciiString("as");
                Assert.AreEqual(s.ToString(), "as");
                s = new BinaryAsciiString(105, "as");
                Assert.AreEqual(s.ToString(), "as");
            }
            if (type == MutableStringAppendTestType.StringBuilder)
            {
                StringBuilder     builder = new StringBuilder("abab");
                BinaryAsciiString s       = new BinaryAsciiString(builder);
                Assert.AreEqual(s.ToString(), "abab");
                BinaryAsciiString s1 = new BinaryAsciiString(100, builder);
                Assert.AreEqual(s1.ToString(), "abab");
            }
            if (type == MutableStringAppendTestType.Char)
            {
                BinaryAsciiString s = new BinaryAsciiString('a');
                Assert.AreEqual(s.ToString(), "a");
                BinaryAsciiString s1 = new BinaryAsciiString(256, 'a');
                Assert.AreEqual(s1.ToString(), "a");
            }
            if (type == MutableStringAppendTestType.CharPtr)
            {
                unsafe
                {
                    fixed(char *ptr = ar)
                    {
                        BinaryAsciiString s = new BinaryAsciiString(ptr, 8);

                        Assert.AreEqual(s.ToString(), "sswtuj1r");
                        BinaryAsciiString s1 = new BinaryAsciiString(546, ptr, 8);

                        Assert.AreEqual(s1.ToString(), "sswtuj1r");
                    }
                }
            }
            if (type == MutableStringAppendTestType.ArrayOfChar)
            {
                BinaryAsciiString s = new BinaryAsciiString(ar);
                Assert.AreEqual(s.ToString(), "sswtuj1r");
                BinaryAsciiString s1 = new BinaryAsciiString(100, ar);
                Assert.AreEqual(s1.ToString(), "sswtuj1r");
            }
            if (type == MutableStringAppendTestType.ArrayOfCharWithOffset)
            {
                BinaryAsciiString s = new BinaryAsciiString(ar, 1, 2);
                Assert.AreEqual(s.ToString(), "sw");
                BinaryAsciiString s1 = new BinaryAsciiString(105, ar, 1, 2);
                Assert.AreEqual(s1.ToString(), "sw");
            }
            if (type == MutableStringAppendTestType.Integer)
            {
                s = new BinaryAsciiString(100, -100);
                Assert.AreEqual(s.ToString(), "-100");
                s = new BinaryAsciiString(100, 100);
                Assert.AreEqual(s.ToString(), "100");
            }
            if (type == MutableStringAppendTestType.Short)
            {
                s = new BinaryAsciiString(100, (short)-100);
                Assert.AreEqual(s.ToString(), "-100");
                s = new BinaryAsciiString(100, (short)100);
                Assert.AreEqual(s.ToString(), "100");
            }
            if (type == MutableStringAppendTestType.Long)
            {
                s = new BinaryAsciiString(100, (long)-100);
                Assert.AreEqual(s.ToString(), "-100");
                s = new BinaryAsciiString(100, (long)100);
                Assert.AreEqual(s.ToString(), "100");
            }
        }