ttestutils.nim 1.4 KB

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