summaryrefslogtreecommitdiff
path: root/tests/test_argparse.py
diff options
context:
space:
mode:
authorTodd Leonhardt <todd.leonhardt@gmail.com>2018-03-21 17:40:41 -0400
committerTodd Leonhardt <todd.leonhardt@gmail.com>2018-03-21 17:40:41 -0400
commita1c72448cff540c9d6e610f3973a70cf495aadb6 (patch)
treeb0119c62cf1f480f1c6bbc7fcaffc9767f78db2d /tests/test_argparse.py
parent4cea62a8fb7f5da3cfd4ee32fde831f401c128dc (diff)
downloadcmd2-git-a1c72448cff540c9d6e610f3973a70cf495aadb6.tar.gz
Fix unit tests on macOS when gnureadline is installed
As similar try/except needed to be added to a couple unit test files to try to import gnureadline as readline and fallback to importing readline.
Diffstat (limited to 'tests/test_argparse.py')
-rw-r--r--tests/test_argparse.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/tests/test_argparse.py b/tests/test_argparse.py
index fb8836f3..ae3bde98 100644
--- a/tests/test_argparse.py
+++ b/tests/test_argparse.py
@@ -5,7 +5,6 @@ Cmd2 testing for argument parsing
import argparse
import functools
import pytest
-import readline
import sys
import cmd2
@@ -14,6 +13,18 @@ import six
from conftest import run_cmd, StdOut
+# Prefer statically linked gnureadline if available (for macOS compatibility due to issues with libedit)
+try:
+ import gnureadline as readline
+except ImportError:
+ # Try to import readline, but allow failure for convenience in Windows unit testing
+ # Note: If this actually fails, you should install readline on Linux or Mac or pyreadline on Windows
+ try:
+ # noinspection PyUnresolvedReferences
+ import readline
+ except ImportError:
+ pass
+
class ArgparseApp(cmd2.Cmd):
def __init__(self):