On Wed, Dec 16, 2020 at 09:21:09AM +0100, Landry Breuil wrote:
> On Tue, Dec 15, 2020 at 08:55:48PM -0600, Lucas Raab wrote:
> > Hello,
> > 
> > Following up on the call for testers on barman, I am wondering if there
> > are users of:
> > 
> > * databases/pgloader
> > * databases/skytools
> > * databases/py-pg_activity
> > * geo/osm2pgsql
> 
> if you look at your diff, psycopg2 is used when running tests.. that you
> havent even run ;)
> 
> waiting for server to start.... done
> server started
>   File "tests/regression-test.py", line 345
>     print "I am unable to connect to the database." + e
>           ^
> SyntaxError: Missing parentheses in call to 'print'. Did you mean
> print("I am unable to connect to the database." + e)?

with the attached patch, i can run the osm2pgsql tests of the old 0.96.0
version we have in-tree with py3.

Landry
$OpenBSD: patch-tests_regression-test_py,v 1.2 2018/10/28 14:49:25 landry Exp $

make that thing py3

Index: tests/regression-test.py
--- tests/regression-test.py.orig
+++ tests/regression-test.py
@@ -342,14 +342,14 @@ class BaseTestCase(unittest.TestCase):
             self.conn.autocommit = True
             self.cur = self.conn.cursor()
         except Exception as e:
-            print "I am unable to connect to the database." + e
+            print("I am unable to connect to the database." + e)
 
     def dbClose(self):
         self.cur.close()
         self.conn.close()
 
     def executeStatements(self, seq):
-        print "*********************************"
+        print ("*********************************")
         self.dbConnect()
         try:
             for i in seq:
@@ -418,8 +418,8 @@ class BasicNonSlimTestCase(BaseNonSlimTestCase):
         self.setUpGeneric(self.parameters, full_import_file)
 
     def runTest(self):
-        print "****************************************"
-        print "Running initial import for " + self.name
+        print ("****************************************")
+        print ("Running initial import for " + self.name)
         self.executeStatements(self.initialStatements)
 
 
@@ -437,10 +437,10 @@ class BasicSlimTestCase(BaseSlimTestCase):
 
 
     def runTest(self):
-        print "****************************************"
-        print "Running initial import for " + self.name
+        print ("****************************************")
+        print ("Running initial import for " + self.name)
         self.executeStatements(self.initialStatements)
-        print "Running diff-import for " + self.name
+        print ("Running diff-import for " + self.name)
         self.updateGeneric(self.parameters, diff_import_file)
         self.executeStatements(self.postDiffStatements)
 
@@ -458,10 +458,10 @@ class MultipolygonSlimTestCase(BaseSlimTestCase):
 
 
     def runTest(self):
-        print "****************************************"
-        print "Running initial import for " + self.name
+        print ("****************************************")
+        print ("Running initial import for " + self.name)
         self.executeStatements(self.initialStatements)
-        print "Running diff-import for " + self.name
+        print ("Running diff-import for " + self.name)
         self.updateGeneric(self.parameters, diff_multipoly_import_file)
         self.executeStatements(self.postDiffStatements)
 
@@ -480,10 +480,10 @@ class BasicGazetteerTestCase(BaseGazetteerTestCase):
 
 
     def runTest(self):
-        print "****************************************"
-        print "Running initial import in gazetteer mode for " + self.name
+        print ("****************************************")
+        print ("Running initial import in gazetteer mode for " + self.name)
         self.executeStatements(self.initialStatements)
-        print "Running diff-import in gazetteer mode for " + self.name
+        print ("Running diff-import in gazetteer mode for " + self.name)
         self.updateGeneric(self.parameters, diff_import_file)
         self.executeStatements(self.postDiffStatements)
 
@@ -494,7 +494,7 @@ def findContribSql(filename):
 
     # Try to get base dir for postgres contrib
     try:
-        postgis_base_dir = os.popen('pg_config | grep -m 1 "^INCLUDEDIR 
="').read().strip().split(' ')[2].split('/include')[0]
+        postgis_base_dir = os.popen('pg_config | grep "^INCLUDEDIR =" |head 
-n1').read().strip().split(' ')[2].split('/include')[0]
     except:
         postgis_base_dir = '/usr'
 
@@ -508,26 +508,26 @@ def findContribSql(filename):
 #****************************************************************
 #****************************************************************
 def setupDB():
-    print "Setting up test database"
+    print ("Setting up test database")
     try:
         gen_conn=psycopg2.connect("dbname='template1'")
         gen_conn.autocommit = True
     except Exception as e:
-        print "I am unable to connect to the database."
+        print ("I am unable to connect to the database.")
         exit(1)
 
     try:
         gen_cur = gen_conn.cursor()
     except Exception as e:
         gen_conn.close()
-        print "I am unable to connect to the database."
+        print ("I am unable to connect to the database.")
         exit(1)
 
     try:
         gen_cur.execute("""DROP DATABASE IF EXISTS \"osm2pgsql-test\"""")
         gen_cur.execute("""CREATE DATABASE \"osm2pgsql-test\" WITH ENCODING 
'UTF8'""")
     except Exception as e:
-        print "Failed to create osm2pgsql-test db" + e.pgerror
+        print ("Failed to create osm2pgsql-test db" + e.pgerror)
         exit(1);
     finally:
         gen_cur.close()
@@ -537,13 +537,13 @@ def setupDB():
         test_conn=psycopg2.connect("dbname='osm2pgsql-test'")
         test_conn.autocommit = True
     except Exception as e:
-        print "I am unable to connect to the database." + e
+        print ("I am unable to connect to the database." + e)
         exit(1)
 
     try:
         test_cur = test_conn.cursor()
     except Exception as e:
-        print "I am unable to connect to the database." + e
+        print ("I am unable to connect to the database." + e)
         gen_conn.close()
         exit(1)
 
@@ -554,17 +554,20 @@ def setupDB():
             global created_tablespace
             created_tablespace = 0
 
+            subprocess.call(["/bin/rm", "-rf", "/tmp/psql-tablespace"])
+            os.makedirs("/tmp/psql-tablespace")
+            test_cur.execute("""CREATE TABLESPACE tablespacetest LOCATION 
'/tmp/psql-tablespace'""")
             test_cur.execute("""SELECT spcname FROM pg_tablespace WHERE 
spcname = 'tablespacetest'""")
             if test_cur.fetchone():
-                print "We already have a tablespace, can use that"
+                print ("We already have a tablespace, can use that")
             else:
-                print "The test needs a temporary tablespace to run in, but it 
does not exist. Please create the temporary tablespace. On Linux, you can do 
this by running:"
-                print "  sudo mkdir -p /tmp/psql-tablespace"
-                print "  sudo /bin/chown postgres.postgres 
/tmp/psql-tablespace"
-                print "  psql -c \"CREATE TABLESPACE tablespacetest LOCATION 
'/tmp/psql-tablespace'\" postgres"
+                print ("The test needs a temporary tablespace to run in, but 
it does not exist. Please create the temporary tablespace. On Linux, you can do 
this by running:")
+                print ("  sudo mkdir -p /tmp/psql-tablespace")
+                print ("  sudo /bin/chown postgres.postgres 
/tmp/psql-tablespace")
+                print ("  psql -c \"CREATE TABLESPACE tablespacetest LOCATION 
'/tmp/psql-tablespace'\" postgres")
                 exit(77)
         except Exception as e:
-            print "Failed to create directory for tablespace" + str(e)
+            print ("Failed to create directory for tablespace" + str(e))
 
         # Check for postgis
         try:
@@ -593,13 +596,13 @@ def setupDB():
         test_conn.close()
 
 def tearDownDB():
-    print "Cleaning up test database"
+    print ("Cleaning up test database")
     try:
         gen_conn=psycopg2.connect("dbname='template1'")
         gen_conn.autocommit = True
         gen_cur = gen_conn.cursor()
     except Exception as e:
-        print "I am unable to connect to the database."
+        print ("I am unable to connect to the database.")
         exit(1)
 
     try:
@@ -607,13 +610,13 @@ def tearDownDB():
         if (created_tablespace == 1):
             gen_cur.execute("""DROP TABLESPACE IF EXISTS \"tablespacetest\"""")
     except Exception as e:
-        print "Failed to clean up osm2pgsql-test db" + e.pgerror
+        print ("Failed to clean up osm2pgsql-test db" + e.pgerror)
         exit(1);
 
     gen_cur.close()
     gen_conn.close()
     if (created_tablespace == 1):
-        returncode = subprocess.call(["/usr/bin/sudo", "/bin/rmdir", 
"/tmp/psql-tablespace"])
+        returncode = subprocess.call(["/bin/rm", "-rf", 
"/tmp/psql-tablespace"])
 
 
 if __name__ == "__main__":
@@ -646,8 +649,8 @@ finally:
     tearDownDB()
 
 if success:
-    print "All tests passed :-)"
+    print ("All tests passed :-)")
     exit(0)
 else:
-    print "Some tests failed :-("
+    print ("Some tests failed :-(")
     exit(1)

Reply via email to