On Wed, Feb 23, 2022 at 8:53 AM Leam Hall <leamh...@gmail.com> wrote:
> My program uses data and template files located relative to the binary. > Since go test creates the binary under test in /tmp/go-build....., there > are no data or template files. How do I either specify what directory to > build in so I can create the files, or get the tmp directory name before > the tests are run so I can write files to it? > When go test runs tests, they run with the current working directory inside the package's directory, so relative paths should work. Another option that you might want to consider is using //go:embed directives to embed those files in your binary. (package doc: https://pkg.go.dev/embed) This way you never need to resolve anything relative to the binary again. Note: unless you use mlock(2) embedding in the binary shouldn't bloat memory usage, since the data will only be paged into memory at first-access. > > Thanks! > > Leam > > -- > Site Automation Engineer (reuel.net/resume) > Scribe: The Domici War (domiciwar.net) > General Ne'er-do-well (github.com/LeamHall) > > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to golang-nuts+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/7d8cf3dc-14ab-315f-ce5a-9e3cca877e17%40gmail.com > . > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CANrC0Bj5UWhsA16_6kK%3D38oROOZ4P24QKEYUP2tTCvYG0bydjQ%40mail.gmail.com.