]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/pybind/mgr/snap_schedule/tests/conftest.py
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / pybind / mgr / snap_schedule / tests / conftest.py
diff --git a/ceph/src/pybind/mgr/snap_schedule/tests/conftest.py b/ceph/src/pybind/mgr/snap_schedule/tests/conftest.py
new file mode 100644 (file)
index 0000000..35255b8
--- /dev/null
@@ -0,0 +1,34 @@
+import pytest
+import sqlite3
+from ..fs.schedule import Schedule
+
+
+# simple_schedule fixture returns schedules without any timing arguments
+# the tuple values correspong to ctor args for Schedule
+_simple_schedules = [
+    ('/foo', '6h', 'fs_name', '/foo'),
+    ('/foo', '24h', 'fs_name', '/foo'),
+    ('/bar', '1d', 'fs_name', '/bar'),
+    ('/fnord', '1w', 'fs_name', '/fnord'),
+]
+
+
+@pytest.fixture(params=_simple_schedules)
+def simple_schedule(request):
+    return Schedule(*request.param)
+
+
+@pytest.fixture
+def simple_schedules():
+    return [Schedule(*s) for s in _simple_schedules]
+
+
+@pytest.fixture
+def db():
+    db = sqlite3.connect(':memory:',
+                         check_same_thread=False)
+    with db:
+        db.row_factory = sqlite3.Row
+        db.execute("PRAGMA FOREIGN_KEYS = 1")
+        db.executescript(Schedule.CREATE_TABLES)
+    return db