mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 02:54:26 +00:00
Merge pull request #1393 from kevinveenbirkenbach/fix/tests/dockerignore-lint-conformance
fix(tests): make the dockerignore lint follow the repository lints
This commit is contained in:
1 file changed
+8
-6
@@ -1,27 +1,29 @@
|
||||
import re
|
||||
import unittest
|
||||
from pathlib import Path
|
||||
|
||||
PROJECT_ROOT = Path(__file__).resolve().parents[3]
|
||||
from utils.cache.files import read_text
|
||||
|
||||
from . import PROJECT_ROOT
|
||||
|
||||
NESTED_CHECKOUTS = (".claude/worktrees/", ".worktrees/")
|
||||
|
||||
|
||||
class TestDockerignore(unittest.TestCase):
|
||||
def test_dockerignore_is_the_gitignore(self) -> None:
|
||||
self.assertEqual(
|
||||
(PROJECT_ROOT / ".gitignore").read_text(),
|
||||
(PROJECT_ROOT / ".dockerignore").read_text(),
|
||||
read_text(str(PROJECT_ROOT / ".gitignore")),
|
||||
read_text(str(PROJECT_ROOT / ".dockerignore")),
|
||||
"Run 'make fix-dockerignore': .dockerignore must be a copy of .gitignore.",
|
||||
)
|
||||
|
||||
def test_nested_checkouts_stay_out_of_the_build_context(self) -> None:
|
||||
lines = (PROJECT_ROOT / ".dockerignore").read_text().splitlines()
|
||||
lines = read_text(str(PROJECT_ROOT / ".dockerignore")).splitlines()
|
||||
for entry in NESTED_CHECKOUTS:
|
||||
with self.subTest(entry=entry):
|
||||
self.assertIn(entry, lines)
|
||||
|
||||
def test_compose_up_regenerates_the_dockerignore(self) -> None:
|
||||
makefile = (PROJECT_ROOT / "Makefile").read_text()
|
||||
makefile = read_text(str(PROJECT_ROOT / "Makefile"))
|
||||
match = re.search(r"^compose-up:(.*)$", makefile, re.MULTILINE)
|
||||
self.assertIsNotNone(match, "Makefile has no compose-up target")
|
||||
self.assertIn("fix-dockerignore", match.group(1).split())
|
||||
|
||||
Reference in new issue
Block a user