[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] gzz/test gzz/media/enfilade.py gzz/media/impl/e...
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] gzz/test gzz/media/enfilade.py gzz/media/impl/e... |
Date: |
Sun, 13 Oct 2002 08:39:27 -0400 |
CVSROOT: /cvsroot/gzz
Module name: gzz
Changes by: Tuomas J. Lukka <address@hidden> 02/10/13 08:39:27
Modified files:
test/gzz/media : enfilade.py
Added files:
test/gzz/media/impl: enfilade1dimpl_fake.test
enfilade1dimpl_real.test
Removed files:
test : test.py
test/gzz : content.py
Log message:
Move final legacy jython tests to the proper framework. Who's going to
do the same for Java?
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/test/gzz/media/enfilade.py.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/test/gzz/media/impl/enfilade1dimpl_fake.test?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gzz/gzz/test/gzz/media/impl/enfilade1dimpl_real.test?rev=1.1
Patches:
Index: gzz/test/gzz/media/enfilade.py
diff -c gzz/test/gzz/media/enfilade.py:1.9 gzz/test/gzz/media/enfilade.py:1.10
*** gzz/test/gzz/media/enfilade.py:1.9 Sun Aug 18 08:00:30 2002
--- gzz/test/gzz/media/enfilade.py Sun Oct 13 08:39:27 2002
***************
*** 28,158 ****
from java.util import Random, ArrayList
from java import io
! class TestEnfilade(unittest.TestCase):
! # Requires attributes:
! # spanMaker: a SpanMaker
! # maker: Enfilade1D.Maker
! def make(self, span):
! if isinstance(span, type("")):
! span = self.makeSpan(span)
! return self.maker.makeEnfilade(span)
! def makeSpan(self, text):
! return self.spanMaker.makeTextSpan(text)
!
! def bigEnf(self):
! """Construct a large set of random enfilades.
!
! We have to be careful to include all types of nodes there."""
!
! rand = Random(42)
! s = ["foo", "bar", "x", ""]
! sp = ["graf", "barg", "i", ""]
! e = [self.make(x) for x in s]
! ep = [self.makeSpan(x) for x in sp]
! for i in range(0,80):
! r1 = rand.nextInt(len(s))
if rand.nextBoolean():
! # append two enfilades
! r2 = rand.nextInt(len(s))
! s.append(s[r1] + s[r2])
! e.append(e[r1].plus(e[r2]))
else:
! # Append or prepend a span
! r2 = rand.nextInt(len(sp))
! if rand.nextBoolean():
! s.append(s[r1] + sp[r2])
! e.append(e[r1].plus(ep[r2]))
! else:
! s.append(sp[r2] + s[r1])
! e.append(e[r1].prepended(ep[r2]))
! return (s, sp, e, ep)
!
! def testTrivial(self):
! "Test enfilades consisting of no spans and a single span."
! nullEnf = self.make(None)
! self.failUnlessEqual(0, nullEnf.length())
! self.failUnlessEqual("", nullEnf.makeString())
! self.failIf(nullEnf.getList().iterator().hasNext())
!
! sEnf = self.make("foo")
! self.failUnlessEqual("foo", sEnf.makeString())
! self.failUnlessEqual(3, sEnf.length())
!
! def testPlus(self):
! "Test concatenation"
! e1 = self.make("foo")
! e2 = self.make("bar")
! e3 = self.make("baz")
!
! s1 = self.makeSpan("frob")
!
! self.failUnlessEqual("foobar", e1.plus(e2).makeString())
! self.failUnlessEqual("foobarbaz", e1.plus(e2).plus(e3).makeString())
! self.failUnlessEqual("foobarbaz", e1.plus(e2.plus(e3)).makeString())
! self.failUnlessEqual("foofrobbar", e1.plus(s1).plus(e2).makeString())
!
! self.failUnlessEqual(e1.plus(e2).plus(e3), e1.plus(e2.plus(e3)))
! # cannot do the next test: the transientscrolls don't have hashs yet
! #self.failUnlessEqual(e1.plus(e2).plus(e3).hashCode(),
e1.plus(e2.plus(e3)).hashCode())
!
! def testSub(self):
! "Test subenfilades"
! # see that they and all their substrings are equal.
! s, sp, e, ep = self.bigEnf()
! for i in range(0,len(s)):
! self.failUnlessEqual(s[i], e[i].makeString())
! for enf in (e[i], e[i].optimized()):
! for x in range(0,len(s[i])):
! self.failUnlessEqual(s[i][x:], enf.sub(x).makeString())
! for y in range(x, len(s[i])):
! self.failUnlessEqual(s[i][x:y],
! enf.sub(x,y).makeString())
!
! def testFromList(self):
! x = [self.makeSpan(e) for e in ("ng ", "fe", "i", "shu")]
! l = ArrayList()
! for e in (x[1], x[0], x[3], x[2]): l.add(e)
! enf = self.maker.makeEnfilade(l)
! assert enf.makeString() == "feng shui"
! assert enf.getList().size() == 4
!
! #l = ArrayList()
! #for e in (self.makeSpan("this "), enf, self.makeSpan(" is")):
l.add(e)
! #enf = self.maker.makeEnfilade(l)
! #self.failUnlessEqual(enf.makeString(), "this feng shui is")
! #assert enf.getList().size() == 7
!
!
!
!
! def testSerialization(self):
! "Test that enfilades' serialization works right."
! s, sp, e, ep = self.bigEnf()
! enf = e[-1]
! str = s[-1]
!
! serv = SimpleMediaserver(TransientStorer(), IDSpace(), 0)
!
! ous = io.ByteArrayOutputStream()
! MediaOutputStream(ous, serv).writeObject(enf)
! ins = io.ByteArrayInputStream(ous.toByteArray())
! obj = MediaInputStream(ins, serv).readObject()
!
! self.failUnlessEqual(str, obj.makeString())
! self.failUnlessEqual(enf.getList(), obj.getList())
! self.failUnlessEqual(enf, obj)
! self.failUnlessEqual(enf.hashCode(), obj.hashCode())
# XXX testIterator!
! class TestNonFakeEnfilade(TestEnfilade):
! def testOptimizeJoins(self):
"""Test that optimization joins adjacent spans"""
! x = [self.makeSpan(e) for e in "foobar"]
l = ArrayList()
! for e in "foobar": l.add(self.makeSpan(e))
! enf = self.maker.makeEnfilade(l).optimized()
assert enf.makeString() == "foobar"
#print enf
assert enf.getList().size() == 1
--- 28,160 ----
from java.util import Random, ArrayList
from java import io
! # Requires attributes:
! # spanMaker: a SpanMaker
! # maker: Enfilade1D.Maker
!
! def make( span):
! if isinstance(span, type("")):
! span = makeSpan(span)
! return maker.makeEnfilade(span)
!
! def makeSpan(text):
! return spanMaker.makeTextSpan(text)
!
! def bigEnf():
! """Construct a large set of random enfilades.
!
! We have to be careful to include all types of nodes there."""
!
! rand = Random(42)
! s = ["foo", "bar", "x", ""]
! sp = ["graf", "barg", "i", ""]
! e = [make(x) for x in s]
! ep = [makeSpan(x) for x in sp]
! for i in range(0,80):
! r1 = rand.nextInt(len(s))
! if rand.nextBoolean():
! # append two enfilades
! r2 = rand.nextInt(len(s))
! s.append(s[r1] + s[r2])
! e.append(e[r1].plus(e[r2]))
! else:
! # Append or prepend a span
! r2 = rand.nextInt(len(sp))
if rand.nextBoolean():
! s.append(s[r1] + sp[r2])
! e.append(e[r1].plus(ep[r2]))
else:
! s.append(sp[r2] + s[r1])
! e.append(e[r1].prepended(ep[r2]))
! return (s, sp, e, ep)
!
! def testTrivial():
! "Test enfilades consisting of no spans and a single span."
! nullEnf = make(None)
! failUnlessEqual(0, nullEnf.length())
! failUnlessEqual("", nullEnf.makeString())
! failIf(nullEnf.getList().iterator().hasNext())
!
! sEnf = make("foo")
! failUnlessEqual("foo", sEnf.makeString())
! failUnlessEqual(3, sEnf.length())
!
! def testPlus():
! "Test concatenation"
! e1 = make("foo")
! e2 = make("bar")
! e3 = make("baz")
!
! s1 = makeSpan("frob")
!
! failUnlessEqual("foobar", e1.plus(e2).makeString())
! failUnlessEqual("foobarbaz", e1.plus(e2).plus(e3).makeString())
! failUnlessEqual("foobarbaz", e1.plus(e2.plus(e3)).makeString())
! failUnlessEqual("foofrobbar", e1.plus(s1).plus(e2).makeString())
!
! failUnlessEqual(e1.plus(e2).plus(e3), e1.plus(e2.plus(e3)))
! # cannot do the next test: the transientscrolls don't have hashs yet
! #failUnlessEqual(e1.plus(e2).plus(e3).hashCode(),
e1.plus(e2.plus(e3)).hashCode())
!
! def testSub():
! "Test subenfilades"
! # see that they and all their substrings are equal.
! s, sp, e, ep = bigEnf()
! for i in range(0,len(s)):
! failUnlessEqual(s[i], e[i].makeString())
! for enf in (e[i], e[i].optimized()):
! for x in range(0,len(s[i])):
! failUnlessEqual(s[i][x:], enf.sub(x).makeString())
! for y in range(x, len(s[i])):
! failUnlessEqual(s[i][x:y],
! enf.sub(x,y).makeString())
!
! def testFromList():
! x = [makeSpan(e) for e in ("ng ", "fe", "i", "shu")]
! l = ArrayList()
! for e in (x[1], x[0], x[3], x[2]): l.add(e)
! enf = maker.makeEnfilade(l)
! assert enf.makeString() == "feng shui"
! assert enf.getList().size() == 4
!
! #l = ArrayList()
! #for e in (makeSpan("this "), enf, makeSpan(" is")): l.add(e)
! #enf = maker.makeEnfilade(l)
! #failUnlessEqual(enf.makeString(), "this feng shui is")
! #assert enf.getList().size() == 7
!
!
!
!
! def testSerialization():
! "Test that enfilades' serialization works right."
! s, sp, e, ep = bigEnf()
! enf = e[-1]
! str = s[-1]
!
! serv = SimpleMediaserver(TransientStorer(), IDSpace(), 0)
!
! ous = io.ByteArrayOutputStream()
! MediaOutputStream(ous, serv).writeObject(enf)
! ins = io.ByteArrayInputStream(ous.toByteArray())
! obj = MediaInputStream(ins, serv).readObject()
!
! failUnlessEqual(str, obj.makeString())
! failUnlessEqual(enf.getList(), obj.getList())
! failUnlessEqual(enf, obj)
! failUnlessEqual(enf.hashCode(), obj.hashCode())
# XXX testIterator!
! # Test this only if not using fake spans.
! if not fake:
! def testOptimizeJoins():
"""Test that optimization joins adjacent spans"""
! x = [makeSpan(e) for e in "foobar"]
l = ArrayList()
! for e in "foobar": l.add(makeSpan(e))
! enf = maker.makeEnfilade(l).optimized()
assert enf.makeString() == "foobar"
#print enf
assert enf.getList().size() == 1
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] gzz/test gzz/media/enfilade.py gzz/media/impl/e...,
Tuomas J. Lukka <=