summaryrefslogtreecommitdiff
path: root/alembic/testing/plugin
diff options
context:
space:
mode:
authormike bayer <mike_mp@zzzcomputing.com>2017-01-09 14:23:22 -0500
committerGerrit Code Review <gerrit@awstats.zzzcomputing.com>2017-01-09 14:23:22 -0500
commitc5ac1cddd637b4ed69439fe20ba8406634a91f76 (patch)
tree1ddc9b02a28a3bd23670262fd191c2629a076ee9 /alembic/testing/plugin
parentba919226d346f234284cb1f2bd9def2ed49e663c (diff)
parent61a551234966c01f387e5f7865cb19da079f3f4d (diff)
downloadalembic-c5ac1cddd637b4ed69439fe20ba8406634a91f76.tar.gz
Merge "Get test compat for oracle"
Diffstat (limited to 'alembic/testing/plugin')
-rw-r--r--alembic/testing/plugin/plugin_base.py6
-rw-r--r--alembic/testing/plugin/pytestplugin.py10
2 files changed, 14 insertions, 2 deletions
diff --git a/alembic/testing/plugin/plugin_base.py b/alembic/testing/plugin/plugin_base.py
index fa83288..d742a2f 100644
--- a/alembic/testing/plugin/plugin_base.py
+++ b/alembic/testing/plugin/plugin_base.py
@@ -22,7 +22,8 @@ try:
# honor it unless nose is imported too...
from nose import SkipTest
except ImportError:
- from _pytest.runner import Skipped as SkipTest
+ from pytest import skip
+ SkipTest = skip.Exception
import sys
import re
@@ -75,6 +76,9 @@ def setup_options(make_option):
dest="low_connections",
help="Use a low number of distinct connections - "
"i.e. for Oracle TNS")
+ make_option("--write-idents", type="string", dest="write_idents",
+ help="write out generated follower idents to <file>, "
+ "when -n<num> is used")
make_option("--reversetop", action="store_true",
dest="reversetop", default=False,
help="Use a random-ordering set implementation in the ORM "
diff --git a/alembic/testing/plugin/pytestplugin.py b/alembic/testing/plugin/pytestplugin.py
index 9a729b6..a55affe 100644
--- a/alembic/testing/plugin/pytestplugin.py
+++ b/alembic/testing/plugin/pytestplugin.py
@@ -17,7 +17,7 @@ import pytest
import argparse
import inspect
import collections
-import itertools
+import os
try:
import xdist # noqa
@@ -50,6 +50,14 @@ def pytest_configure(config):
plugin_base.configure_follower(
config.slaveinput["follower_ident"]
)
+ if config.option.write_idents:
+ with open(config.option.write_idents, "a") as file_:
+ file_.write(config.slaveinput["follower_ident"] + "\n")
+ else:
+ if config.option.write_idents and \
+ os.path.exists(config.option.write_idents):
+ os.remove(config.option.write_idents)
+
plugin_base.pre_begin(config.option)