Package tdtest provides support for table-driven testing.
Features include automatically updating of test values, automatic error
message generation, and singling out single tests to run.
Auto updating fields is only supported for fields that are scalar types:
string, bool, int*, and uint*. If the field is a string, the "actual" value
may be any Go value that can meaningfully be printed with fmt.Sprint.
Run runs the given function for each (selected) element in the table.
TC must be a struct type. If that has a string field named "name",
that value will be used to name the associated subtest.
Select species which tests to run. The test may be an int, in which case
it selects the table entry to run, or a string, which is matched against
the last path of the test. An empty list runs all tests.