From 9df22361b7e22eb899df13988965239abafc0697 Mon Sep 17 00:00:00 2001
From: "Lucas A. M. Magalhaes" <lucas.magalhaes@ess.eu>
Date: Thu, 17 Aug 2023 16:56:28 +0200
Subject: [PATCH] Add test for license installing

---
 tests/test_build.py | 17 +++++++++++++++++
 tests/utils.py      |  3 +++
 2 files changed, 20 insertions(+)

diff --git a/tests/test_build.py b/tests/test_build.py
index bb07bf06..595760d6 100644
--- a/tests/test_build.py
+++ b/tests/test_build.py
@@ -736,3 +736,20 @@ def test_missing_record_dbd_file_causes_build_failure(wrapper: Wrapper):
         ),
         errs,
     )
+
+
+def test_install_license(wrapper: Wrapper):
+    wrapper.add_file("LICENSE")
+    wrapper.add_directory("foo")
+    wrapper.add_file("foo/LICENSE")
+
+    rc, out, _ = wrapper.run_make("install")
+    assert rc == 0
+    assert re.search("Installing license file LICENSE", out)
+    assert re.search("Installing license file foo/LICENSE", out)
+
+    file_path = wrapper.package_dir / "doc/LICENSE"
+    assert file_path.exists()
+
+    file_path = wrapper.package_dir / "doc/foo/LICENSE"
+    assert file_path.exists()
diff --git a/tests/utils.py b/tests/utils.py
index d22e2459..5e27e754 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -98,6 +98,9 @@ include $(E3_REQUIRE_TOOLS)/driver.makefile
     def add_file(self, name):
         (self.module_dir / name).touch()
 
+    def add_directory(self, name):
+        (self.module_dir / name).mkdir()
+
     def write_dot_local_data(self, config_file: str, config_vars: dict):
         """Write config data to the specific .local file."""
 
-- 
GitLab