diff --git a/samples/memfs/posix_test.go b/samples/memfs/posix_test.go index 701e973..93564e9 100644 --- a/samples/memfs/posix_test.go +++ b/samples/memfs/posix_test.go @@ -129,7 +129,23 @@ func (t *PosixTest) WriteStartsAtEndOfFile() { } func (t *PosixTest) WriteStartsPastEndOfFile() { - AssertTrue(false, "TODO") + var err error + var n int + + // Create a file. + f, err := os.Create(path.Join(t.dir, "foo")) + t.toClose = append(t.toClose, f) + AssertEq(nil, err) + + // Write the range [2, 6). + n, err = f.WriteAt([]byte("taco"), 2) + AssertEq(nil, err) + AssertEq(4, n) + + // Read the full contents of the file. + contents, err := ioutil.ReadAll(f) + AssertEq(nil, err) + ExpectEq("\x00\x00taco", string(contents)) } func (t *PosixTest) WriteAtEffectOnOffset_NotAppendMode() {