Ejemplo n.º 1
0
def test_add_sim_print_sim_and_delete_sim(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    db_id = command_line_tool("sim_db", [
        "add_sim", "--filename", "{0}/params_python_program.txt".format(
            common_test_helpers.get_test_dir())
    ],
                              print_ids_added=False)
    command_line_tool(
        "sim_db", "print --id {0} -v --no_headers --columns name test_param1 "
        "test_param2 test_param3 test_param4 test_param5 test_param6 "
        "test_param7 test_param8 test_param9 test_param10 test_param11 "
        "test_param12 test_param13".format(db_id).split())
    output_print_sim, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        ["delete_sim", "--id", str(db_id), "--no_checks"])
    command_line_tool("sim_db", "print -n 1 --no_headers --columns id".split())
    output_after_delete, err = capsys.readouterr()
    with capsys.disabled():
        print("\nTest add_sim, print_sim and delete_sim...")

    __assert_output_print_sim_after_add_sim(output_print_sim)

    # Test that the added simulation parameters are deleted
    assert (
        len(output_after_delete) == 0
        or output_after_delete.splitlines()[-1].strip() != "{0}".format(db_id))
Ejemplo n.º 2
0
def test_add_and_run(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    db_id = command_line_tool("sim_db", [
        "add_and_run", "--filename", "{0}/params_python_program.txt".format(
            common_test_helpers.get_test_dir())
    ],
                              print_ids_added=False)
    assert db_id != None
    output_program, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        "print_sim --id {0} -v --no_headers --columns name test_param1 "
        "test_param2 test_param3 test_param4 test_param5 test_param6 "
        "test_param7 test_param8 test_param9 test_param10 test_param11 "
        "test_param12 test_param13".format(db_id).split())
    output_print_sim_after_add_sim, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        "print_sim --id {0} -v --columns new_test_param1 new_test_param2 "
        "new_test_param3 new_test_param4 new_test_param5 new_test_param6 "
        "new_test_param7 new_test_param8 new_test_param9 new_test_param10 "
        "results_dir time_started used_walltime --no_headers".format(
            db_id).split())
    output_print_sim_after_run_sim, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        ["delete_sim", "--id", str(db_id), "--no_checks"])
    with capsys.disabled():
        print("\nTest add_and_run...")
    __assert_output_print_sim_after_add_sim(output_print_sim_after_add_sim)
    common_test_helpers.assert_output_python_program(output_program, db_id)
    common_test_helpers.assert_output_print_sim_after_run_sim(
        output_print_sim_after_run_sim, True)
Ejemplo n.º 3
0
def test_add_and_submit(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    settings_no_set, job_scheduler, n_cpus_per_node, memory_per_node = \
            __read_job_scheduler_settings()

    with capsys.disabled():
        print("\nTest add_and_submit...")
        for no_set in settings_no_set:
            print(
                "WARNING: In settings.txt '{0}' is NOT set, but must be to test "
                "add_and_submit.".format(no_set))

    if len(settings_no_set) == 0:
        db_id, job_script_name, job_id = command_line_tool(
            "sim_db", [
                "add_and_submit", "--filename",
                "{0}/params_python_program.txt".format(
                    common_test_helpers.get_test_dir()), "--n_nodes", "2",
                "--max_walltime", "03:34:00", "--do_not_submit_job_script"
            ],
            print_ids_added=False)
        command_line_tool("sim_db",
                          ["delete_sim", "--id",
                           str(db_id), "--no_checks"])
        job_script_file = open(job_script_name, 'r')
        lines = job_script_file.readlines()
        job_script_file.close()
        os.remove(job_script_name)
        __assert_lines_job_script(lines, job_scheduler, n_cpus_per_node,
                                  memory_per_node)
Ejemplo n.º 4
0
def test_extract_params(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    db_id = command_line_tool("sim_db", [
        "add_sim", "--filename", "{0}/params_python_program.txt".format(
            common_test_helpers.get_test_dir())
    ],
                              print_ids_added=False)
    command_line_tool("sim_db",
                      "extract_params --id {0}".format(db_id).split())
    output_extract_params, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        ["delete_sim", "--id", str(db_id), "--no_checks"])
    lines_extract_params = output_extract_params.split('\n')
    with capsys.disabled():
        print("\nTest extract_params...")
    assert "name (string): test_sim" == lines_extract_params[0]
    assert "test_param1 (int): 3" == lines_extract_params[6]
    assert "test_param2 (float): -5000000000.0" == lines_extract_params[8]
    assert "test_param3 (string): hei" == lines_extract_params[10]
    assert "test_param4 (bool): True" == lines_extract_params[12]
    assert "test_param5 (int array): [1, 2, 3]" == lines_extract_params[14]
    assert "test_param6 (float array): [1.5, 2.5, 3.5]" == lines_extract_params[
        16]
    assert "test_param7 (string array): [a, b, c]" == lines_extract_params[18]
    assert "test_param8 (bool array): [True, False, True]" == lines_extract_params[
        20]
    assert "test_param9 (int): 9" == lines_extract_params[22]
    assert "test_param10 (int): 11" == lines_extract_params[24]
Ejemplo n.º 5
0
def test_list_commands(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    command_line_tool("sim_db", ["list_commands"])
    output_list_commands, err = capsys.readouterr()
    with capsys.disabled():
        print("\nTest list_commands...")
    output_lines = output_list_commands.split('\n')
    assert output_lines[2] == "add_and_run"
    assert output_lines[3] == "add_and_submit"
    assert output_lines[4] == "add_column"
    assert output_lines[5] == "add_comment"
    assert output_lines[6] == "add_range / add_range_sim"
    assert output_lines[7] == "add / add_sim"
    assert output_lines[8] == "cd_res / cd_results_dir"
    assert output_lines[9] == "combine_dbs"
    assert output_lines[10] == "delete_empty_columns"
    assert output_lines[11] == "delete_results_dir"
    assert output_lines[12] == "delete / delete_sim"
    assert output_lines[13] == "duplicate_and_run"
    assert output_lines[14] == "ddr / duplicate_delete_and_run"
    assert output_lines[15] == "duplicate / duplicate_sim"
    assert output_lines[16] == "extract_params"
    assert output_lines[17] == "get"
    assert output_lines[18] == "init"
    assert output_lines[19] == "list_commands"
    assert output_lines[20] == "list_print_configs"
    assert output_lines[21] == "print / print_sim"
    assert output_lines[22] == "run_serial / run_serial_sims"
    assert output_lines[23] == "run / run_sim"
    assert output_lines[24] == "settings"
    assert output_lines[25] == "submit / submit_sim"
    assert output_lines[26] == "update / update_sim"
Ejemplo n.º 6
0
def test_delete_results_dir(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    with capsys.disabled():
        print("\nTest delete_results_dir...")
    for entry in os.listdir(common_test_helpers.get_test_dir() + '/results'):
        print(common_test_helpers.get_test_dir() + '/results/' + entry)
        assert not os.path.isdir(common_test_helpers.get_test_dir() +
                                 '/results/' + entry)
Ejemplo n.º 7
0
def test_combine_dbs(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    path_db_1 = common_test_helpers.get_test_dir() + "/sim1_test_comb.db"
    path_db_2 = common_test_helpers.get_test_dir() + "/sim2_test_comb.db"
    path_comb_db = common_test_helpers.get_test_dir() + "/new_comb_sim.db"
    if os.path.exists(path_comb_db):
        os.remove(path_comb_db)
    command_line_tool("sim_db",
                      ["combine_dbs", path_db_1, path_db_2, path_comb_db])
    comb_sim_db = helpers.connect_sim_db(path_comb_db)
    comb_sim_db_cursor = comb_sim_db.cursor()
    db_1 = helpers.connect_sim_db(path_db_1)
    db_1_cursor = db_1.cursor()
    db_2 = helpers.connect_sim_db(path_db_2)
    db_2_cursor = db_2.cursor()

    column_names_1, column_types_1 = helpers.get_db_column_names_and_types(
        db_1_cursor)
    column_names_2, column_types_2 = helpers.get_db_column_names_and_types(
        db_2_cursor)
    column_names_comb, column_types_comb = helpers.get_db_column_names_and_types( \
            comb_sim_db_cursor)

    old_run_commands = []
    db_1_cursor.execute("SELECT run_command FROM runs WHERE id=1;")
    old_run_commands.append(db_1_cursor.fetchall()[0][0])
    db_1_cursor.execute("SELECT run_command FROM runs WHERE id=2;")
    old_run_commands.append(db_1_cursor.fetchall()[0][0])
    db_2_cursor.execute("SELECT run_command FROM runs WHERE id=1;")
    old_run_commands.append(db_2_cursor.fetchall()[0][0])
    db_2_cursor.execute("SELECT run_command FROM runs WHERE id=2;")
    old_run_commands.append(db_2_cursor.fetchall()[0][0])

    new_run_commands = []
    comb_sim_db_cursor.execute("SELECT run_command FROM runs WHERE id=1;")
    new_run_commands.append(comb_sim_db_cursor.fetchall()[0][0])
    comb_sim_db_cursor.execute("SELECT run_command FROM runs WHERE id=2;")
    new_run_commands.append(comb_sim_db_cursor.fetchall()[0][0])
    comb_sim_db_cursor.execute("SELECT run_command FROM runs WHERE id=3;")
    new_run_commands.append(comb_sim_db_cursor.fetchall()[0][0])
    comb_sim_db_cursor.execute("SELECT run_command FROM runs WHERE id=4;")
    new_run_commands.append(comb_sim_db_cursor.fetchall()[0][0])

    with capsys.disabled():
        print("\nTest combine_dbs...")

    comb_sim_db.commit()
    comb_sim_db_cursor.close()
    comb_sim_db.close()
    os.remove(path_comb_db)

    for column_name in column_names_1:
        assert column_name in column_names_comb
    for column_name in column_names_2:
        assert column_name in column_names_comb
    for (old_command, new_command) in zip(old_run_commands, new_run_commands):
        assert old_command == new_command
Ejemplo n.º 8
0
def test_list_print_configs(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    command_line_tool("sim_db", ["list_print_configs"])
    output_list_commands, err = capsys.readouterr()
    with capsys.disabled():
        print("\nTest list_print_configs...")
    settings = helpers.Settings()
    for print_config, output in zip(settings.read('print_config'),
                                    output_list_commands.split('\n')):
        assert print_config == output
Ejemplo n.º 9
0
def test_python_multithreading(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    with capsys.disabled():
        print("\nTest python multithreading and processing...")
    path_script = os.path.join(common_test_helpers.get_test_dir(),
                               "multithreading_and_processing.py")
    output = subprocess.check_output(["python", path_script],
                                     universal_newlines=True)
    last_line = output.splitlines()[-1]
    assert last_line.strip() == "finished"
Ejemplo n.º 10
0
def test_init(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    command_line_tool(
        "sim_db",
        ["init", "--path", "{0}".format(common_test_helpers.get_test_dir())])
    with capsys.disabled():
        print("\nTest init...")

    assert os.path.isdir(common_test_helpers.get_test_dir() + '/.sim_db')
    assert os.path.isfile(common_test_helpers.get_test_dir() +
                          '/.sim_db/settings.txt')
    shutil.rmtree(common_test_helpers.get_test_dir() + '/.sim_db')
Ejemplo n.º 11
0
def test_add_column_and_delete_empty_columns(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    with capsys.disabled():
        print("\nTest add_column and delete_empty_columns...")
    command_line_tool("sim_db",
                      "add_column --column new_column --type 'TEXT'".split())
    db = helpers.connect_sim_db()
    db_cursor = db.cursor()
    column_names, column_types = helpers.get_db_column_names_and_types(
        db_cursor)
    assert "new_column" in column_names
    command_line_tool("sim_db", ["delete_empty_columns"])
    column_names, column_types = helpers.get_db_column_names_and_types(
        db_cursor)
    assert "new_column" not in column_names
Ejemplo n.º 12
0
def test_add_sim_with_alias_error(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    with pytest.raises(SystemExit) as pytest_wrapped_e:
        command_line_tool("sim_db", [
            "add_sim", "--filename", "{0}/params_alias_error.txt".format(
                common_test_helpers.get_test_dir())
        ],
                          print_ids_added=False)
    output_sim_add, err = capsys.readouterr()
    with capsys.disabled():
        print("\nTest that add_sim catches alias error...")
    assert pytest_wrapped_e.type == SystemExit
    assert (
        output_sim_add.splitlines()[0] == "ERROR: Alias name on line no. 0 "
        "in the parameter file MUST start and end with curly brackets.")
Ejemplo n.º 13
0
def test_add_range_sim(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    db_ids = command_line_tool(
        "sim_db",
        "add_range_sim --filename".split() + [
            "{0}/params_python_program.txt".format(
                common_test_helpers.get_test_dir())
        ] + "--columns test_param1 test_param2 --lin_steps 0 2 --exp_steps "
        "3 1 --end_steps 27 -4999999999 --n_steps 0 2".split(),
        print_ids_added=False)
    db_ids_string = ""
    for db_id in db_ids:
        db_ids_string = db_ids_string + " " + str(db_id)
    command_line_tool(
        "sim_db", "print_sim --id {0} -v --no_headers --columns "
        "test_param1 test_param2".format(db_ids_string).split())
    output_print_sim, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        ["delete_sim", "--id", str(db_id), "--no_checks"])
    command_line_tool("sim_db",
                      "print_sim -n 1 --no_headers --columns id".split())
    output_after_delete, err = capsys.readouterr()
    with capsys.disabled():
        print("\nTest add_range_sim...")
    test_param1_list, test_param2_list = output_print_sim.split('\n', 1)
    test_param1_list = test_param1_list.split()
    test_param2_list = test_param2_list.split()
    assert (test_param1_list[0] == "3" and test_param1_list[1] == "3"
            and test_param1_list[2] == "3")
    assert (test_param1_list[3] == "9" and test_param1_list[4] == "9"
            and test_param1_list[5] == "9")
    assert (test_param1_list[6] == "27" and test_param1_list[7] == "27"
            and test_param1_list[8] == "27")
    param2_start = -5000000000.0
    assert (test_param2_list[0] == str(param2_start)
            and test_param2_list[3] == str(param2_start)
            and test_param2_list[6] == str(param2_start))
    assert (test_param2_list[1] == str(param2_start + 2)
            and test_param2_list[4] == str(param2_start + 2)
            and test_param2_list[7] == str(param2_start + 2))
    assert (test_param2_list[2] == str(param2_start + 4)
            and test_param2_list[5] == str(param2_start + 4)
            and test_param2_list[8] == str(param2_start + 4))

    # Test that the added simulation parameters are deleted
    assert (len(output_after_delete) == 0
            or output_after_delete != "{0}".format(db_id))
Ejemplo n.º 14
0
def test_c_multithreading(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    with capsys.disabled():
        print("\nTest C multithreading and processing...")
    path_tests_dir = common_test_helpers.get_test_dir()
    path_sim_db_root = os.path.join(path_tests_dir, os.pardir)
    path_build = os.path.join(path_tests_dir, "build")
    path_c_mtap = os.path.join(os.path.join(path_tests_dir, "build"), "c_mtap")
    subprocess.call([
        "cmake", "-H{0}".format(path_sim_db_root), "-B{0}".format(path_build),
        "-DCMAKE_BUILD_TYPE=Debug"
    ])
    subprocess.call(["cmake", "--build", path_build, "--target", "c_mtap"])
    output = subprocess.check_output([path_c_mtap], universal_newlines=True)
    last_line = output.splitlines()[-1]
    assert last_line.strip() == "finished"
Ejemplo n.º 15
0
def test_run_serial_sims(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    id_1 = command_line_tool("sim_db", [
        "add_sim", "--filename",
        common_test_helpers.get_test_dir() + "/params_python_program.txt"
    ],
                             print_ids_added=False)
    id_2 = command_line_tool("sim_db", [
        "add_sim", "--filename",
        common_test_helpers.get_test_dir() + "/params_c_program.txt"
    ],
                             print_ids_added=False)
    id_3 = command_line_tool("sim_db", [
        "add_sim", "--filename",
        common_test_helpers.get_test_dir() + "/params_cpp_program.txt"
    ],
                             print_ids_added=False)
    command_line_tool(
        "sim_db",
        ["run_serial_sims", "--id",
         str(id_1), str(id_2),
         str(id_3)])
    output_serial_run, err = capsys.readouterr()
    command_line_tool(
        "sim_db", "print_sim --id {0} {1} {2} -v --no_headers --columns name "
        "test_param1 ".format(id_1, id_2, id_3).split())
    output_print_sim, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        ["delete_sim", "--id",
         str(id_1),
         str(id_2),
         str(id_3), "--no_checks"])
    command_line_tool("sim_db",
                      "print_sim -n 1 --no_headers --columns id".split())
    output_after_delete, err = capsys.readouterr()
    with capsys.disabled():
        print("\nTest run_serial_sims...")
    printed_params = output_print_sim.split('\n')[0::2]
    printed_names = printed_params[0].split()
    printed_params_1 = printed_params[1].split()
    assert printed_names[0] == printed_names[1] == printed_names[2]
    assert printed_params_1[0] == printed_params_1[1] == printed_params_1[2]

    # Test that the added simulation parameters are deleted
    assert (len(output_after_delete) == 0
            or output_after_delete != "{0}".format(id_3))
Ejemplo n.º 16
0
def test_duplicate_delete_and_run(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    db_id = command_line_tool("sim_db", [
        "add_sim", "--filename", "{0}/params_python_program.txt".format(
            common_test_helpers.get_test_dir())
    ],
                              print_ids_added=False)
    new_id = command_line_tool(
        "sim_db",
        ["duplicate_delete_and_run", "--id",
         str(db_id), "--no_checks"],
        print_ids_added=False)
    output_program, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        "print_sim --id {0} -v --no_headers --columns name test_param1 "
        "test_param2 test_param3 test_param4 test_param5 test_param6 "
        "test_param7 test_param8 test_param9 test_param10 test_param11 "
        "test_param12 test_param13".format(new_id).split())
    output_print_sim_after_duplicate_sim, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        "print_sim --id {0} -v --columns new_test_param1 new_test_param2 "
        "new_test_param3 new_test_param4 new_test_param5 new_test_param6 "
        "new_test_param7 new_test_param8 new_test_param9 new_test_param10 "
        "results_dir time_started used_walltime --no_headers".format(
            new_id).split())
    output_print_sim_after_run_sim, err = capsys.readouterr()
    command_line_tool("sim_db",
                      ["delete_sim", "--id",
                       str(new_id), "--no_checks"])
    command_line_tool("sim_db", "print -n 1 --no_headers --columns id".split())
    output_after_delete, err = capsys.readouterr()
    with capsys.disabled():
        print("\nTest duplicate_delete_and_run...")
    __assert_output_print_sim_after_add_sim(
        output_print_sim_after_duplicate_sim)
    common_test_helpers.assert_output_python_program(output_program, new_id)
    common_test_helpers.assert_output_print_sim_after_run_sim(
        output_print_sim_after_run_sim, True)

    # Test that the added simulation parameters are deleted
    assert (
        len(output_after_delete) == 0
        or output_after_delete.splitlines()[-1].strip() != "{0}".format(db_id))
Ejemplo n.º 17
0
def test_settings(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    command_line_tool(
        "sim_db",
        ["init", "--path", "{0}".format(common_test_helpers.get_test_dir())])
    output_program, err = capsys.readouterr()
    cwd = os.getcwd()
    os.chdir(common_test_helpers.get_test_dir())
    command_line_tool("sim_db",
                      ["settings", "print", "--setting", "parameter_files"])
    output_setting_print_original, err = capsys.readouterr()
    command_line_tool("sim_db", [
        "settings", "add", "--setting", "parameter_files", "--line",
        "test_settings.txt"
    ])
    command_line_tool("sim_db",
                      ["settings", "print", "--setting", "parameter_files"])
    output_setting_print_after_add, err = capsys.readouterr()
    command_line_tool("sim_db", [
        "settings", "remove", "--setting", "parameter_files", "--line",
        "sim_params.txt"
    ])
    command_line_tool("sim_db",
                      ["settings", "print", "--setting", "parameter_files"])
    output_setting_print_after_remove, err = capsys.readouterr()
    command_line_tool("sim_db", ["settings", "reset_to_default"])
    output, err = capsys.readouterr()
    command_line_tool("sim_db",
                      ["settings", "print", "--setting", "parameter_files"])
    output_setting_print_after_reset, err = capsys.readouterr()

    with capsys.disabled():
        print("\nTest settings...")

    os.chdir(cwd)
    shutil.rmtree(common_test_helpers.get_test_dir() + '/.sim_db')

    assert output_setting_print_original.strip() == 'sim_params.txt'
    assert output_setting_print_after_add.split(
        '\n')[0].strip() == 'sim_params.txt'
    assert output_setting_print_after_add.split(
        '\n')[1].strip() == 'test_settings.txt'
    assert output_setting_print_after_remove.strip() == 'test_settings.txt'
    assert output_setting_print_after_reset.strip() == 'sim_params.txt'
Ejemplo n.º 18
0
def test_add_comment(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    db_id = command_line_tool("sim_db", [
        "add_sim", "--filename", "{0}/params_python_program.txt".format(
            common_test_helpers.get_test_dir())
    ],
                              print_ids_added=False)
    command_line_tool("sim_db", [
        "add_comment", "--id", "{0}".format(db_id), "--comment",
        "This is a test comment."
    ])
    command_line_tool(
        "sim_db", "print_sim --id {0} --columns comment --no_headers".format(
            db_id).split())
    output_print_sim, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        ["delete_sim", "--id", str(db_id), "--no_checks"])
    with capsys.disabled():
        print("\nTest add_comment...")
    assert output_print_sim.strip() == "This is a test comment."
Ejemplo n.º 19
0
def test_get_and_cd_results_dir(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    db_id = command_line_tool("sim_db", [
        "add_and_run", "--filename", "{0}/params_python_program.txt".format(
            common_test_helpers.get_test_dir())
    ])
    output_program, err_program = capsys.readouterr()
    results_dir = command_line_tool(
        "sim_db", "get results_dir --id {0}".format(db_id).split())
    command_line_tool(
        "sim_db",
        "print_sim --id {0} -v --columns results_dir --no_headers".format(
            db_id).split())
    output_print_sim, err_print_sim = capsys.readouterr()
    with capsys.disabled():
        print("\nTest get and cd_results_dir...")
    assert os.path.isdir(results_dir)
    command_line_tool(
        "sim_db",
        ["delete_sim", "--id", str(db_id), "--no_checks"])
    assert not os.path.isdir(results_dir)
Ejemplo n.º 20
0
def test_duplicate_sim(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    db_id = command_line_tool("sim_db", [
        "add_sim", "--filename",
        common_test_helpers.get_test_dir() + "/params_python_program.txt"
    ],
                              print_ids_added=False)
    command_line_tool(
        "sim_db",
        ["update_sim", "--id",
         str(db_id), "-c", "status", "-v", "finished"])
    db_id_duplicated = command_line_tool(
        "sim_db",
        ["duplicate_sim", "--id", str(db_id)], print_ids_added=False)
    command_line_tool(
        "sim_db", "print_sim -i {0} --no_headers -v -c id status name "
        "--params --results".format(db_id).split())
    output_original_sim, err = capsys.readouterr()
    command_line_tool(
        "sim_db", "print_sim -i {0} --no_headers -v -c id status name "
        "--params --results".format(db_id_duplicated).split())
    output_duplicated_sim, err = capsys.readouterr()
    command_line_tool(
        "sim_db",
        ["delete_sim", "--id", str(db_id), "--no_checks"])
    command_line_tool(
        "sim_db", ["delete_sim", "--id",
                   str(db_id_duplicated), "--no_checks"])
    with capsys.disabled():
        print("\nTest duplicate_sim...")
    assert (output_original_sim.split('\n')[0].strip() !=
            output_duplicated_sim.split('\n')[0].strip())
    assert output_duplicated_sim.split('\n')[2].strip() == 'new'
    assert (output_original_sim.split('\n',
                                      3)[3] == output_duplicated_sim.split(
                                          '\n', 3)[3])
Ejemplo n.º 21
0
def test_cpp_functions_without_storing_metadata(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    __cpp_functions(capsys, False)
Ejemplo n.º 22
0
def test_cpp_functions(capsys):
    common_test_helpers.skip_if_outside_sim_db()
    __cpp_functions(capsys, True)