Skip to content

Commit 3283aed

Browse files
author
Artur Zakirov
committed
autopep8 runned
1 parent 5d44d4d commit 3283aed

File tree

1 file changed

+101
-98
lines changed

1 file changed

+101
-98
lines changed

tests/pglist_tests.py

Lines changed: 101 additions & 98 deletions
Original file line numberDiff line numberDiff line change
@@ -11,108 +11,111 @@
1111
import testgres as tg
1212

1313
if sys.version_info[0] < 3:
14-
import urllib as request
14+
import urllib as request
1515
else:
16-
import urllib.request as request
16+
import urllib.request as request
1717

1818
from os.path import expanduser
1919

20+
2021
class PglistTests(unittest.TestCase):
21-
def setUp(self):
22-
self.node = tg.get_new_node("pglist_select")
23-
try:
24-
self.node.init()
25-
self.node.append_conf("postgresql.conf",
26-
"shared_buffers='4GB'\n"
27-
"maintenance_work_mem='2GB'\n"
28-
"max_wal_size='2GB'\n"
29-
"work_mem='50MB'")
30-
self.node.start()
31-
32-
self.init_pglist_data(self.node)
33-
except Exception as e:
34-
self.printlog(self.node.logs_dir + "/postgresql.log")
35-
raise e
36-
37-
def tearDown(self):
38-
tg.stop_all()
39-
40-
def init_pglist_data(self, node):
41-
# Check if 'pglist' base exists
42-
base_exists = False
43-
bases = node.execute("postgres", "SELECT datname FROM pg_database")
44-
for base in bases:
45-
if base[0].lower() == "pglist":
46-
base_exists = True
47-
break
48-
49-
if base_exists:
50-
return
51-
52-
# Check if 'pglist' dump exists
53-
home = expanduser("~")
54-
pglist_dump = os.path.join(home, "pglist-28-04-16.dump")
55-
if not os.path.isfile(pglist_dump):
56-
pglist_dumpgz = pglist_dump + ".gz"
57-
if not os.path.isfile(pglist_dumpgz):
58-
print("Downloading: %s" % pglist_dumpgz)
59-
request.urlretrieve(
60-
"http://www.sai.msu.su/~megera/postgres/files/pglist-28-04-16.dump.gz",
61-
pglist_dumpgz)
62-
63-
print("Decompressing: %s" % pglist_dumpgz)
64-
gz = gzip.open(pglist_dumpgz, 'rb')
65-
with open(pglist_dump, 'wb') as f:
66-
f.write(gz.read())
67-
68-
os.remove(pglist_dumpgz)
69-
70-
# Restore dump file
71-
print("Restoring 'pglist'")
72-
node.safe_psql("postgres", "CREATE DATABASE pglist")
73-
node.psql("pglist", filename=pglist_dump)
74-
75-
node.safe_psql("pglist", "CREATE EXTENSION rum")
76-
77-
def printlog(self, logfile):
78-
with open(logfile, 'r') as log:
79-
for line in log.readlines():
80-
print(line)
81-
82-
def test_order_by(self):
83-
"""Tests SELECT constructions to 'pglist' base"""
84-
try:
85-
print("Creating index 'rumidx_orderby_sent'")
86-
87-
self.node.safe_psql(
88-
"pglist",
89-
"CREATE INDEX rumidx_orderby_sent ON pglist USING rum ("
90-
" fts rum_tsvector_timestamp_ops, sent) "
91-
" WITH (attach=sent, to=fts, order_by_attach=t)")
92-
93-
print("Running tests")
94-
95-
self.assertEqual(
96-
self.node.safe_psql(
97-
"pglist",
98-
"SELECT sent, subject "
99-
" FROM pglist "
100-
" WHERE fts @@ to_tsquery('english', 'backend <-> crushed') "
101-
" ORDER BY sent <=| '2016-01-01 00:01' LIMIT 5"
102-
),
103-
b'1999-06-02 11:52:46|Re: [HACKERS] PID of backend\n'
104-
)
105-
106-
self.assertEqual(
107-
self.node.safe_psql(
108-
"pglist",
109-
"SELECT count(*) FROM pglist WHERE fts @@ to_tsquery('english', 'tom & lane')"
110-
),
111-
b'222813\n'
112-
)
113-
except Exception as e:
114-
self.printlog(self.node.logs_dir + "/postgresql.log")
115-
raise e
22+
23+
def setUp(self):
24+
self.node = tg.get_new_node("pglist_select")
25+
try:
26+
self.node.init()
27+
self.node.append_conf("postgresql.conf",
28+
"shared_buffers='4GB'\n"
29+
"maintenance_work_mem='2GB'\n"
30+
"max_wal_size='2GB'\n"
31+
"work_mem='50MB'")
32+
self.node.start()
33+
34+
self.init_pglist_data(self.node)
35+
except Exception as e:
36+
self.printlog(self.node.logs_dir + "/postgresql.log")
37+
raise e
38+
39+
def tearDown(self):
40+
tg.stop_all()
41+
42+
def init_pglist_data(self, node):
43+
# Check if 'pglist' base exists
44+
base_exists = False
45+
bases = node.execute("postgres",
46+
"SELECT datname FROM pg_database WHERE datistemplate = false")
47+
for base in bases:
48+
if base[0].lower() == "pglist":
49+
base_exists = True
50+
break
51+
52+
if base_exists:
53+
return
54+
55+
# Check if 'pglist' dump exists
56+
home = expanduser("~")
57+
pglist_dump = os.path.join(home, "pglist-28-04-16.dump")
58+
if not os.path.isfile(pglist_dump):
59+
pglist_dumpgz = pglist_dump + ".gz"
60+
if not os.path.isfile(pglist_dumpgz):
61+
print("Downloading: %s" % pglist_dumpgz)
62+
request.urlretrieve(
63+
"http://www.sai.msu.su/~megera/postgres/files/pglist-28-04-16.dump.gz",
64+
pglist_dumpgz)
65+
66+
print("Decompressing: %s" % pglist_dumpgz)
67+
gz = gzip.open(pglist_dumpgz, 'rb')
68+
with open(pglist_dump, 'wb') as f:
69+
f.write(gz.read())
70+
71+
os.remove(pglist_dumpgz)
72+
73+
# Restore dump file
74+
print("Restoring 'pglist'")
75+
node.safe_psql("postgres", "CREATE DATABASE pglist")
76+
node.psql("pglist", filename=pglist_dump)
77+
78+
node.safe_psql("pglist", "CREATE EXTENSION rum")
79+
80+
def printlog(self, logfile):
81+
with open(logfile, 'r') as log:
82+
for line in log.readlines():
83+
print(line)
84+
85+
def test_order_by(self):
86+
"""Tests SELECT constructions to 'pglist' base"""
87+
try:
88+
print("Creating index 'rumidx_orderby_sent'")
89+
90+
self.node.safe_psql(
91+
"pglist",
92+
"CREATE INDEX rumidx_orderby_sent ON pglist USING rum ("
93+
" fts rum_tsvector_timestamp_ops, sent) "
94+
" WITH (attach=sent, to=fts, order_by_attach=t)")
95+
96+
print("Running tests")
97+
98+
self.assertEqual(
99+
self.node.safe_psql(
100+
"pglist",
101+
"SELECT sent, subject "
102+
" FROM pglist "
103+
" WHERE fts @@ to_tsquery('english', 'backend <-> crushed') "
104+
" ORDER BY sent <=| '2016-01-01 00:01' LIMIT 5"
105+
),
106+
b'1999-06-02 11:52:46|Re: [HACKERS] PID of backend\n'
107+
)
108+
109+
self.assertEqual(
110+
self.node.safe_psql(
111+
"pglist",
112+
"SELECT count(*) FROM pglist WHERE fts @@ to_tsquery('english', 'tom & lane')"
113+
),
114+
b'222813\n'
115+
)
116+
except Exception as e:
117+
self.printlog(self.node.logs_dir + "/postgresql.log")
118+
raise e
116119

117120
if __name__ == "__main__":
118-
unittest.main()
121+
unittest.main()

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy