Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 2e2a8b8

Browse filesBrowse files
committed
[Issue #360] add test coverage
1 parent 4a7db4c commit 2e2a8b8
Copy full SHA for 2e2a8b8

File tree

Expand file treeCollapse file tree

1 file changed

+62
-2
lines changed
Filter options
Expand file treeCollapse file tree

1 file changed

+62
-2
lines changed

‎tests/exclude.py

Copy file name to clipboardExpand all lines: tests/exclude.py
+62-2Lines changed: 62 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -181,8 +181,7 @@ def test_exclude_unlogged_tables_1(self):
181181

182182
self.backup_node(
183183
backup_dir, 'node', node, backup_type='delta',
184-
options=['--stream']
185-
)
184+
options=['--stream'])
186185

187186
pgdata = self.pgdata_content(node.data_dir)
188187

@@ -201,6 +200,67 @@ def test_exclude_unlogged_tables_1(self):
201200
# Clean after yourself
202201
self.del_test_dir(module_name, fname)
203202

203+
# @unittest.skip("skip")
204+
def test_exclude_unlogged_tables_2(self):
205+
"""
206+
make node, create unlogged, take FULL, check
207+
that unlogged was not backed up
208+
"""
209+
fname = self.id().split('.')[3]
210+
backup_dir = os.path.join(self.tmp_path, module_name, fname, 'backup')
211+
node = self.make_simple_node(
212+
base_dir=os.path.join(module_name, fname, 'node'),
213+
set_replication=True,
214+
initdb_params=['--data-checksums'],
215+
pg_options={
216+
"shared_buffers": "10MB"})
217+
218+
self.init_pb(backup_dir)
219+
self.add_instance(backup_dir, 'node', node)
220+
self.set_archiving(backup_dir, 'node', node)
221+
node.slow_start()
222+
223+
for backup_type in ['full', 'delta', 'page']:
224+
225+
if backup_type == 'full':
226+
node.safe_psql(
227+
'postgres',
228+
'create unlogged table test as select generate_series(0,20050000)::text')
229+
else:
230+
node.safe_psql(
231+
'postgres',
232+
'insert into test select generate_series(0,20050000)::text')
233+
234+
rel_path = node.safe_psql(
235+
'postgres',
236+
"select pg_relation_filepath('test')").decode('utf-8').rstrip()
237+
238+
backup_id = self.backup_node(
239+
backup_dir, 'node', node,
240+
backup_type=backup_type, options=['--stream'])
241+
242+
filelist = self.get_backup_filelist(
243+
backup_dir, 'node', backup_id)
244+
245+
self.assertNotIn(
246+
rel_path, filelist,
247+
"Unlogged table was not excluded")
248+
249+
self.assertNotIn(
250+
rel_path + '.1', filelist,
251+
"Unlogged table was not excluded")
252+
253+
self.assertNotIn(
254+
rel_path + '.2', filelist,
255+
"Unlogged table was not excluded")
256+
257+
self.assertNotIn(
258+
rel_path + '.3', filelist,
259+
"Unlogged table was not excluded")
260+
261+
# Clean after yourself
262+
self.del_test_dir(module_name, fname)
263+
204264
# @unittest.skip("skip")
205265
def test_exclude_log_dir(self):
206266
"""

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.