github.com/maratori/testpackage (go): testpackage is golang linter that makes you use a separate `_test` package.  According to blackbox testing approach, you should not use unexported functions and methods from source code in tests.  Go allows to place tests in a separate package with suffix `_test`. For example, tests for `store` package can be in the same package or in the package `store_test`. In the second case, you have to import the source code into tests so only exported things are available.  The linter reports if a test is in a package without suffix `_test`. If you really need to test unexported function, then put the test into file `XXX_internal_test.go`. The linter skips such files by default. It also skips the file `export_test.go` by default (see the last article below).  More detailed articles on this topic:
Keywords: go|golang|linter|testing