diff --git a/data_migrator/transform.py b/data_migrator/transform.py index 4b2555f9..71c35b29 100644 --- a/data_migrator/transform.py +++ b/data_migrator/transform.py @@ -9,7 +9,6 @@ from data_migrator.exceptions import DataException, ValidationException from data_migrator.utils import configure_logging from data_migrator.utils import configure_parser, default_reader -from data_migrator.utils import get_version from data_migrator.emitters import MySQLEmitter class Transformer(object): @@ -21,7 +20,6 @@ class Transformer(object): >>> t = transform.Transformer(models=[Model]) >>> t.process() - ''' def __init__(self, models=None, reader=None, argparser=None, outdir=None, emitter=MySQLEmitter): ''' diff --git a/data_migrator/utils/__init__.py b/data_migrator/utils/__init__.py index eb3e5988..fcad7220 100644 --- a/data_migrator/utils/__init__.py +++ b/data_migrator/utils/__init__.py @@ -5,11 +5,9 @@ from .reader import default_reader from .log import configure_logging, default_logger from .argparser import configure_parser, default_parser -from .version import get_version, get_docs_version, get_development_status __all__ = [ 'sql_escape', 'configure_logging', 'default_logger', 'configure_parser', 'default_parser', - 'get_version', 'get_docs_version', 'get_development_status' ] diff --git a/data_migrator/utils/argparser.py b/data_migrator/utils/argparser.py index d5a1e52f..5c558873 100644 --- a/data_migrator/utils/argparser.py +++ b/data_migrator/utils/argparser.py @@ -1,6 +1,6 @@ #!/usr/bin/python # -*- coding: UTF-8 -*- - +import sys import argparse _PARSER = None @@ -8,14 +8,15 @@ def default_parser(): return _PARSER -def configure_parser(description=None): +def configure_parser(args=None, description=None): global _PARSER if not _PARSER: description = description or 'Basic Transformer parser' + args = args or sys.argv[1:] _PARSER = argparse.ArgumentParser(description=description) _PARSER.add_argument('-o', '--outdir', default='results', help='output directory') _PARSER.add_argument('-i', '--input', default='', help='input file') _PARSER.add_argument('--debug', action='store_true', help='enter debug mode') _PARSER.add_argument('-q', '--quiet', action='store_true', help='quiet mode, no output') _PARSER.add_argument('-p', '--rows', default=0, type=int, help='input rows to print') - return _PARSER.parse_args() + return _PARSER.parse_args(args) diff --git a/test/test_utils.py b/test/test_utils.py index e28ce6b8..e8660212 100644 --- a/test/test_utils.py +++ b/test/test_utils.py @@ -22,5 +22,13 @@ def test_sql_escape(self): for i,o in v: self.assertEqual(utils.sql_escape(i), o) + def test_argparse(self): + '''argparse tester''' + in_args = ['-i', 'hello', '--outdir', 'world'] + args = utils.configure_parser(in_args) + self.assertEquals(args.input, 'hello') + self.assertEquals(args.outdir, 'world') + + if __name__ == '__main__': unittest.main()