Compare commits

..

6 Commits

4 changed files with 43 additions and 2 deletions

23
.hooks/commit-msg 100755
View File

@ -0,0 +1,23 @@
#!/usr/bin/env bash
# This hook checks if the commit message ends with an issue number, and if not,
# tries to derive that number from the branch name
branch=`git rev-parse --abbrev-ref HEAD`
# This check doesn't need to run when commiting to develop/master
[[ "$branch" =~ ^master|develop$ ]] && exit 0
issue_num=`echo "$branch" | grep -Po '^[0-9]+(?=-)'`
# Check if issue number is already present
if ! grep -q '([0-9]\+)$' "$1"; then
# Error out if we can't derive issue number
[[ -z "$issue_num" ]] && {
>&2 echo "Couldn't derive issue number from branch. Please add one manually.";
exit 1;
}
# Append issue number, and remove all comments
echo "[#$issue_num]" "$(cat "$1")" > "$1"
fi

13
.hooks/pre-commit 100755
View File

@ -0,0 +1,13 @@
#!/usr/bin/env bash
# This hook lints the code, and if we're on develop or master, also forces the tests to pass.
branch=`git rev-parse --abbrev-ref HEAD`
# TODO should we add release branches here as well?
if [[ "$branch" =~ ^master|develop$ ]]; then
make test > /dev/null 2>&1 || {
>&2 echo "Tests failed. check 'make test' for more info.";
exit 1;
}
fi

View File

@ -0,0 +1,5 @@
# Ivago
This part of the API is a wrapper around the Ivago website (Ivago being the
company that collects the trash in my city). Their city isn't exactly RESTful,
so this endpoint simply wraps it in a RESTful wrapper.

View File

@ -13,8 +13,8 @@ pub fn routes() -> Vec<rocket::Route> {
// URL: https://www.ivago.be/nl/particulier/autocomplete/garbage/streets?q=Lange
// TODO make this async
// TODO change this so it can return errors instead of empty json
#[get("/search?<street>", format="json")]
pub fn route_search_streets(street: String) -> Json<Vec<controller::Street>> {
#[get("/search?<street>")]
pub fn search_streets_json(street: String) -> Json<Vec<controller::Street>> {
match controller::search_streets(&street) {
Ok(streets) => Json(streets),
Err(err) => Json(Vec::new()),