2017-07-28 02:59:46 +02:00
|
|
|
#!/bin/env bats
|
|
|
|
|
|
|
|
@test "Testing newton tool" {
|
|
|
|
echo newton
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "Check for latest version of bash-snippets on update" {
|
2017-08-02 08:05:17 +02:00
|
|
|
if [[ "$(uname)" == "Linux" ]];then
|
2017-07-28 02:59:46 +02:00
|
|
|
run newton update
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
[ "$output" = "Bash-Snippets is already the latest version" ]
|
2017-08-02 08:05:17 +02:00
|
|
|
fi
|
2017-07-28 02:59:46 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
@test "The -h option should print usage" {
|
|
|
|
run newton -h
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
[ "${lines[0]}" = "Newton" ]
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "Testing newton simplify for [[2x^2]+7]*[4x^2]" {
|
|
|
|
run newton simplify [[2x^2]+7]*[4x^2]
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
[ "${lines[0]}" = "================================" ]
|
2017-08-02 07:42:05 +02:00
|
|
|
if [ $(uname) == "Linux" ];then
|
|
|
|
[ "${lines[3]}" = "|Result: 8 x^4 + 28 x^2" ] ## this works for darwin but the test wont
|
|
|
|
fi
|
2017-07-28 02:59:46 +02:00
|
|
|
}
|
|
|
|
|
2017-07-28 07:49:06 +02:00
|
|
|
@test "Testing newton bad characters in expression " {
|
2017-08-02 07:42:05 +02:00
|
|
|
run newton simplify 3x=
|
2017-07-28 07:49:06 +02:00
|
|
|
[ "$status" -eq 1 ]
|
|
|
|
[ "${lines[0]}" = "Error: Expression contains invalid characters" ]
|
|
|
|
}
|
|
|
|
|
|
|
|
@test "Testing newton bad operation " {
|
|
|
|
run newton jokes 2x^2
|
|
|
|
[ "$status" -eq 1 ]
|
|
|
|
[ "${lines[0]}" = "Error: invalid operation, run newton -h to get a list of valid operations" ]
|
|
|
|
}
|
|
|
|
|
2017-07-28 02:59:46 +02:00
|
|
|
@test "Get the tools version with -v" {
|
|
|
|
run newton -v
|
|
|
|
[ "$status" -eq 0 ]
|
|
|
|
result=$( echo $(newton -v) | grep -Eo "Version")
|
|
|
|
[ "$result" = "Version" ]
|
|
|
|
}
|