gzz-commits
[Top][All Lists]
Advanced

[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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]