Fix oopsies, fix and add test for ynh_setup_source with patch

This commit is contained in:
Alexandre Aubin 2021-04-01 18:26:18 +02:00
parent d11d26bdb4
commit 4acfbdeade
3 changed files with 24 additions and 8 deletions

View file

@ -217,11 +217,13 @@ ynh_setup_source () {
fi fi
# Apply patches # Apply patches
if (( $(find $YNH_APP_BASEDIR/sources/patches/ -type f -name "${source_id}-*.patch" 2> /dev/null | wc --lines) > "0" )) local patches_folder=$(realpath $YNH_APP_BASEDIR/sources/patches/)
if (( $(find $patches_folder -type f -name "${source_id}-*.patch" 2> /dev/null | wc --lines) > "0" ))
then then
(cd "$dest_dir" (cd "$dest_dir"
for p in $YNH_APP_BASEDIR/sources/patches/${source_id}-*.patch for p in $patches_folder/${source_id}-*.patch
do do
echo $p
patch --strip=1 < $p patch --strip=1 < $p
done) || ynh_die --message="Unable to apply patches" done) || ynh_die --message="Unable to apply patches"
fi fi

View file

@ -28,7 +28,6 @@ ynhtest_setup_source_nominal() {
test -e "$final_path/index.html" test -e "$final_path/index.html"
} }
ynhtest_setup_source_nominal_upgrade() { ynhtest_setup_source_nominal_upgrade() {
final_path="$(mktemp -d -p $VAR_WWW)" final_path="$(mktemp -d -p $VAR_WWW)"
_make_dummy_src > ../conf/dummy.src _make_dummy_src > ../conf/dummy.src
@ -36,7 +35,6 @@ ynhtest_setup_source_nominal_upgrade() {
ynh_setup_source --dest_dir="$final_path" --source_id="dummy" ynh_setup_source --dest_dir="$final_path" --source_id="dummy"
test "$(cat $final_path/index.html)" == "Lorem Ipsum" test "$(cat $final_path/index.html)" == "Lorem Ipsum"
echo $?
# Except index.html to get overwritten during next ynh_setup_source # Except index.html to get overwritten during next ynh_setup_source
echo "IEditedYou!" > $final_path/index.html echo "IEditedYou!" > $final_path/index.html
@ -63,3 +61,21 @@ ynhtest_setup_source_with_keep() {
test "$(cat $final_path/index.html)" == "IEditedYou!" test "$(cat $final_path/index.html)" == "IEditedYou!"
test "$(cat $final_path/test.txt)" == "IEditedYou!" test "$(cat $final_path/test.txt)" == "IEditedYou!"
} }
ynhtest_setup_source_with_patch() {
final_path="$(mktemp -d -p $VAR_WWW)"
_make_dummy_src > ../conf/dummy.src
mkdir -p ../sources/patches
cat > ../sources/patches/dummy-index.html.patch << EOF
--- a/index.html
+++ b/index.html
@@ -1 +1,1 @@
-Lorem Ipsum
+Lorem Ipsum dolor sit amet
EOF
ynh_setup_source --dest_dir="$final_path" --source_id="dummy"
test "$(cat $final_path/index.html)" == "Lorem Ipsum dolor sit amet"
}

View file

@ -34,10 +34,10 @@ trap cleanup EXIT SIGINT
# Dummy http server, to serve archives for ynh_setup_source # Dummy http server, to serve archives for ynh_setup_source
HTTPSERVER_DIR=$(mktemp -d) HTTPSERVER_DIR=$(mktemp -d)
HTTPSERVER_PORT=1312 HTTPSERVER_PORT=1312
pushd "$HTTPSERVER_DIR" pushd "$HTTPSERVER_DIR" >/dev/null
python -m SimpleHTTPServer $HTTPSERVER_PORT &>/dev/null & python -m SimpleHTTPServer $HTTPSERVER_PORT &>/dev/null &
HTTPSERVER="$!" HTTPSERVER="$!"
popd popd >/dev/null
VAR_WWW=$(mktemp -d)/var/www VAR_WWW=$(mktemp -d)/var/www
mkdir -p $VAR_WWW mkdir -p $VAR_WWW
@ -54,8 +54,6 @@ TESTS=$(declare -F | grep ' ynhtest_' | awk '{print $3}')
global_result=0 global_result=0
echo $TESTS
for TEST in $TESTS for TEST in $TESTS
do do
log_test $TEST log_test $TEST