omg.testingTools
This tool can be useful for writing a tests. If you want change private field in struct from imported libraries than it can help you.
Example
package main import ( "strings" "github.com/dedalqq/omg.testingtools" ) func TestSomeCase(t *testing.T) { buffer := strings.Builder{} testingtools.SetPrivateValue(&buffer, "buf", []byte("data in strings buffer")) }
How it works
This function finding needs field via reflect then get pointer from field address via unsafe.Pointer and write value via variable with the same address as original struct field.