diff --git a/.gitignore b/.gitignore index 705d985..a1db20d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ bin/ *.out -tests/* -!tests/*.nims -!tests/*.nim +tests/* +!tests/*.nim +!tests/*.nims diff --git a/tests/tbasic.nim b/tests/tbasic.nim index 9b55ee4..39338f9 100644 --- a/tests/tbasic.nim +++ b/tests/tbasic.nim @@ -5,7 +5,7 @@ # # To run these tests, simply execute `nimble test`. -import std/[strutils,unittest] +import std/unittest import bbansi diff --git a/tests/tcli.nim b/tests/tcli.nim new file mode 100644 index 0000000..600b9d9 --- /dev/null +++ b/tests/tcli.nim @@ -0,0 +1,21 @@ +import std/[ + compilesettings, + os, + osproc, + strutils, + unittest +] + +const pathToSrc = querySetting(SingleValueSetting.projectPath) + +proc cliRun(cmd: string): string = + let (output, _) = execCmdEx(pathToSrc / "bbansi.out " & cmd) + return output.strip() + +suite "cli": + setup: + let cmd = "nim c -o:" & pathToSrc / "bbansi.out " & (pathToSrc / ".." / "src" / "bbansi.nim") + check execCmdEx(cmd).exitCode == 0 + test "simple": + check "\e[31mRed\e[0m" == cliRun "[red]Red[/]" + check "\e[1m\e[0m\e[1m\e[31mRed\e[0m\e[1m Not Red but Bold\e[0m" == cliRun "'[red]Red[/] Not Red but Bold' " & "--style:bold"