[prev in list] [next in list] [prev in thread] [next in thread] 

List:       rpm-cvs
Subject:    [CVS] RPM: rpm-5_2: rpm/python/test/resources/ simple.spec rpm/python/...
From:       "Per Øyvind Karlsen" <pkarlsen () rpm5 ! org>
Date:       2009-07-25 1:25:01
Message-ID: 20090725012501.48E4D1822 () rpm5 ! org
[Download RAW message or body]

  RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  ____________________________________________________________________________

  Server: rpm5.org                         Name:   Per Øyvind Karlsen
  Root:   /v/rpm/cvs                       Email:  pkarlsen@rpm5.org
  Module: rpm                              Date:   25-Jul-2009 03:25:01
  Branch: rpm-5_2                          Handle: 2009072501250000

  Modified files:           (Branch: rpm-5_2)
    rpm/python/test         test_rpm.py
    rpm/python/test/resources
                            simple.spec

  Log:
    improve test suite and add a test case for header

  Summary:
    Revision    Changes     Path
    1.1.8.1     +3  -0      rpm/python/test/resources/simple.spec
    1.1.2.2     +41 -13     rpm/python/test/test_rpm.py
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/python/test/resources/simple.spec
  ============================================================================
  $ cvs diff -u -r1.1 -r1.1.8.1 simple.spec
  --- rpm/python/test/resources/simple.spec	14 Feb 2005 03:51:06 -0000	1.1
  +++ rpm/python/test/resources/simple.spec	25 Jul 2009 01:25:00 -0000	1.1.8.1
  @@ -1,7 +1,10 @@
   Summary: Simple SPEC
   Name: simple
  +Epoch: 1
   Version: 1.0
   Release: 1
  +DistEpoch: 2009.1
  +DistTag: foo
   License: BSD
   Group: Development/Libraries
   AutoReqProv: no
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/python/test/test_rpm.py
  ============================================================================
  $ cvs diff -u -r1.1.2.1 -r1.1.2.2 test_rpm.py
  --- rpm/python/test/test_rpm.py	24 Jul 2009 21:22:34 -0000	1.1.2.1
  +++ rpm/python/test/test_rpm.py	25 Jul 2009 01:25:00 -0000	1.1.2.2
  @@ -3,18 +3,42 @@
   #
   # Copyright (c) 2009 Per Øyvind Karlsen <peroyvind@mandriva.org>
   #
  -import sys, random
  -import rpm
  -import unittest
  -import os
  -from test.test_support import TESTFN
  +import sys, random, rpm, unittest, os, subprocess
  +from test.test_support import rmtree
   
  -class TestRPM(unittest.TestCase):
  -    
  +DICT = {}
  +
  +class Test_loadHeader(unittest.TestCase):
       def setUp(self):
  -	self.labels = (("1", "2.1", "1", "2010.1"), ("1", "2.1", "2", "2010.1"))
  +	self.topdir = "%s/tmp" % os.getcwdu()
  +	self.package = "%s/RPMS/noarch/simple-1.0-1-foo2009.1.noarch.rpm" % self.topdir
  +
  +	build = subprocess.Popen(["--define", "_topdir %s" % self.topdir, "-bb", \
"resources/simple.spec"],  +		executable="rpm", shell=True, stdout=subprocess.PIPE, \
stderr=subprocess.STDOUT, close_fds=True)  +	self.assertFalse(build.wait())
  +	self.assertTrue(os.path.isfile(self.package))
  +
  +    def test_loadHeader(self):
  +	ts = rpm.TransactionSet()
  +	file = open(self.package)
  +	DICT['hdr'] = h = ts.hdrFromFdno(file.fileno())
  +	file.close()
  +	self.assertEqual(h['name'], "simple")
  +	self.assertEqual(h['epoch'], 1)
  +	self.assertEqual(h['version'], "1.0")
  +	self.assertEqual(h['release'], "1")
  +	self.assertEqual(h['disttag'], "foo")
  +	self.assertEqual(h['distepoch'], "2009.1")
  +
  +    def tearDown(self):
  +	rmtree(self.topdir)
  +
  +class Test_labelCompare(unittest.TestCase):
   
  -    def test_labelCompare(self):
  +    def setUp(self):
  +	self.labels = (tuple(DICT['hdr'].sprintf("%{epoch} %{version} %{release} \
%{distepoch}").split()), ("1", "2.1", "2", "2010.1"))  +
  +    def test_evr(self):
   	le = self.labels[0][0:3]
   	ge = self.labels[1][0:3]
   	self.assertEqual(rpm.labelCompare(le, ge), -1)
  @@ -22,7 +46,7 @@
   	self.assertEqual(rpm.labelCompare(ge, ge), 0)
   	self.assertEqual(rpm.labelCompare(ge, ge), 0)
   
  -    def test_labelCompareDISTEPOCH(self):
  +    def test_evrd(self):
   	le = self.labels[0]
   	ge = self.labels[1]
   	self.assertEqual(rpm.labelCompare(le, ge), -1)
  @@ -30,7 +54,7 @@
   	self.assertEqual(rpm.labelCompare(ge, ge), 0)
   	self.assertEqual(rpm.labelCompare(ge, ge), 0)
   
  -    def test_labelCompareNone(self):
  +    def test_None(self):
   	no = (None, None, None, None)
   	yes = self.labels[0]
   	# first without distepoch
  @@ -44,7 +68,11 @@
   
   def test_main():
       from test import test_support
  -    test_support.run_unittest(TestRPM)
  +    test_support.run_unittest(
  +	    Test_loadHeader,
  +	    Test_labelCompare)
  +    test_support.reap_children()
  +
   
   if __name__ == "__main__":
  -    unittest.main()
  +    test_main()
  @@ .
______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
CVS Sources Repository                                rpm-cvs@rpm5.org


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic