Ejemplo n.º 1
0
 def test_ensure_file_path(self):
     self.assertEqual(ensure_path_sep("demo\\test.yml"),
                      os.sep.join(["demo", "test.yml"]))
     self.assertEqual(
         ensure_path_sep(os.path.join(os.getcwd(), "demo\\test.yml")),
         os.path.join(os.getcwd(), os.sep.join(["demo", "test.yml"])),
     )
     self.assertEqual(ensure_path_sep("demo/test.yml"),
                      os.sep.join(["demo", "test.yml"]))
     self.assertEqual(
         ensure_path_sep(os.path.join(os.getcwd(), "demo/test.yml")),
         os.path.join(os.getcwd(), os.sep.join(["demo", "test.yml"])),
     )
Ejemplo n.º 2
0
def __ensure_absolute(path: Text) -> Text:
    logger.info(f"[__ensure_absolute] in path={path}")
    if path.startswith("./"):
        # Linux/Darwin, hrun ./test.yml
        path = path[len("./"):]
    elif path.startswith(".\\"):
        # Windows, hrun .\\test.yml
        path = path[len(".\\"):]

    logger.debug(f"[__ensure_absolute] befor ensure_path_sep, path={path}")
    path = ensure_path_sep(path)
    project_meta = load_project_meta(path)
    logger.debug(f"[__ensure_absolute] path={path}")
    logger.debug(f"[__ensure_absolute] project_meta={project_meta}")
    logger.debug(f"[__ensure_absolute] type project_meta={type(project_meta)}")

    if os.path.isabs(path):
        absolute_path = path
    else:
        absolute_path = os.path.join(project_meta.RootDir, path)

    logger.debug(f"[__ensure_absolute] absolute_path={absolute_path}")
    if not os.path.isfile(absolute_path):
        logger.error(f"Invalid testcase file path: {absolute_path}")
        move_pytest_files_to_target(project_meta.RootDir)
        sys.exit(1)

    return absolute_path
Ejemplo n.º 3
0
def __ensure_absolute(path: Text) -> Text:
    path = ensure_path_sep(path)
    project_meta = load_project_meta(path)

    if os.path.isabs(path):
        absolute_path = path
    else:
        absolute_path = os.path.join(project_meta.RootDir, path)

    if not os.path.isfile(absolute_path):
        raise exceptions.ParamsError(
            f"Invalid testcase file path: {absolute_path}")

    return absolute_path
Ejemplo n.º 4
0
def ensure_file_path(path: Text) -> Text:

    if not path or not path.endswith(".har"):
        logger.error("HAR file not specified.")
        sys.exit(1)

    path = ensure_path_sep(path)
    if not os.path.isfile(path):
        logger.error(f"HAR file not exists: {path}")
        sys.exit(1)

    if not os.path.isabs(path):
        path = os.path.join(os.getcwd(), path)

    return path
Ejemplo n.º 5
0
def main_make(tests_paths: List[Text]) -> List[Text]:
    if not tests_paths:
        return []

    for tests_path in tests_paths:
        tests_path = ensure_path_sep(tests_path)
        if not os.path.isabs(tests_path):
            tests_path = os.path.join(os.getcwd(), tests_path)

        try:
            __make(tests_path)
        except exceptions.MyBaseError as ex:
            logger.error(ex)
            sys.exit(1)

    # format pytest files
    pytest_files_format_list = pytest_files_made_cache_mapping.keys()
    format_pytest_with_black(*pytest_files_format_list)

    return list(pytest_files_run_set)
Ejemplo n.º 6
0
def __ensure_absolute(path: Text) -> Text:
    if path.startswith("./"):
        # Linux/Darwin, hrun ./test.yml
        path = path[len("./"):]
    elif path.startswith(".\\"):
        # Windows, hrun .\\test.yml
        path = path[len(".\\"):]

    path = ensure_path_sep(path)
    project_meta = load_project_meta(path)

    if os.path.isabs(path):
        absolute_path = path
    else:
        absolute_path = os.path.join(project_meta.RootDir, path)

    if not os.path.isfile(absolute_path):
        logger.error(f"Invalid testcase file path: {absolute_path}")
        sys.exit(1)

    return absolute_path
Ejemplo n.º 7
0
def main_har2case(args):
    har_source_file = args.har_source_file
    if not har_source_file or not har_source_file.endswith(".har"):
        logger.error("HAR file not specified.")
        sys.exit(1)

    har_source_file = ensure_path_sep(har_source_file)
    if not os.path.isfile(har_source_file):
        logger.error(f"HAR file not exists: {har_source_file}")
        sys.exit(1)

    if args.to_yaml:
        output_file_type = "YAML"
    elif args.to_json:
        output_file_type = "JSON"
    else:
        output_file_type = "pytest"

    capture_message(f"har2case {output_file_type}")
    HarParser(har_source_file, args.filter,
              args.exclude).gen_testcase(output_file_type)

    return 0