odoo-openupgrade-wizard/tests/cli_05_execute_script_python_test.py
2024-08-21 16:02:00 +02:00

64 lines
1.6 KiB
Python

from pathlib import Path
from plumbum.cmd import cp
from odoo_openupgrade_wizard.tools.tools_postgres import (
ensure_database,
execute_sql_request,
)
from . import (
build_ctx_from_config_file,
cli_runner_invoke,
move_to_test_folder,
)
def test_cli_execute_script_python():
move_to_test_folder()
ctx = build_ctx_from_config_file()
extra_script_path = Path(
"../extra_script/01-post-migration-custom_test.py"
).absolute()
cp(
extra_script_path,
Path("01-post-migration-custom_test.py"),
)
db_name = "database_test_cli___execute_script_python"
ensure_database(ctx, db_name, state="absent")
# Install Odoo on V14 with base installed
cli_runner_invoke(
[
"run",
"--step=1",
f"--database={db_name}",
"--init-modules=base",
"--stop-after-init",
],
)
# Compute partners quantity
request = "SELECT count(*) FROM res_partner;"
partner_quantity_before = int(
execute_sql_request(ctx, request, database=db_name)[0][0]
)
# Execute Custom Python Script
cli_runner_invoke(
[
"execute-script-python",
"--step=1",
f"--database={db_name}",
"--script-file-path=01-post-migration-custom_test.py",
],
)
partner_quantity_after = int(
execute_sql_request(ctx, request, database=db_name)[0][0]
)
# Ensure that partners have been created by click_odoo_test.py
assert partner_quantity_after == (partner_quantity_before + 10)