public void CreateOnISeqHasItems() { ISeq r = LongRange.create(2, 5); PersistentVector v = PersistentVector.create(r); Expect((long)v.nth(0)).To.Equal(2); Expect((long)v.nth(1)).To.Equal(3); Expect((long)v.nth(2)).To.Equal(4); }
public void CreateOnISeqHasItems() { ISeq r = LongRange.create(2, 5); PersistentVector v = PersistentVector.create(r); Expect(v.nth(0), EqualTo(2)); Expect(v.nth(1), EqualTo(3)); Expect(v.nth(2), EqualTo(4)); }
public void PopOnSmallReturnsOneLess() { ISeq r = LongRange.create(2, 20); PersistentVector v = PersistentVector.create(r); IPersistentStack s = v.pop(); Expect(v.count(), EqualTo(r.count())); Expect(s.count(), EqualTo(v.count() - 1)); }
public void Setup() { IPersistentMap meta = new DummyMeta(); LongRange r = (LongRange)LongRange.create(2L, 5L); _objWithNullMeta = (IObj)r; _obj = _objWithNullMeta.withMeta(meta); _expectedType = typeof(LongRange); }
public void CreateOnISeqWithManyItemsWorks() { // Want to bust out of the first tail, so need to insert more than 32 elements. ISeq r = LongRange.create(2, 1000); PersistentVector v = PersistentVector.create(r); Expect(v.count(), EqualTo(r.count())); for (int i = 0; i < v.count(); ++i) { Expect(v.nth(i), EqualTo(i + 2)); } }
public void PopOnBigWorks() { ISeq r = LongRange.create(0, 100000); PersistentVector v = PersistentVector.create(r); IPersistentStack s = v; for (int i = 16; i < 100000; i++) { s = s.pop(); } Expect(v.count(), EqualTo(r.count())); Expect(s.count(), EqualTo(16)); }
public void CreateOnISeqWithManyManyItemsWorks() { // Want to bust out of the first tail, so need to insert more than 32 elements. // Let's get out of the second level, too. ISeq r = LongRange.create(2, 100000); PersistentVector v = PersistentVector.create(r); Expect(v.count()).To.Equal(r.count()); for (int i = 0; i < v.count(); ++i) { Expect((long)v.nth(i)).To.Equal(i + 2L); } }
public void AssocNReplacesInRangeForSmall() { ISeq r = LongRange.create(2, 5); PersistentVector v1 = PersistentVector.create(r); IPersistentVector v2 = v1.assocN(1, 10); Expect(v1.nth(0), EqualTo(2)); Expect(v1.nth(1), EqualTo(3)); Expect(v1.nth(2), EqualTo(4)); Expect(v1.count(), EqualTo(3)); Expect(v2.nth(0), EqualTo(2)); Expect(v2.nth(1), EqualTo(10)); Expect(v2.nth(2), EqualTo(4)); Expect(v2.count(), EqualTo(3)); }
public void AssocNReplacesInRangeForSmall() { ISeq r = LongRange.create(2, 5); PersistentVector v1 = PersistentVector.create(r); IPersistentVector v2 = v1.assocN(1, 10L); Expect((long)v1.nth(0)).To.Equal(2); Expect((long)v1.nth(1)).To.Equal(3); Expect((long)v1.nth(2)).To.Equal(4); Expect((long)v1.count()).To.Equal(3); Expect((long)v2.nth(0)).To.Equal(2); Expect((long)v2.nth(1)).To.Equal(10); Expect((long)v2.nth(2)).To.Equal(4); Expect((long)v2.count()).To.Equal(3); }
public void AssocNChangesForBig() { ISeq r = LongRange.create(2, 100000); PersistentVector v1 = PersistentVector.create(r); IPersistentVector v2 = v1; for (int i = 0; i < 110000; i++) { v2 = v2.assocN(i, i + 20); } for (int i = 0; i < v1.count(); ++i) { Expect(v1.nth(i), EqualTo(i + 2)); } for (int i = 0; i < v2.count(); ++i) { Expect(v2.nth(i), EqualTo(i + 20)); } }
public void AssocNChangesForBig() { ISeq r = LongRange.create(2, 100000); PersistentVector v1 = PersistentVector.create(r); IPersistentVector v2 = v1; for (int i = 0; i < 110000; i++) { v2 = v2.assocN(i, i + 20L); } for (int i = 0; i < v1.count(); ++i) { Expect((long)v1.nth(i)).To.Equal(i + 2L); } for (int i = 0; i < v2.count(); ++i) { object o = v2.nth(i); Expect(o).To.Be.An.Instance.Of <long>(); Expect((long)o).To.Equal(i + 20L); } }
public void Setup() { _createFn = (start, end) => (object)LongRange.create((long)start, (long)end); }