def test_wrong_type_modify(self): with open("metric.unknown", "w+") as fd: fd.write("unknown") fd.flush() ret = main(["run", "-m", "metric.unknown"]) self.assertEqual(ret, 0) with MockLoggerHandlers(logger.logger): reset_logger_error_output() ret = main( ["metrics", "modify", "metric.unknown", "-t", "unknown"] ) self.assertEqual(ret, 1) self.assertIn( "failed to modify metric file settings - metric type " "'unknown' is not supported, must be one of " "[raw, json, csv, tsv, hcsv, htsv]", logger.logger.handlers[1].stream.getvalue(), ) ret = main(["metrics", "modify", "metric.unknown", "-t", "CSV"]) self.assertEqual(ret, 0) reset_logger_standard_output() ret = main(["metrics", "show", "metric.unknown"]) self.assertEqual(ret, 0) self.assertIn( "\tmetric.unknown: unknown", logger.logger.handlers[0].stream.getvalue(), )
def setUp(self): logger.logger.handlers = [ logger.logging.StreamHandler(), logger.logging.StreamHandler(), ] reset_logger_standard_output() reset_logger_error_output() logger.set_default_level() self.consoleColorRemover = ConsoleFontColorsRemover() self.consoleColorRemover.__enter__()
def test(self): ret = main(["run", "-o", self.FOO, "--no-exec"]) self.assertEqual(ret, 0) with MockLoggerHandlers(logger), ConsoleFontColorsRemover(): reset_logger_error_output() ret = main(["tag", "add", "v1", "foo.dvc"]) self.assertEqual(ret, 0) self.assertEqual( "Warning: missing checksum info for 'foo'\n", logger.handlers[1].stream.getvalue(), )
def test(self): ret = main(["add", self.FOO]) self.assertEqual(ret, 0) with MockLoggerHandlers(logger), ConsoleFontColorsRemover(): reset_logger_error_output() ret = main(["tag", "remove", "v1", "foo.dvc"]) self.assertEqual(ret, 0) self.assertEqual( "Warning: tag 'v1' not found for 'foo'\n", logger.handlers[1].stream.getvalue(), )
def _test(self, imp_urlparse_patch): with MockLoggerHandlers(logger.logger): reset_logger_error_output() page_address = "http://somesite.com/file_name" def dvc_exception(*args, **kwargs): raise DvcException("message") imp_urlparse_patch.side_effect = dvc_exception main(["import", page_address]) self.assertIn( "Error: failed to import " "http://somesite.com/file_name. You could also try " "downloading it manually and adding it with `dvc add` " "command.", logger.logger.handlers[1].stream.getvalue(), )
def test(self): with MockLoggerHandlers(logger), ConsoleFontColorsRemover(): reset_logger_error_output() ret = main(["add", self.FOO]) self.assertEqual(0, ret) foo_stage = os.path.relpath(self.FOO + Stage.STAGE_FILE_SUFFIX) # corrupt stage file with open(foo_stage, "a+") as file: file.write("this will break yaml file structure") ret = main(["add", self.BAR]) self.assertEqual(1, ret) self.assertIn( "unable to read stage file: {} " "YAML file structure is corrupted".format(foo_stage), logger.handlers[1].stream.getvalue(), )
def test(self): with ConsoleFontColorsRemover(), MockLoggerHandlers(logger): reset_logger_error_output() main(["push"]) self.stderr_contains_message() reset_logger_error_output() main(["pull"]) self.stderr_contains_message() reset_logger_error_output() main(["status", "-c"]) self.stderr_contains_message()