Beispiel #1
0
        public void PeekYieldsFirstElementAndListUnchanged()
        {
            PersistentList p = (PersistentList)PersistentList.create(new object[] { "abc", 1, "def" });

            Expect(p.peek(), EqualTo("abc"));
            Expect(p.count(), EqualTo(3));
        }
Beispiel #2
0
        public void PopLosesfirstElement()
        {
            PersistentList p  = (PersistentList)PersistentList.create(new object[] { "abc", 1, "def" });
            PersistentList p2 = (PersistentList)p.pop();

            Expect(p2.count(), EqualTo(2));
            Expect(p2.peek(), EqualTo(1));
        }
Beispiel #3
0
        public void CreateOnEmptyISeqReturnsEmptyMap()
        {
            object[]       items = new object[] { };
            ArrayList      a     = new ArrayList(items);
            ISeq           s     = PersistentList.create(a).seq();
            IPersistentMap m     = PersistentTreeMap.create(s);

            Expect(m.count(), EqualTo(0));
        }
Beispiel #4
0
        public void ReduceWithStartIterates()
        {
            IFn fn = DummyFn.CreateForReduce();

            PersistentList p   = (PersistentList)PersistentList.create(new object[] { 1, 2, 3 });
            object         ret = p.reduce(fn, 20);

            Expect(ret, EqualTo(26));
        }
        public void CreateOnEmptyISeqReturnsEmptySet()
        {
            object[]       items = new object[] { };
            ArrayList      a     = new ArrayList(items);
            ISeq           s     = PersistentList.create(a).seq();
            IPersistentSet m     = PersistentHashSet.create(s);

            Expect(m.count()).To.Equal(0);
        }
        public void Setup()
        {
            IPersistentMap meta = new DummyMeta();

            PersistentList p1 = (PersistentList)PersistentList.create(new object[] { "abc", "def" });

            _objWithNullMeta = (IObj)p1;
            _obj             = _objWithNullMeta.withMeta(meta);
            _expectedType    = typeof(PersistentList);
        }
        public void ReduceWithStartIterates()
        {
            IFn fn = DummyFn.CreateForReduce();

            PersistentList p   = (PersistentList)PersistentList.create(new object[] { 1, 2, 3 });
            object         ret = p.reduce(fn, 20);

            Expect(ret).To.Be.An.Instance.Of <long>();
            Expect((long)ret).To.Equal(26);
        }
Beispiel #8
0
        public void CreateOnISeqReturnsMap()
        {
            object[]       items = new object[] { 1, "a", 2, "b" };
            ArrayList      a     = new ArrayList(items);
            ISeq           s     = PersistentList.create(a).seq();
            IPersistentMap m     = PersistentTreeMap.create(s);

            Expect(m.count(), EqualTo(2));
            Expect(m.valAt(1), EqualTo("a"));
            Expect(m.valAt(2), EqualTo("b"));
            Expect(m.containsKey(3), False);
        }
Beispiel #9
0
        public void CreateOnISeqReturnsSet()
        {
            object[]       items = new object[] { 1, "a" };
            ArrayList      a     = new ArrayList(items);
            ISeq           s     = PersistentList.create(a).seq();
            IPersistentSet m     = PersistentHashSet.create(s);

            Expect(m.count(), EqualTo(2));
            Expect(m.contains(1));
            Expect(m.contains("a"));
            Expect(m.contains(3), False);
        }
Beispiel #10
0
        public void CreateOnISeqReturnsMap()
        {
            object[]       items = new object[] { 1, "a", 2, "b" };
            ArrayList      a     = new ArrayList(items);
            ISeq           s     = PersistentList.create(a).seq();
            IPersistentMap m     = PersistentHashMap.create(s);

            Expect(m.count()).To.Equal(2);
            Expect(m.valAt(1)).To.Equal("a");
            Expect(m.valAt(2)).To.Equal("b");
            Expect(m.containsKey(3)).To.Be.False();
        }
Beispiel #11
0
        public void Setup()
        {
            _mocks = new MockRepository();
            IPersistentMap meta = _mocks.StrictMock <IPersistentMap>();

            _mocks.ReplayAll();

            PersistentList p1 = (PersistentList)PersistentList.create(new object[] { "abc", "def" });


            _objWithNullMeta = (IObj)p1;
            _obj             = _objWithNullMeta.withMeta(meta);
            _expectedType    = typeof(PersistentList);
        }
Beispiel #12
0
        public void ListCtorConstructsListOfSeveralElements()
        {
            object[]        items = new object[] { 1, "abc", 2, "def" };
            IPersistentList p     = PersistentList.create(items);

            Expect(p.count(), EqualTo(4));

            ISeq s = p.seq();

            Expect(s.first(), EqualTo(1));
            Expect(s.next().first(), EqualTo("abc"));
            Expect(s.next().next().first(), EqualTo(2));
            Expect(s.next().next().next().first(), EqualTo("def"));
            Expect(s.next().next().next().next(), Null);
        }
Beispiel #13
0
        public void ReduceWithNoStartIterates()
        {
            MockRepository mocks = new MockRepository();
            IFn            fn    = mocks.StrictMock <IFn>();

            RMExpect.Call(fn.invoke(1, 2)).Return(5);
            RMExpect.Call(fn.invoke(5, 3)).Return(7);
            mocks.ReplayAll();

            PersistentList p   = (PersistentList)PersistentList.create(new object[] { 1, 2, 3 });
            object         ret = p.reduce(fn);

            Expect(ret, EqualTo(7));

            mocks.VerifyAll();
        }
Beispiel #14
0
            protected override object Read(PushbackTextReader r, char leftparen, object opts)
            {
                //int startLine = -1;
                //int startCol = -1;
                //LineNumberingTextReader lntr = r as LineNumberingTextReader;

                //if (lntr != null)
                //{
                //    startLine = lntr.LineNumber;
                //    startCol = lntr.ColumnNumber;
                //}
                IList <Object> list = ReadDelimitedList(')', r, true, opts);

                if (list.Count == 0)
                {
                    return(PersistentList.EMPTY);
                }
                IObj s = (IObj)PersistentList.create((IList)list);

                return(s);
            }