From da4069d389ed0ca56a17da29b9e967bc2acb0dad Mon Sep 17 00:00:00 2001 From: Charles Date: Sat, 22 Feb 2020 11:36:46 +0100 Subject: Testing and CI --- .travis.yml | 3 ++ Makefile | 5 ++- README.md | 2 +- test.sh | 107 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 115 insertions(+), 2 deletions(-) create mode 100644 .travis.yml create mode 100755 test.sh diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..a0e4157 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,3 @@ +language: c +compiler: gcc +script: make all && ./test.sh diff --git a/Makefile b/Makefile index 5b61455..5d79214 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,7 @@ # By: cacharle +#+ +:+ +#+ # # +#+#+#+#+#+ +#+ # # Created: 2020/02/03 20:14:50 by cacharle #+# #+# # -# Updated: 2020/02/22 10:44:15 by cacharle ### ########.fr # +# Updated: 2020/02/22 11:24:58 by cacharle ### ########.fr # # # # **************************************************************************** # @@ -32,6 +32,9 @@ NAME = ft_ssl all: prebuild libft_all $(NAME) +test: all + ./test.sh + prebuild: @for subdir in $(OBJ_SUBDIR); do mkdir -p $$subdir; done diff --git a/README.md b/README.md index ef5f811..f16dbd1 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ft_ssl_md5 +# ft_ssl_md5 [![Build Status](https://api.travis-ci.com/HappyTramp/ft_ssl.svg?branch=master)](https://travis-ci.com/HappyTramp/ft_ssl) ft\_ssl\_md5 project of school 42 diff --git a/test.sh b/test.sh new file mode 100755 index 0000000..22db466 --- /dev/null +++ b/test.sh @@ -0,0 +1,107 @@ +#!/bin/sh + +test_status=0 + +red() { + echo "$(tput setaf 1)$1$(tput sgr 0)\c" + test_status=1 +} + +green() { + echo "$(tput setaf 2)$1$(tput sgr 0)\c" +} + +assert() { + if [ $# -ne 2 ]; then + red "[KO] " + return 0 + fi + if [ -z "$1" ]; then + red "[KO] " + return 0 + fi + if [ -z "$2" ]; then + red "[KO] " + return 0 + fi + if [ "$1" = "$2" ]; then + green "[OK] " + else + red "[KO] " + fi +} + +# assert_ok() { +# assert $1 "OK" +# } +# +# assert_error() { +# assert $1 "Error" +# } +# + +assert_md5() { + assert `./ft_ssl md5 $1 2>&1` `md5 $1 2>&1` +} + +assert_sha256() { + assert `./ft_ssl md5 $1 2>&1` `openssl sha -sha256 $1 2>&1` +} + +echo "Usage: \c" +assert "`./ft_ssl 2>&1`" "usage: ./ft_ssl command [command opts] [command args]" +assert "`./ft_ssl foo 2>&1`"<