seed: curriculum content
This commit is contained in:
29
1.solar-system/1.welcome/15.the-cloner/testing/test.sh
Normal file
29
1.solar-system/1.welcome/15.the-cloner/testing/test.sh
Normal file
@@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
TMP=$(mktemp -d)
|
||||
(
|
||||
cd "$TMP"
|
||||
git init -q -b main
|
||||
git config user.name "Setup"
|
||||
git config user.email "setup@learnroom.local"
|
||||
echo "# Mission Project" > README.md
|
||||
echo "Initial mission setup." > mission.txt
|
||||
git add .
|
||||
git commit -q -m "initial mission setup"
|
||||
)
|
||||
git clone -q --bare "$TMP" remote.git
|
||||
rm -rf "$TMP"
|
||||
|
||||
bash solution.sh > /dev/null 2>&1
|
||||
|
||||
N=0
|
||||
report() { N=$((N+1)); if [ "$1" = "0" ]; then echo "ok $N - $2"; else echo "not ok $N - $2"; fi; }
|
||||
|
||||
[ -d project/.git ]; report $? "project/.git exists (clone happened)"
|
||||
[ -f project/log-entry.txt ]; report $? "project/log-entry.txt exists"
|
||||
ACTUAL=$(cat project/log-entry.txt 2>/dev/null)
|
||||
ACTUAL="${ACTUAL%$'\n'}"
|
||||
[ "$ACTUAL" = "Cadet log entry — checked in." ]; report $? "log-entry.txt contains the exact line"
|
||||
|
||||
COUNT=$(git -C project log --oneline 2>/dev/null | wc -l | tr -d ' ')
|
||||
[ "$COUNT" -ge 2 ] 2>/dev/null
|
||||
report $? "project has at least 2 commits"
|
||||
Reference in New Issue
Block a user