Exemplo n.º 1
0
        public void SpanString1AsDefaultEquatableDictionaryKey()
        {
            var d    = new Dictionary <SpanString1, int>();
            var a    = new SpanString1("a");
            var b    = new SpanString1("bb");
            var aCap = new SpanString1("A");

            d[a]    = 0;
            d[b]    = 1;
            d[aCap] = 2;
            Assert.AreEqual(3, d.Count);
            Assert.AreEqual(2, d[aCap]);
            Assert.AreEqual(1, d[b]);
            Assert.AreEqual(0, d[a]);
        }
Exemplo n.º 2
0
        public void SpanString1FromFullString()
        {
            var ss = new SpanString1("ABCDEFG");

            Assert.AreEqual(7, ss.Length);
            Assert.AreEqual(0, ss.CompareTo(new SpanString1("ABCDEFG")));

            Assert.AreEqual(ss.GetHashCode(), (new SpanString1("ABCDEFG")).GetHashCode());
            Assert.AreEqual(ss.GetHashCodeIgnoreCase(), (new SpanString1("ABCDEFG")).GetHashCodeIgnoreCase());
            Assert.AreEqual(ss.GetHashCodeIgnoreCase(), (new SpanString1("abcdefg")).GetHashCodeIgnoreCase());

            Assert.AreNotEqual(0, ss.CompareTo(new SpanString1("abcdefg")));
            Assert.AreNotEqual(ss.GetHashCode(), (new SpanString1("abcdefg")).GetHashCode());
            Assert.AreEqual(0, ss.CompareTo(new SpanString1("abcdefg"), true));
        }
Exemplo n.º 3
0
        public void SpanString1FromSlice()
        {
            var ss = new SpanString1("ABCDEFG", 2, 3);

            Assert.AreEqual(3, ss.Length);
            Assert.AreEqual(0, ss.CompareTo(new SpanString1("CDE")));

            Assert.AreEqual(ss.GetHashCode(), (new SpanString1("CDE")).GetHashCode());
            Assert.AreEqual(ss.GetHashCodeIgnoreCase(), (new SpanString1("CDE")).GetHashCodeIgnoreCase());
            Assert.AreEqual(ss.GetHashCodeIgnoreCase(), (new SpanString1("cde")).GetHashCodeIgnoreCase());

            Assert.AreNotEqual(0, ss.CompareTo(new SpanString1("cde")));
            Assert.AreNotEqual(ss.GetHashCode(), (new SpanString1("cde")).GetHashCode());
            Assert.AreEqual(0, ss.CompareTo(new SpanString1("cde"), true));
        }
Exemplo n.º 4
0
        public void SpanString1AsOrdinalIgnoreCaseDictionaryKey()
        {
            var d    = new Dictionary <SpanString1, int>(SpanStringComparer.OrdinalIgnoreCase);
            var a    = new SpanString1("a");
            var b    = new SpanString1("bb");
            var aCap = new SpanString1("A");

            d[a]    = 0;
            d[b]    = 1;
            d[aCap] = 2;
            Assert.AreEqual(2, d.Count);
            Assert.AreEqual(2, d[aCap]);
            Assert.AreEqual(1, d[b]);
            Assert.AreEqual(2, d[a]);
        }