https://itnext.io/f-tests-as-a-replacement-for-table-driven-tests-in-go-8814a8b19e9e
The following shows how to use sub-tests, which are nice because they give a visible name to each test and allow you to run each sub test in isolation:
func TestSomeFuncWithSubtests(t *testing.T) {
f := func(t *testing.T, input, outputExpected string) {
t.Helper()
output := SomeFunc(input)