PosixTest.WriteAtDoesntChangeOffset_AppendMode
parent
49bead83fa
commit
95a89e5302
|
@ -187,7 +187,35 @@ func (t *PosixTest) WriteAtDoesntChangeOffset_NotAppendMode() {
|
|||
}
|
||||
|
||||
func (t *PosixTest) WriteAtDoesntChangeOffset_AppendMode() {
|
||||
AssertTrue(false, "TODO")
|
||||
var err error
|
||||
var n int
|
||||
|
||||
// Create a file in append mode.
|
||||
f, err := os.OpenFile(
|
||||
path.Join(t.dir, "foo"),
|
||||
os.O_RDWR|os.O_APPEND|os.O_CREATE,
|
||||
0600)
|
||||
|
||||
t.toClose = append(t.toClose, f)
|
||||
AssertEq(nil, err)
|
||||
|
||||
// Make it 16 bytes long.
|
||||
err = f.Truncate(16)
|
||||
AssertEq(nil, err)
|
||||
|
||||
// Seek to offset 4.
|
||||
_, err = f.Seek(4, 0)
|
||||
AssertEq(nil, err)
|
||||
|
||||
// Write the range [10, 14).
|
||||
n, err = f.WriteAt([]byte("taco"), 2)
|
||||
AssertEq(nil, err)
|
||||
AssertEq(4, n)
|
||||
|
||||
// We should still be at offset 4.
|
||||
offset, err := getFileOffset(f)
|
||||
AssertEq(nil, err)
|
||||
ExpectEq(4, offset)
|
||||
}
|
||||
|
||||
func (t *PosixTest) ReadOverlapsEndOfFile() {
|
||||
|
|
Loading…
Reference in New Issue