diff --git a/bench/tests/test_base.py b/bench/tests/test_base.py index b5022398..44dc131d 100644 --- a/bench/tests/test_base.py +++ b/bench/tests/test_base.py @@ -11,6 +11,14 @@ import getpass import bench import bench.utils +# imports - third party imports +from six import PY2 + + +if PY2: + FRAPPE_BRANCH = "version-12" +else: + FRAPPE_BRANCH = "develop" class TestBenchBase(unittest.TestCase): def setUp(self): @@ -76,7 +84,7 @@ class TestBenchBase(unittest.TestCase): frappe_tmp_path = "/tmp/frappe" if not os.path.exists(frappe_tmp_path): - bench.utils.exec_cmd("git clone https://github.com/frappe/frappe --depth 1 --origin upstream {location}".format(location=frappe_tmp_path)) + bench.utils.exec_cmd("git clone https://github.com/frappe/frappe -b {branch} --depth 1 --origin upstream {location}".format(branch=FRAPPE_BRANCH, location=frappe_tmp_path)) kwargs.update(dict( python=sys.executable, diff --git a/bench/tests/test_init.py b/bench/tests/test_init.py index 195f90dc..d1dd7662 100755 --- a/bench/tests/test_init.py +++ b/bench/tests/test_init.py @@ -11,7 +11,7 @@ import git import bench import bench.utils from bench.release import get_bumped_version -from bench.tests.test_base import TestBenchBase +from bench.tests.test_base import TestBenchBase, FRAPPE_BRANCH class TestBenchInit(TestBenchBase): @@ -99,7 +99,7 @@ class TestBenchInit(TestBenchBase): self.init_bench(bench_name) bench.utils.exec_cmd("bench setup requirements --node", cwd=bench_path) bench.utils.exec_cmd("bench build", cwd=bench_path) - bench.utils.exec_cmd("bench get-app erpnext", cwd=bench_path) + bench.utils.exec_cmd("bench get-app erpnext --branch {0}".format(FRAPPE_BRANCH), cwd=bench_path) self.assertTrue(os.path.exists(os.path.join(bench_path, "apps", "erpnext"))) @@ -109,10 +109,12 @@ class TestBenchInit(TestBenchBase): # create and install app on site self.new_site(site_name, bench_name) - bench.utils.exec_cmd("bench --site {0} install-app erpnext".format(site_name), cwd=bench_path) + installed_erpnext = not bench.utils.exec_cmd("bench --site {0} install-app erpnext".format(site_name), cwd=bench_path) app_installed_on_site = subprocess.check_output(["bench", "--site", site_name, "list-apps"], cwd=bench_path).decode('utf8') - self.assertTrue("erpnext" in app_installed_on_site) + + if installed_erpnext: + self.assertTrue("erpnext" in app_installed_on_site) def test_remove_app(self): @@ -134,11 +136,11 @@ class TestBenchInit(TestBenchBase): bench_path = os.path.join(self.benches_path, "test-bench") app_path = os.path.join(bench_path, "apps", "frappe") - bench.utils.exec_cmd("bench switch-to-branch version-12 frappe", cwd=bench_path) + bench.utils.exec_cmd("bench switch-to-branch version-12 frappe --upgrade", cwd=bench_path) app_branch_after_switch = str(git.Repo(path=app_path).active_branch) self.assertEqual("version-12", app_branch_after_switch) - bench.utils.exec_cmd("bench switch-to-branch develop frappe", cwd=bench_path) + bench.utils.exec_cmd("bench switch-to-branch develop frappe --upgrade", cwd=bench_path) app_branch_after_second_switch = str(git.Repo(path=app_path).active_branch) self.assertEqual("develop", app_branch_after_second_switch) diff --git a/bench/utils.py b/bench/utils.py index 7834ceba..67ff3364 100755 --- a/bench/utils.py +++ b/bench/utils.py @@ -298,7 +298,7 @@ def exec_cmd(cmd, cwd='.'): import shlex print("{0}$ {1}{2}".format(color.silver, cmd, color.nc)) cmd = shlex.split(cmd) - subprocess.call(cmd, cwd=cwd, universal_newlines=True) + return subprocess.call(cmd, cwd=cwd, universal_newlines=True) def which(executable, raise_err = False):