Skip to content

Commit

Permalink
Added tests for DeletionLog
Browse files Browse the repository at this point in the history
  • Loading branch information
raphaelm committed Apr 11, 2016
1 parent d599f02 commit 4c83dd4
Showing 1 changed file with 16 additions and 39 deletions.
55 changes: 16 additions & 39 deletions functional_tests/test_log.py
@@ -1,46 +1,23 @@
import tempfile

from cockatiel.queue import FSQueue
from cockatiel.dellog import DeletionLog


def test_queue_order():
with tempfile.TemporaryDirectory() as qdir:
queue = FSQueue(basedir=qdir, subdir='foo')
queue.put({'test': 1})
queue.put({'test': 2})
queue.put({'test': 3})
assert len(queue) == 3
assert queue.get()[1]['test'] == 1
assert queue.get()[1]['test'] == 2
assert queue.get()[1]['test'] == 3
assert queue.get() is None
def test_log_operations():
with tempfile.NamedTemporaryFile() as f:
log = DeletionLog(f.name)
log.put('foo')
log.put('bar')
assert 'foo' in log
assert 'bar' in log
assert 'baz' not in log


def test_queue_delete():
with tempfile.TemporaryDirectory() as qdir:
queue = FSQueue(basedir=qdir, subdir='foo')
queue.put({'test': 1})
queue.put({'test': 2})
assert len(queue) == 2
oid, obj = queue.get(delete=False)
assert obj['test'] == 1
assert queue.get(delete=False)[1]['test'] == 1
queue.delete(oid)
assert queue.get(delete=False)[1]['test'] == 2
def test_log_persistence():
with tempfile.NamedTemporaryFile() as f:
log = DeletionLog(f.name)
log.put('foo')
assert 'foo' in log


def test_queue_prefixes():
with tempfile.TemporaryDirectory() as qdir:
queue = FSQueue(basedir=qdir, subdir='abc')
queue2 = FSQueue(basedir=qdir, subdir='def')
queue.put({'test': 1})
queue.put({'test': 2})
queue.put({'test': 3})
queue2.put({'test': 4})
assert len(queue) == 3
assert queue2.get()[1]['test'] == 4
assert queue2.get() is None
assert queue.get()[1]['test'] == 1
assert queue.get()[1]['test'] == 2
assert queue.get()[1]['test'] == 3
assert queue.get() is None
log2 = DeletionLog(f.name)
assert 'foo' in log2

0 comments on commit 4c83dd4

Please sign in to comment.