mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-30 18:02:05 +00:00
A number of nimsuggest tests were disabled for various reasons, sometimes due to brittleness. These tests have been fixed where needed and most have are now enabled -- details below. The updates are meant to provide better regression coverage for future nimsuggest improvements. To avoid brittleness some tests were refactored. Impact: * test coverage has now increased * faster execution of the test suite * tests are less likely to break due to stdlib changes Re-enabled Test & Test Description: * `tchk1.nim`: check (chk) via nimsuggest works at end of file * `tdot4.nim`: prioritize already used completion * `tinclude.nim`: definition lookup (def) with includes * `tstrutils.nim` -> `tdef2.nim`: test template definition lookup (def) * `tsug_regression.nim`: regression test for [nimsuggest #52](https://github.com/nim-lang/nimsuggest/issues/52) * `ttemplate_highlight.nim`: per the file name * `twithin_macro_prefix.nim`: suggest within a macro with a prefix Tests Not Re-Enabled: * `twithin_macro.nim` still disabled as it doesn't provide a good test signal * EPC highlight tests remain disabled -- requires out of scope tester changes Additional Notes: * todos added in comments for follow-up work
20 lines
582 B
Nim
20 lines
582 B
Nim
import mfakeassert
|
|
|
|
func rereplace*(s, sub: string; by: string = ""): string {.used.} =
|
|
## competes for priority in suggestion, here first, but never used in test
|
|
|
|
fakeAssert(true, "always works")
|
|
result = by
|
|
|
|
func replace*(s, sub: string; by: string = ""): string =
|
|
## this is a test version of strutils.replace, it simply returns `by`
|
|
|
|
fakeAssert("".len == 0, "empty string is empty")
|
|
result = by
|
|
|
|
func rerereplace*(s, sub: string; by: string = ""): string {.used.} =
|
|
## isn't used and appears last, lowest priority
|
|
|
|
fakeAssert(false, "never works")
|
|
result = by
|