about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/languagemachines/test.nix
blob: 26fff825a151d9035cb9e31a4637d26445eae364 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{ runCommand
, languageMachines
}:

runCommand "frog-test" {} ''
  ${languageMachines.frog}/bin/frog >$out <<EOF
  Dit is een test

  EOF
  echo "Frog output:"
  cat $out

  expected () {
    echo "Test expectation failed: $@"
    exit 1
  }

  lines="$(wc -l $out | awk '{print $1}')"
  test 5 = $lines || expected "Five lines of output"
  grep "is" $out | grep "zijn" >/dev/null || expected "Stemming works"
  grep "een" $out | grep "onbep" >/dev/null || expected "Tagging works"

  deps="$(echo $(awk 'BEGIN { FS = "\t*" } ; {print $1 " -> " $9 "; "}' <$out))"
  test "1 -> 2; 2 -> 0; 3 -> 4; 4 -> 2; -> ;" = "$deps" || expected "Dependency parsing works"
''