Standard libraries for Go, taking care of things like:
concurrent
: concurrent and thread-safe data structures —AtomicCounter
: atomicint64
counterScoreboard
: a space-efficient map ofstring
-keyedint64
countersAtomicReference
an atomic reference that allows fornil
pointersDeadline
- conditional running of tasks that are bound to a deadline
scribe
: logging façade that features logger mocking and assertions, and comes with ready-to-go bindings for —check
: assertion utilitiesThatPanicsAsExpected(func)
: asserting panic expectationsWait(t, timeout).UntilAsserted(assertion)
: time-based assertionsTestCapture
: capture oftesting.T
failures (for self-testing of assertion libraries)Intercept(t).Mutate(...)
: enrichment of assertion failure messages
commander
: schemaless command-line argument parsingParse(os.Args).Mappify
fault
: fault injectionarity
: extraction of optional arguments to variadic functionsarg := arity.SoleUntyped("a_default", args).(string)
diags
: debugging and diagnostics
Check out the GoDocs.