Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Go has a basic FS abstraction in the standard library: https://dev.to/rezmoss/gos-fs-package-modern-file-system-abs...

But the stdlib one is a bit barebones. So people created: https://github.com/spf13/afero



This is one nice thing about go.

I think was trying to test something in Rust and I was surprised by how many people were OK with using real file's for unit testing.

It seems like a massive oversight for being able to use rust in a corporate environment.


> It seems like a massive oversight for being able to use rust in a corporate environment.

Why does being in a corporate environment matter?


Permissions are usually more strict then a hobby projects. So you can't just be writing and leaving things all over the file system without the possibility of failure.

Or maybe your using drives over a network and randomly your tests will now fail becasue of things outside your control. Things like that.

That's why when writing tests you always want them to actually do io like that.


Seems like you could just put your test files in a tmpfs, if leaving files laying around is an issue.


You need to mount and unmount fikesystems to do that.

Take a look at the library mentioned,afero, and you'll see how nice it handles working with the file system in tests.

You can have everything in memory, and a whole new fs in each test


The problem is it only tests trivial properties of the API. That might be enough for some things, but it’s not a panacea.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: