def test_run(): with tempdir(): fn = modargs.function_for(dexy.commands, "dexy") args = modargs.determine_kwargs(fn) args['globals'] = [] os.mkdir(args['logsdir']) c = Controller(args) c.config = SIMPLE_PY_CONFIG c.process_config() assert c.members.has_key("simple.py|py") assert isinstance(c.members["simple.py|py"], Document)
def run_dexy_without_tempdir(config_dict, additional_args={}): if not hasattr(Document, 'filter_list'): Document.filter_list = dexy.introspect.filters() args = controller_args(additional_args) c = Controller(args) c.config = config_dict c.process_config() [doc.setup() for doc in c.docs] for doc in c.docs: yield(doc) c.persist()
def setup_controller(): controller = Controller() controller.artifacts_dir = 'artifacts' if not os.path.isdir(controller.artifacts_dir): os.mkdir(controller.artifacts_dir) controller.artifact_class = FileSystemJsonArtifact controller.allow_remote = True controller.config = { 'tests/data' : { "@simple.py|pyg" : { "contents" : "x = 5\nx^2" } } } controller.setup_and_run() return controller
def test_circular_dependencies(): with tempdir(): fn = modargs.function_for(dexy.commands, "dexy") args = modargs.determine_kwargs(fn) args['globals'] = [] os.mkdir(args['logsdir']) args['danger'] = True c = Controller(args) c.config = CIRCULAR_CONFIG with divert_stdout() as stdout: try: c.process_config() assert False except CycleError: assert True stdout_text = stdout.getvalue() assert "abc depends on ghi" in stdout_text assert "def depends on abc" in stdout_text assert "ghi depends on def" in stdout_text
def test_docs_with_no_filters(): with tempdir(): fn = modargs.function_for(dexy.commands, "dexy") args = modargs.determine_kwargs(fn) args['globals'] = [] os.mkdir(args['logsdir']) c = Controller(args) c.config = NO_FILTERS_CONFIG c.process_config() assert c.members.has_key("hello.txt") assert isinstance(c.members["hello.txt"], Document) assert sorted(c.batch_info().keys()) == [ "args", "config", "docs", "elapsed", "finish_time", "id", "start_time", "timing" ]
def run_dexy_without_tempdir(config_dict, additional_args={}): if not hasattr(Document, "filter_list"): Document.filter_list = dexy.introspect.filters() fn = modargs.function_for(dexy.commands, "dexy") args = modargs.determine_kwargs(fn) args.update(additional_args) if not os.path.exists(args["logsdir"]): os.mkdir(args["logsdir"]) if not os.path.exists(args["artifactsdir"]): os.mkdir(args["artifactsdir"]) c = Controller(args) c.config = config_dict c.process_config() [doc.setup() for doc in c.docs] for doc in c.docs: yield (doc) c.persist()