ttestutils.nim 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import stdtest/testutils
  2. block: # assertAll
  3. assertAll:
  4. 1+1 == 2
  5. var a = 3
  6. a == 3
  7. doAssertRaises(AssertionDefect):
  8. assertAll:
  9. 1+1 == 2
  10. var a = 3
  11. a == 4
  12. block: # greedyOrderedSubsetLines
  13. assertAll:
  14. greedyOrderedSubsetLines("a1\na3", "a0\na1\na2\na3\na4")
  15. not greedyOrderedSubsetLines("a3\na1", "a0\na1\na2\na3\na4") # out of order
  16. not greedyOrderedSubsetLines("a1\na5", "a0\na1\na2\na3\na4") # a5 not in lhs
  17. not greedyOrderedSubsetLines("a1\na5", "a0\na1\na2\na3\na4\nprefix:a5")
  18. not greedyOrderedSubsetLines("a1\na5", "a0\na1\na2\na3\na4\na5:suffix")
  19. not greedyOrderedSubsetLines("a5", "a0\na1\na2\na3\na4\nprefix:a5")
  20. not greedyOrderedSubsetLines("a5", "a0\na1\na2\na3\na4\na5:suffix")
  21. block: # greedyOrderedSubsetLines with allowPrefixMatch = true
  22. template fn(a, b): bool =
  23. greedyOrderedSubsetLines(a, b, allowPrefixMatch = true)
  24. assertAll:
  25. fn("a1\na3", "a0\na1\na2\na3_suffix\na4")
  26. not fn("a1\na3", "a0\na1\na2\nprefix_a3\na4")
  27. # these are same as above, could be refactored
  28. not fn("a3\na1", "a0\na1\na2\na3\na4") # out of order
  29. not fn("a1\na5", "a0\na1\na2\na3\na4") # a5 not in lhs
  30. not fn("a1\na5", "a0\na1\na2\na3\na4\nprefix:a5")
  31. fn("a1\na5", "a0\na1\na2\na3\na4\na5:suffix")
  32. not fn("a5", "a0\na1\na2\na3\na4\nprefix:a5")
  33. fn("a5", "a0\na1\na2\na3\na4\na5:suffix")