public virtual void TestNoHanging()
        {
            ArrayCoreMap     foo        = new ArrayCoreMap();
            IList <ICoreMap> paragraphs = new List <ICoreMap>();
            ArrayCoreMap     f1         = new ArrayCoreMap();

            f1.Set(typeof(CoreAnnotations.TextAnnotation), "f");
            paragraphs.Add(f1);
            ArrayCoreMap f2 = new ArrayCoreMap();

            f2.Set(typeof(CoreAnnotations.TextAnnotation), "o");
            paragraphs.Add(f2);
            foo.Set(typeof(CoreAnnotations.ParagraphsAnnotation), paragraphs);
            foo.ToString();
            foo.GetHashCode();
        }
        public virtual void TestObjectLoops()
        {
            ArrayCoreMap foo = new ArrayCoreMap();

            foo.Set(typeof(CoreAnnotations.TextAnnotation), "foo");
            foo.Set(typeof(CoreAnnotations.PartOfSpeechAnnotation), "B");
            IList <ICoreMap> fooParagraph = new List <ICoreMap>();

            fooParagraph.Add(foo);
            ArrayCoreMap f1 = new ArrayCoreMap();

            f1.Set(typeof(CoreAnnotations.ParagraphsAnnotation), fooParagraph);
            IList <ICoreMap> p1 = new List <ICoreMap>();

            p1.Add(f1);
            foo.Set(typeof(CoreAnnotations.ParagraphsAnnotation), p1);
            foo.ToString();
            foo.GetHashCode();
        }
        public virtual void TestObjectLoopEquals()
        {
            ArrayCoreMap foo = new ArrayCoreMap();

            foo.Set(typeof(CoreAnnotations.TextAnnotation), "foo");
            foo.Set(typeof(CoreAnnotations.PartOfSpeechAnnotation), "B");
            IList <ICoreMap> fooParagraph = new List <ICoreMap>();

            fooParagraph.Add(foo);
            ArrayCoreMap f1 = new ArrayCoreMap();

            f1.Set(typeof(CoreAnnotations.ParagraphsAnnotation), fooParagraph);
            IList <ICoreMap> p1 = new List <ICoreMap>();

            p1.Add(f1);
            foo.Set(typeof(CoreAnnotations.ParagraphsAnnotation), p1);
            foo.ToString();
            int          fh  = foo.GetHashCode();
            ArrayCoreMap bar = new ArrayCoreMap();

            bar.Set(typeof(CoreAnnotations.TextAnnotation), "foo");
            bar.Set(typeof(CoreAnnotations.PartOfSpeechAnnotation), "B");
            IList <ICoreMap> barParagraph = new List <ICoreMap>();

            barParagraph.Add(bar);
            ArrayCoreMap f2 = new ArrayCoreMap();

            f2.Set(typeof(CoreAnnotations.ParagraphsAnnotation), barParagraph);
            IList <ICoreMap> p2 = new List <ICoreMap>();

            p2.Add(f2);
            bar.Set(typeof(CoreAnnotations.ParagraphsAnnotation), p2);
            bar.ToString();
            int bh = bar.GetHashCode();

            NUnit.Framework.Assert.AreEqual(foo, bar);
            NUnit.Framework.Assert.AreEqual(bar, foo);
            NUnit.Framework.Assert.AreEqual(fh, bh);
            ArrayCoreMap baz = new ArrayCoreMap();

            baz.Set(typeof(CoreAnnotations.TextAnnotation), "foo");
            baz.Set(typeof(CoreAnnotations.PartOfSpeechAnnotation), "B");
            IList <ICoreMap> foobarParagraph = new List <ICoreMap>();

            foobarParagraph.Add(foo);
            foobarParagraph.Add(bar);
            ArrayCoreMap f3 = new ArrayCoreMap();

            f3.Set(typeof(CoreAnnotations.ParagraphsAnnotation), foobarParagraph);
            IList <ICoreMap> p3 = new List <ICoreMap>();

            p3.Add(f3);
            baz.Set(typeof(CoreAnnotations.ParagraphsAnnotation), p3);
            NUnit.Framework.Assert.IsFalse(foo.Equals(baz));
            NUnit.Framework.Assert.IsFalse(baz.Equals(foo));
            ArrayCoreMap biff = new ArrayCoreMap();

            biff.Set(typeof(CoreAnnotations.TextAnnotation), "foo");
            biff.Set(typeof(CoreAnnotations.PartOfSpeechAnnotation), "B");
            IList <ICoreMap> barfooParagraph = new List <ICoreMap>();

            barfooParagraph.Add(foo);
            barfooParagraph.Add(bar);
            ArrayCoreMap f4 = new ArrayCoreMap();

            f4.Set(typeof(CoreAnnotations.ParagraphsAnnotation), barfooParagraph);
            IList <ICoreMap> p4 = new List <ICoreMap>();

            p4.Add(f4);
            biff.Set(typeof(CoreAnnotations.ParagraphsAnnotation), p4);
            NUnit.Framework.Assert.AreEqual(baz, biff);
            barfooParagraph.Clear();
            NUnit.Framework.Assert.IsFalse(baz.Equals(biff));
            barfooParagraph.Add(foo);
            NUnit.Framework.Assert.IsFalse(baz.Equals(biff));
            barfooParagraph.Add(baz);
            NUnit.Framework.Assert.IsFalse(baz.Equals(biff));
            barfooParagraph.Clear();
            NUnit.Framework.Assert.IsFalse(baz.Equals(biff));
            barfooParagraph.Add(foo);
            barfooParagraph.Add(bar);
            NUnit.Framework.Assert.AreEqual(baz, biff);
        }