Aaron Jacobs
096c3fa695
Added a test for directories.
2015-03-24 12:02:48 +11:00
Aaron Jacobs
38862e8650
Set GOMAXPROCS=2 in mount_sample to help flush out issues like #4 .
2015-03-24 11:53:32 +11:00
Aaron Jacobs
4584e4de8f
Be consistent about file names.
2015-03-24 11:27:58 +11:00
Aaron Jacobs
12b184c011
Clean up after the tool binary.
2015-03-24 11:27:18 +11:00
Aaron Jacobs
6cc47f10ed
Unlink mount points on tear-down.
2015-03-24 11:04:15 +11:00
Aaron Jacobs
5a7e50daa6
Use a helper to be more sure that temp files are cleaned up at exit.
2015-03-24 10:59:46 +11:00
Aaron Jacobs
b5e00243ba
Allow re-using the mount_sample binary across runs.
2015-03-24 10:24:08 +11:00
Aaron Jacobs
6729af8524
Synchronize on ready with a pipe.
2015-03-24 10:08:17 +11:00
Aaron Jacobs
49455cd59c
Wait for tool in a goroutine.
2015-03-24 09:59:13 +11:00
Aaron Jacobs
b62be9632c
Pass report files by file descriptor.
2015-03-24 09:46:05 +11:00
Aaron Jacobs
a438466587
Fixed another invocation problem.
2015-03-24 09:27:09 +11:00
Aaron Jacobs
6b6c7c92ca
Added a sleep workaround for now.
2015-03-24 09:26:41 +11:00
Aaron Jacobs
61f3528c80
Fixed another invocation bug.
2015-03-24 09:26:16 +11:00
Aaron Jacobs
47445387e7
Fixed an invocation bug.
2015-03-24 09:25:43 +11:00
Aaron Jacobs
258104ae32
Include stderr in exit errors.
2015-03-24 09:22:39 +11:00
Aaron Jacobs
39dfb0c887
Don't hide command termination errors behind unmount errors.
2015-03-24 09:07:30 +11:00
Aaron Jacobs
dff6fe8c82
Share unmount code.
2015-03-24 09:00:50 +11:00
Aaron Jacobs
53d662ca0b
Fixed go build arg order.
2015-03-24 08:53:52 +11:00
Aaron Jacobs
d12a25db1c
Fixed two build errors.
2015-03-24 08:53:11 +11:00
Aaron Jacobs
2665bd1342
Other SetUp methods.
2015-03-24 08:52:56 +11:00
Aaron Jacobs
f92de1a6e7
NoErrorsTest.SetUp
2015-03-24 08:52:05 +11:00
Aaron Jacobs
ddfca9cb6b
Implemented readReports.
2015-03-24 08:51:19 +11:00
Aaron Jacobs
c090f136cd
Implemented getFlushes and getFsyncs.
2015-03-24 08:45:01 +11:00
Aaron Jacobs
cab543fa8c
Fixed more build errors.
2015-03-24 08:43:24 +11:00
Aaron Jacobs
e7dc200b88
Fixed some build errors.
2015-03-24 08:43:03 +11:00
Aaron Jacobs
bfa3465cb9
Open and close reporting files.
2015-03-24 08:42:39 +11:00
Aaron Jacobs
01470b8c34
Fixed test names.
2015-03-24 08:40:35 +11:00
Aaron Jacobs
f0ae4d753e
Recategorized tests.
2015-03-24 08:39:22 +11:00
Aaron Jacobs
5dde9ea0b7
Fixed a silly mistake.
2015-03-23 16:36:07 +11:00
Aaron Jacobs
f02cc98b33
Fixed some build errors.
2015-03-23 16:35:42 +11:00
Aaron Jacobs
3924e25eb8
Refactored helpers.
2015-03-23 16:35:19 +11:00
Aaron Jacobs
4ca6ed02c6
flushFSTest.setUp.
2015-03-23 16:34:39 +11:00
Aaron Jacobs
27722cb25a
invokeMountSample
2015-03-23 16:32:50 +11:00
Aaron Jacobs
ee8e869e35
buildMountSample
2015-03-23 16:31:52 +11:00
Aaron Jacobs
5001868f24
Sketched invokeMountSample.
2015-03-23 16:26:15 +11:00
Aaron Jacobs
9ae1064493
Fixed a comment.
2015-03-23 16:23:22 +11:00
Aaron Jacobs
0a588af19f
Fixed some comments.
2015-03-23 16:16:51 +11:00
Aaron Jacobs
ff9c68f93c
Begain on a SubprocessTest helper.
2015-03-23 16:15:53 +11:00
Aaron Jacobs
f211ff829b
Renamed testing.go to in_process.go.
2015-03-23 16:13:18 +11:00
Aaron Jacobs
7066fecc45
Began on helper.
2015-03-23 16:12:02 +11:00
Aaron Jacobs
e997c8fc91
Began categorizing tests.
2015-03-23 16:11:01 +11:00
Aaron Jacobs
ad0a833fa7
makeFlushFS
2015-03-23 16:08:46 +11:00
Aaron Jacobs
215f15bdc7
Sketched makeFS.
2015-03-23 16:01:16 +11:00
Aaron Jacobs
06fb8e2f13
Sketched main.
2015-03-23 16:00:12 +11:00
Aaron Jacobs
0bbe4cfa3d
Added flags for flushfs.
2015-03-23 15:54:20 +11:00
Aaron Jacobs
9b88ab0cc3
Began working on a generic mounting tool for samples/.
...
For jacobsa/fuse#4 .
2015-03-23 15:52:27 +11:00
Aaron Jacobs
64d7bf8a69
Worked around osxfuse/osxfuse#202 .
2015-03-23 12:28:13 +11:00
Aaron Jacobs
5908a93101
FlushFSTest.Mmap_MunmapBeforeClose
2015-03-23 11:40:36 +11:00
Aaron Jacobs
7020914422
FlushFSTest.Mmap_CloseBeforeMunmap
2015-03-23 11:40:03 +11:00
Aaron Jacobs
2728137e7d
Worked around a deadlock in FlushFSTest.Mmap.
2015-03-23 11:16:39 +11:00
Aaron Jacobs
68a8062681
FlushFSTest.Mmap
2015-03-23 10:52:37 +11:00
Aaron Jacobs
fef2721042
Fixed FlushFSTest.Dup_FlushError for darwin.
2015-03-23 10:43:32 +11:00
Aaron Jacobs
d2445f678d
Fixed FlushFSTest.Dup for darwin.
2015-03-23 10:41:59 +11:00
Aaron Jacobs
51062a1475
Oops, don't forget to unmount.
2015-03-23 10:37:32 +11:00
Aaron Jacobs
3a9a00d6f3
Remove file closing boilerplate.
2015-03-23 10:32:30 +11:00
Aaron Jacobs
6a25ef9666
FlushFSTest.Dup2_FlushError
2015-03-23 10:28:15 +11:00
Aaron Jacobs
62d30c7631
Fixed a deadlock in FlushFSTest.Dup2.
2015-03-23 10:27:22 +11:00
Aaron Jacobs
e2f3ca7109
FlushFSTest.Dup2
2015-03-20 14:48:47 +11:00
Aaron Jacobs
7fd16bbf58
FlushFSTest.Dup_FlushError
2015-03-20 13:54:52 +11:00
Aaron Jacobs
f7694a22b7
flushFS.ReadFile
2015-03-20 13:51:04 +11:00
Aaron Jacobs
8e46de74a3
Fixed my misunderstanding of dup.
2015-03-20 13:47:47 +11:00
Aaron Jacobs
7de08bc15f
FlushFSTest.Dup
2015-03-20 13:44:34 +11:00
Aaron Jacobs
b856e4e73d
flushFS.SyncFile
2015-03-20 13:40:53 +11:00
Aaron Jacobs
f1d36b3117
Filled in test TODOs.
2015-03-20 13:29:15 +11:00
Aaron Jacobs
4fba58178c
Fixed a file system bug.
2015-03-20 13:28:51 +11:00
Aaron Jacobs
8ab34bc0e4
flushFS.FlushFile
2015-03-20 13:27:27 +11:00
Aaron Jacobs
7af6c9300f
Declared a test for directories.
2015-03-20 13:24:02 +11:00
Aaron Jacobs
4a92165ab8
Added more flush test names.
2015-03-20 13:21:14 +11:00
Aaron Jacobs
22c6e605c0
Added a test name for dup.
2015-03-20 12:45:12 +11:00
Aaron Jacobs
0451a1bafe
FlushFSTest.FsyncError
2015-03-20 12:04:25 +11:00
Aaron Jacobs
2f3b25c19a
FlushFSTest.FsyncReports
2015-03-20 12:03:25 +11:00
Aaron Jacobs
f3c4cc1048
FlushFSTest.CloseError
2015-03-20 12:01:59 +11:00
Aaron Jacobs
4b0c377865
FlushFSTest.CloseReports_MultipleTimes_OverlappingFileHandles
2015-03-20 11:59:52 +11:00
Aaron Jacobs
a8648b2868
We're not using byte slices.
2015-03-20 11:57:21 +11:00
Aaron Jacobs
b8ce0bcb8d
FlushFSTest.CloseReports_MultipleTimes_NonOverlappingFileHandles
2015-03-20 11:56:38 +11:00
Aaron Jacobs
59c2823005
FlushFSTest.CloseReports_WriteOnly
2015-03-20 11:54:43 +11:00
Aaron Jacobs
7f5d9a43f2
FlushFSTest.CloseReports_ReadOnly
2015-03-20 11:54:09 +11:00
Aaron Jacobs
a932a6549e
Support flush/fsync errors.
2015-03-20 11:52:54 +11:00
Aaron Jacobs
4eda8330e8
byteSliceEq
2015-03-20 11:51:26 +11:00
Aaron Jacobs
0698d68032
flushFS.WriteFile
2015-03-20 11:49:45 +11:00
Aaron Jacobs
b87740f7f2
flushFS.OpenFile.
2015-03-20 11:40:53 +11:00
Aaron Jacobs
38e2aaff58
flushFS.GetInodeAttributes
2015-03-20 11:40:14 +11:00
Aaron Jacobs
d7fec86069
flushFS.LookUpInode
2015-03-20 11:38:40 +11:00
Aaron Jacobs
604281b157
Changed the contents of flushFS.
2015-03-20 11:34:16 +11:00
Aaron Jacobs
1c062d495e
FlushFSTest.CloseReports_ReadWrite
2015-03-20 11:33:15 +11:00
Aaron Jacobs
dfa0452003
Implemented helpers.
2015-03-20 11:26:32 +11:00
Aaron Jacobs
d6eb065a4d
Set up more test structure.
2015-03-20 11:25:15 +11:00
Aaron Jacobs
87a08d4388
Added some test names.
2015-03-20 11:23:15 +11:00
Aaron Jacobs
20b5ac7634
flushFS.Init
2015-03-20 11:22:16 +11:00
Aaron Jacobs
e1375f33da
NewFileSystem
2015-03-20 11:21:38 +11:00
Aaron Jacobs
2fe7597c4e
FlushFSTest.SetUp
2015-03-20 11:20:29 +11:00
Aaron Jacobs
ffa094be50
Switched to string for fool-proofness.
2015-03-20 11:18:56 +11:00
Aaron Jacobs
76f61fa467
Added a test stub.
2015-03-20 11:17:27 +11:00
Aaron Jacobs
2a57c26cec
Began on a file system to help test flush/fsync support.
2015-03-20 11:15:26 +11:00
Aaron Jacobs
ba6909e398
Fixed an out of date name.
2015-03-20 11:14:45 +11:00
Aaron Jacobs
8f8b5c9c44
Converted memfs_test.
2015-03-20 11:11:20 +11:00
Aaron Jacobs
abeaf77890
Added a ToClose field.
2015-03-20 11:10:04 +11:00
Aaron Jacobs
0b43e99333
Use the names SetUp and TearDown so that ogletest doesn't run them.
2015-03-20 11:07:43 +11:00
Aaron Jacobs
f099d9868f
Updated hello_fs_test.
2015-03-20 10:50:36 +11:00
Aaron Jacobs
08f495e8b0
Refactored SampleTest.Destroy.
2015-03-20 10:47:46 +11:00
Aaron Jacobs
03f5453297
Oops, use t.Ctx.
2015-03-20 10:46:20 +11:00
Aaron Jacobs
bdfb8cacce
SampleTest.Destroy.
2015-03-20 10:46:02 +11:00
Aaron Jacobs
5e5a2d3356
SampleTest.Initialize
2015-03-20 10:44:50 +11:00
Aaron Jacobs
0ce062dde3
Declared a helper struct for sample tests.
2015-03-20 10:40:34 +11:00
Aaron Jacobs
8d0ce150a0
Updated import paths after the repo move.
2015-03-19 12:39:47 +11:00
Aaron Jacobs
76226f19f5
Updated PosixTest.WriteStartsPastEndOfFile_AppendMode for Linux.
2015-03-18 16:16:24 +11:00
Aaron Jacobs
e011f89d97
PosixTest.WriteStartsPastEndOfFile_AppendMode
2015-03-18 16:13:28 +11:00
Aaron Jacobs
cd4980bf7d
Uncommented unlink tests.
2015-03-18 14:14:46 +11:00
Aaron Jacobs
1a27522693
Added cachingfs support for nlink.
2015-03-18 14:14:19 +11:00
Aaron Jacobs
7120eb1f3d
Added memfs support for nlink.
2015-03-18 14:13:37 +11:00
Aaron Jacobs
7e8f3266ef
Added hellofs support for nlink.
2015-03-18 14:11:36 +11:00
Aaron Jacobs
33e35f568b
Tightened up nlink-related tests for sample file systems.
...
These are currently failing due to bazillion/fuse@58c769a . See #2 .
2015-03-18 14:07:26 +11:00
Aaron Jacobs
6baf50c6d4
Removed an out of date TODO.
2015-03-17 16:37:48 +11:00
Aaron Jacobs
e85990c143
Fixed permissions behavior in hellofs.
...
The tests were recently broken on Linux when default_permissions was set
when mounting. On Linux (but not on OS X), the uid sending the Init
request is root, so all of the files appear to be owned by root. This
was fine until we told the kernel to check permissions.
2015-03-17 16:35:31 +11:00
Aaron Jacobs
b851c516e3
Fixed AttributeCachingTest.StatMtimeStat_ViaPath on OS X.
2015-03-17 16:30:03 +11:00
Aaron Jacobs
6fe7f54829
Updated a few tests for darwin's special entry cache behavior.
2015-03-17 16:24:15 +11:00
Aaron Jacobs
be35ff0dde
Set EnableVnodeCaching in the appropriate test.
2015-03-17 16:21:10 +11:00
Aaron Jacobs
40519818d5
Clarified the expectations in a couple of tests.
2015-03-17 16:14:37 +11:00
Aaron Jacobs
c713695871
Fixed broken tests using Mount.
2015-03-17 15:27:40 +11:00
Aaron Jacobs
2d10e03395
Switched import paths to the bazilfuse fork.
2015-03-17 15:03:11 +11:00
Aaron Jacobs
69c73e39d4
AttributeCachingTest.StatMtimeStat_ViaFileDescriptor
2015-03-17 14:27:23 +11:00
Aaron Jacobs
c7db9c22ec
Fixed more test bugs.
2015-03-17 14:24:55 +11:00
Aaron Jacobs
440803fff6
Fixed some test bugs.
2015-03-17 14:24:13 +11:00
Aaron Jacobs
56cd06ab51
Implemented OpenDir and OpenFile.
2015-03-17 14:23:36 +11:00
Aaron Jacobs
8d1ca91bc9
AttributeCachingTest.StatRenumberMtimeStat_ViaFileDescriptor
2015-03-17 14:22:44 +11:00
Aaron Jacobs
0fe8ed1493
Fixed AttributeCachingTest.StatMtimeStat.
2015-03-17 14:16:10 +11:00
Aaron Jacobs
9ca89ca229
Added AttributeCachingTest.
2015-03-17 14:11:27 +11:00
Aaron Jacobs
ac34f0f721
Added EntryCachingTest.
2015-03-17 14:07:49 +11:00
Aaron Jacobs
b1ad507c85
NoCachingTest.StatRenumberMtimeStat
2015-03-17 14:02:16 +11:00
Aaron Jacobs
1aab442f8b
NoCachingTest.StatMtimeStat
2015-03-17 14:01:45 +11:00
Aaron Jacobs
ea6a65ae8e
NoCachingTest.StatRenumberStat
2015-03-17 13:59:48 +11:00
Aaron Jacobs
b07c1f4825
Refactored.
2015-03-17 13:58:56 +11:00
Aaron Jacobs
a3dcce8ed9
Fixed more test bugs.
2015-03-17 13:56:37 +11:00
Aaron Jacobs
e61d2fc9f6
Fixed some test bugs.
2015-03-17 13:55:42 +11:00
Aaron Jacobs
6490602460
NoCachingTest.StatStat
2015-03-17 13:55:04 +11:00
Aaron Jacobs
f1914f74b2
Finished writing BasicsTest.
2015-03-17 13:47:02 +11:00
Aaron Jacobs
dc5f8ae4bc
Implemented GetInodeAttributes.
2015-03-17 13:46:15 +11:00
Aaron Jacobs
968b5dd71a
Fixed an ID allocation bug.
2015-03-17 13:42:47 +11:00
Aaron Jacobs
bac78088be
BasicsTest.StatFoo
2015-03-17 13:40:11 +11:00
Aaron Jacobs
c8b0b0e822
BasicsTest.StatNonexistent
2015-03-17 13:38:51 +11:00
Aaron Jacobs
2051c13cc0
Simplified BasicsTest.StatNonexistent_Root.
2015-03-17 13:38:07 +11:00
Aaron Jacobs
9ee0551b8c
Fixed a bug.
2015-03-17 13:36:55 +11:00
Aaron Jacobs
241b9447fc
Expanded BasicsTest.StatNonexistent_Root.
2015-03-17 13:36:23 +11:00
Aaron Jacobs
ef4c7d5c8a
Implemented missing methods.
2015-03-17 13:35:47 +11:00
Aaron Jacobs
7cddc48c24
Fixed a build error.
2015-03-17 13:34:50 +11:00
Aaron Jacobs
cea0fb8b48
Refactored ID methods.
2015-03-17 13:33:32 +11:00
Aaron Jacobs
11724230a5
Implemented LookUpInode.
2015-03-17 13:32:35 +11:00
Aaron Jacobs
1b71593b34
Implemented RenumberInodes.
2015-03-17 13:25:46 +11:00
Aaron Jacobs
a9ebf7fe45
Implemented checkInvariants.
2015-03-17 13:25:27 +11:00
Aaron Jacobs
c6fab5488b
Implemented other ID methods.
2015-03-17 13:23:58 +11:00
Aaron Jacobs
19c26cc2e8
Implemented FooID.
2015-03-17 13:23:30 +11:00
Aaron Jacobs
8a4e3f242d
Reworked inode numbering.
2015-03-17 13:22:33 +11:00
Aaron Jacobs
064452dcc9
Simplified inode renumbering.
2015-03-17 13:14:19 +11:00
Aaron Jacobs
8e194826f0
BasicsTest.StatNonexistent_Root
2015-03-17 12:58:25 +11:00
Aaron Jacobs
d3b071b61a
Fixed duplicate test methods.
2015-03-17 12:56:56 +11:00
Aaron Jacobs
236b1ef9df
Implemented Init.
2015-03-17 12:55:40 +11:00
Aaron Jacobs
3e8995eb7e
Made CachingFS an interface, hiding a bunch of irrelevant stuff.
2015-03-17 12:53:55 +11:00
Aaron Jacobs
f1fc462560
Added several test names.
2015-03-17 12:50:58 +11:00
Aaron Jacobs
a1960e91a8
Fixed a panic.
2015-03-17 12:45:06 +11:00
Aaron Jacobs
97dd87f56d
Fixed some build errors.
2015-03-17 12:44:42 +11:00
Aaron Jacobs
81b9b0e737
Added a test stub.
2015-03-17 12:44:12 +11:00
Aaron Jacobs
c79c1d8455
Implemented public functions.
2015-03-17 12:40:51 +11:00
Aaron Jacobs
56f503accd
Declared the interface for a file system to help with testing caching.
...
For the testing work in #1 .
2015-03-17 12:38:15 +11:00
Aaron Jacobs
920a7445eb
Fixed some accidental Jello.
2015-03-16 14:04:03 +11:00
Aaron Jacobs
d6218a3538
Updated pwrite tests for Linux.
2015-03-16 14:02:54 +11:00
Aaron Jacobs
acff636a2e
Removed an assertion that doesn't pass on OS X.
...
For whatever reason, the directory shows up with Nlink == 2 there.
2015-03-16 13:58:36 +11:00
Aaron Jacobs
b064d6b33f
Revised "rmdir while open for reading" tests for Linux's behavior.
2015-03-16 13:56:21 +11:00
Aaron Jacobs
4c280e82ac
Added PosixTest.RmdirWhileOpenedForReading.
2015-03-16 13:47:42 +11:00
Aaron Jacobs
27c8c0df9c
Added a public note about default_permissions.
2015-03-16 13:44:18 +11:00
Aaron Jacobs
bc46008754
Mount memfs with the default_permissions option.
...
This is necessary on Linux to make MemFSTest.Mkdir_PermissionDenied
pass, for the reasons outlined in commit e31cb17
. I don't quite
understand why it doesn't come up on OS X.
2015-03-16 13:41:01 +11:00
Aaron Jacobs
3181e6495b
Be explicit about ownership info for memfs.
2015-03-16 13:27:41 +11:00
Aaron Jacobs
6aaf89f972
Fixed MemFSTest.Chtimes.
...
Linux apparently doesn't like setting atime to time.Time{}.
2015-03-16 13:03:15 +11:00
Aaron Jacobs
e4005a4fb9
Removed applyUmask where it doesn't apply.
2015-03-16 13:00:11 +11:00
Aaron Jacobs
84fe345196
Defined applyUmask.
2015-03-16 13:00:01 +11:00
Aaron Jacobs
2d607d4b3d
Declared an applyUmask helper.
2015-03-16 12:55:51 +11:00
Aaron Jacobs
3b5a04f79d
Use the new matchers.
2015-03-16 12:42:02 +11:00
Aaron Jacobs
c1d117ad7f
Fixed some test bugs.
2015-03-06 23:33:59 -06:00
Aaron Jacobs
5f1b960b2e
Disabled a test that can't pass.
2015-03-06 23:32:26 -06:00
Aaron Jacobs
07bef0b128
Implemented memFS.Unlink.
2015-03-06 23:29:47 -06:00
Aaron Jacobs
125491a6e9
Finished filling out MemFSTest TODOs.
2015-03-06 23:18:50 -06:00
Aaron Jacobs
df6feb98c5
MemFSTest.ReadDirWhileModifying
2015-03-06 23:18:30 -06:00
Aaron Jacobs
5b07c5da52
Added a test for directory link behavior.
2015-03-06 22:39:45 -06:00
Aaron Jacobs
b53eac308c
Deleted a redundant test.
2015-03-06 22:35:57 -06:00
Aaron Jacobs
c9cd78eef2
MemFSTest.UnlinkFile_StillOpen
2015-03-06 22:31:44 -06:00
Aaron Jacobs
e8c884f82b
MemFSTest.UnlinkFile_NonExistent
2015-03-06 22:22:46 -06:00
Aaron Jacobs
005e43cd24
MemFSTest.UnlinkFile_Exists
2015-03-06 22:19:52 -06:00
Aaron Jacobs
52f2e5fec5
MemFSTest.ModifyExistingFile_InSubDir
2015-03-06 22:18:05 -06:00
Aaron Jacobs
f412eaa60a
Filter out EOF errors in ReadFile.
2015-03-05 19:58:20 -06:00
Aaron Jacobs
bf0b773894
Added a test name.
2015-03-06 06:10:43 +11:00
Aaron Jacobs
978c353cf7
Removed some TODOs that have been done.
2015-03-06 06:09:42 +11:00
Aaron Jacobs
a7d2944d2e
Support changing mtime.
2015-03-06 06:04:51 +11:00
Aaron Jacobs
76ac5cc264
MemFSTest.Chtimes
2015-03-06 06:02:43 +11:00
Aaron Jacobs
13335f6e9b
Support changing mode.
2015-03-06 06:00:55 +11:00
Aaron Jacobs
c4de915491
MemFSTest.Chmod
2015-03-06 05:59:06 +11:00
Aaron Jacobs
1e38634464
MemFSTest.Truncate_Larger
2015-03-06 05:56:40 +11:00
Aaron Jacobs
910d3b2f9f
Oops, preserve the size invariant.
2015-03-06 05:56:12 +11:00
Aaron Jacobs
9dc1d04623
MemFSTest.Truncate_Smaller
2015-03-06 05:54:20 +11:00
Aaron Jacobs
7173c5e9fb
Added some test names.
2015-03-06 05:52:08 +11:00
Aaron Jacobs
826e9def70
Implemented memFS.SetInodeAttributes.
2015-03-06 05:51:49 +11:00
Aaron Jacobs
08afae57de
Added inode.SetAttributes.
2015-03-06 05:50:58 +11:00
Aaron Jacobs
632b1e6120
Added FileSystem.SetInodeAttributes.
2015-03-06 05:45:17 +11:00
Aaron Jacobs
1828931cce
Don't attempt to track ctime.
2015-03-06 05:35:44 +11:00
Aaron Jacobs
650467fedb
Update mtime for mkdir and rmdir.
2015-03-06 05:35:44 +11:00
Aaron Jacobs
ea53ba8488
Don't attempt to track atime.
2015-03-06 05:35:43 +11:00
Aaron Jacobs
087f48cc72
Update mtime on write.
2015-03-06 05:35:43 +11:00
Aaron Jacobs
77fee50b80
Tightened up time tests.
2015-03-06 05:35:43 +11:00
Aaron Jacobs
ab18be2378
Refactored inode time tracking.
2015-03-06 05:35:43 +11:00
Aaron Jacobs
62bda89ca9
MemFSTest.ModifyExistingFile_InRoot
2015-03-06 05:35:43 +11:00
Aaron Jacobs
3a2b0a6de4
MemFSTest.AppendMode
2015-03-06 05:35:43 +11:00
Aaron Jacobs
b814416bb2
PosixTest.AppendMode
2015-03-06 05:35:43 +11:00
Aaron Jacobs
b8ea62986f
Dumped in posix tests.
2015-03-06 05:35:43 +11:00
Aaron Jacobs
0377d675dd
MemFSTest.CreateNewFile_InSubDir
2015-03-06 05:35:42 +11:00
Aaron Jacobs
96c65235b8
Implemented memFS.ReadFile.
2015-03-06 05:35:42 +11:00
Aaron Jacobs
4e169a0602
Implemented memFS.OpenFile.
2015-03-05 19:37:36 +11:00
Aaron Jacobs
26d91ad9d7
Fixed a broken invariant.
2015-03-05 19:36:09 +11:00
Aaron Jacobs
7bb6fe37d2
Added an invariant for inode size.
2015-03-05 19:35:32 +11:00
Aaron Jacobs
163b303731
Implemented memFS.WriteFile.
2015-03-05 19:33:10 +11:00
Aaron Jacobs
fcf3be2896
PosixTest.ReadsPastEndOfFile
2015-03-05 19:26:24 +11:00
Aaron Jacobs
95a89e5302
PosixTest.WriteAtDoesntChangeOffset_AppendMode
2015-03-05 19:22:32 +11:00
Aaron Jacobs
49bead83fa
PosixTest.WriteAtDoesntChangeOffset_NotAppendMode
2015-03-05 19:21:20 +11:00
Aaron Jacobs
0c5ea8464f
PosixTest.WriteStartsPastEndOfFile
2015-03-05 19:18:34 +11:00
Aaron Jacobs
526ec9a968
PosixTest.WriteStartsAtEndOfFile
2015-03-05 19:18:18 +11:00
Aaron Jacobs
5dab658073
PosixTest.WriteOverlapsEndOfFile
2015-03-05 19:17:57 +11:00
Aaron Jacobs
541980129d
Added some test names.
2015-03-05 19:10:25 +11:00
Aaron Jacobs
e435f6916c
Added test setup and tear-down code.
2015-03-05 19:08:48 +11:00
Aaron Jacobs
9fd18f53f4
Began on a test to help confirm posix file behavior.
2015-03-05 19:06:43 +11:00
Aaron Jacobs
87f8ec9ead
MemFSTest.CreateNewFile_InRoot
2015-03-04 15:10:26 +11:00
Aaron Jacobs
9c585268b0
Performed a TODO.
2015-03-04 15:06:40 +11:00
Aaron Jacobs
c9298a943a
Implemented memFS.CreateFile.
2015-03-04 15:05:58 +11:00
Aaron Jacobs
1a975d9824
Declared some test names.
2015-03-04 15:03:44 +11:00
Aaron Jacobs
8fc315cf58
MemFSTest.CaseSensitive
2015-03-04 14:21:56 +11:00
Aaron Jacobs
b2a8322aaa
Fixed copyright notices.
2015-03-04 08:27:42 +11:00
Aaron Jacobs
a956166291
Deleted MemFSTest.Rmdir_ReusesInodeID.
...
At least on OS X, the kernel doesn't relaibly send a Forget request
right after RmDir, even if the directory is not open. (This is contrary
to what the fuse low-level ops documentation says.) So there's no way to
reliably test this.
2015-03-03 16:14:37 +11:00
Aaron Jacobs
eec88dd31a
Disabled a test that cannot pass.
2015-03-03 15:15:58 +11:00
Aaron Jacobs
147be0630d
Added tests for the Nlink field.
2015-03-03 15:04:49 +11:00
Aaron Jacobs
651984dc1a
Only mark as unlinked in rmdir.
2015-03-03 14:56:55 +11:00
Aaron Jacobs
140bd18863
Fixed a silly test bug.
2015-03-03 14:54:22 +11:00
Aaron Jacobs
8d9962ee62
MemFSTest.Rmdir_OpenedForReading
2015-03-03 14:52:03 +11:00
Aaron Jacobs
d8905b0d05
Deallocate removed directories.
2015-03-03 14:48:21 +11:00
Aaron Jacobs
3076da562e
Fixed an inode invariants bug.
2015-03-03 14:45:39 +11:00
Aaron Jacobs
2773133448
MemFSTest.Rmdir_ReusesInodeID
2015-03-03 14:43:06 +11:00
Aaron Jacobs
01371975df
Check for empty in rmdir.
2015-03-03 14:39:29 +11:00
Aaron Jacobs
98f868c319
MemFSTest.Rmdir_NonEmpty
2015-03-03 14:34:28 +11:00
Aaron Jacobs
ea5370d6f1
MemFSTest.Rmdir_NonExistent
2015-03-03 14:33:20 +11:00
Aaron Jacobs
4d18942456
Re-use dirent gaps.
2015-03-03 14:31:15 +11:00
Aaron Jacobs
622d7a176b
Preserve the offset invariant.
2015-03-03 14:30:14 +11:00
Aaron Jacobs
400d74dbdd
Implemented inode.RemoveChild.
2015-03-03 14:29:49 +11:00
Aaron Jacobs
621df57d80
Refactored inode.LookUpChild.
2015-03-03 14:23:46 +11:00
Aaron Jacobs
57cb4ccda3
Outlined memFS.RmDir.
2015-03-03 11:28:41 +11:00
Aaron Jacobs
9f984e1aa6
Declared a test.
2015-03-03 11:12:50 +11:00
Aaron Jacobs
baffc23ee6
MemFSTest.Rmdir_Empty
2015-03-03 11:09:36 +11:00
Aaron Jacobs
19f7ef25c9
Fixed permissions issues in memfs, making the package support doing so.
2015-03-03 11:08:34 +11:00
Aaron Jacobs
832e800f3b
MemFSTest.Mkdir_PermissionDenied
2015-03-03 11:08:23 +11:00
Aaron Jacobs
e46341ae00
MemFSTest.Mkdir_TwoLevels
2015-03-03 11:07:24 +11:00
Aaron Jacobs
a87e1b33cf
Fixed permissions in MkDir.
2015-03-03 11:04:17 +11:00
Aaron Jacobs
c81ae6d4b3
Fixed permissions for the root.
2015-03-03 11:03:03 +11:00
Aaron Jacobs
0fde07d9fe
Fixed some build errors in hellofs.
2015-03-03 10:58:54 +11:00
Aaron Jacobs
44901edc6b
Added a header with credentials to each request.
2015-03-03 10:58:01 +11:00
Aaron Jacobs
420fcddfac
Fixed time-related metadata.
2015-03-03 10:48:26 +11:00
Aaron Jacobs
f9e2e55ac8
Fixed some test bugs.
2015-03-03 10:41:30 +11:00
Aaron Jacobs
01878af39a
Implemented timespecToTime.
2015-03-03 10:40:52 +11:00
Aaron Jacobs
fa4c2fb864
Implemented two missing functions.
2015-03-03 10:40:04 +11:00
Aaron Jacobs
6b81f4ce58
Declared a two-level mkdir test.
2015-03-03 10:37:29 +11:00
Aaron Jacobs
605a52de92
Added better tests for statting new dirs.
2015-03-03 10:37:09 +11:00
Aaron Jacobs
17799d45a4
MemFSTest.Mkdir_IntermediateIsFile
2015-03-03 09:52:11 +11:00
Aaron Jacobs
5d63d207bb
MemFSTest.Mkdir_IntermediateIsNonExistent
2015-03-03 09:50:31 +11:00
Aaron Jacobs
819d3ff73b
MemFSTest.Mkdir_AlreadyExists
2015-03-03 09:49:41 +11:00
Aaron Jacobs
fcbc1f761e
Fixed mtime in mkdir.
2015-03-03 09:48:12 +11:00
Aaron Jacobs
5cf0f2b6bf
Refactored newInode.
2015-03-03 09:47:36 +11:00
Aaron Jacobs
bb1539e613
Fixed a test bug.
2015-03-03 09:42:36 +11:00
Aaron Jacobs
fc7440e588
Fixed two bugs where ChildInodeEntry.Child was not filled in.
2015-03-03 09:41:45 +11:00
Aaron Jacobs
75a65d4a03
Fixed a locking bug.
2015-03-03 09:39:45 +11:00
Aaron Jacobs
b6e50a1953
Implemented fs.allocateInode.
2015-03-03 09:39:01 +11:00
Aaron Jacobs
d81d961c04
Implemented inode.AddChild.
2015-03-03 09:35:16 +11:00
Aaron Jacobs
2cf18ad9a5
Fixed some build errors.
2015-03-03 09:33:33 +11:00
Aaron Jacobs
ea2038ef5e
Wrote the skeleton for memFS.MkDir.
2015-03-03 09:30:25 +11:00
Aaron Jacobs
1f5f17b07e
Began on memFS.MkDir.
2015-03-03 09:22:51 +11:00
Aaron Jacobs
d88873bcd4
Refactored LookUpInodeResponse to share with MkDirResponse.
2015-03-02 16:16:20 +11:00
Aaron Jacobs
c3298a7a6b
Added an inode invariant.
2015-03-02 16:12:54 +11:00
Aaron Jacobs
902c5800e1
Fixed a permissions bug.
2015-03-02 16:05:14 +11:00
Aaron Jacobs
b7eebb8070
Fixed a locking bug.
2015-03-02 16:04:21 +11:00
Aaron Jacobs
aebfed4d03
Fixed a bug in newInode.
2015-03-02 16:03:44 +11:00
Aaron Jacobs
26ac02968d
Implemented inode.checkInvariants.
2015-03-02 16:01:01 +11:00
Aaron Jacobs
0cbe7573fa
Fixed a redundant check.
2015-03-02 15:55:32 +11:00
Aaron Jacobs
8d03662cde
Finished inode.LookUpChild.
2015-03-02 15:55:26 +11:00
Aaron Jacobs
44b62ac9c3
Filled in some inode implementation.
2015-03-02 15:54:56 +11:00
Aaron Jacobs
830f272aab
Refactored fs.go.
2015-03-02 15:50:34 +11:00
Aaron Jacobs
e9d3dd9d5c
Deleted memDir and memFile.
2015-03-02 15:36:29 +11:00
Aaron Jacobs
6d1146c42d
Fixed a build error.
2015-03-02 15:36:13 +11:00
Aaron Jacobs
8c9b8c09e6
Redeclared the inode struct.
2015-03-02 15:35:44 +11:00
Aaron Jacobs
7922d064fa
Implemented memFS.GetInodeAttributes.
2015-03-02 15:23:17 +11:00
Aaron Jacobs
c44dffc34e
Added a stub for inode.Attributes.
2015-03-02 15:20:29 +11:00
Aaron Jacobs
93ed47299e
Implemented memDir.LookUpInode.
2015-03-02 15:19:20 +11:00
Aaron Jacobs
a2c55f32d0
Implemented much of memFS.LookUpInode.
2015-03-02 15:18:23 +11:00
Aaron Jacobs
d8355cb155
MemFSTest.Mkdir
2015-03-02 15:07:34 +11:00
Aaron Jacobs
79aa1c32d2
Added a bunch of test names.
2015-03-02 15:01:07 +11:00
Aaron Jacobs
5bedddbd7d
Implemented memFS.ReadDir.
2015-03-02 14:52:29 +11:00
Aaron Jacobs
25a95e5074
Fixed a crash.
2015-03-02 14:45:14 +11:00
Aaron Jacobs
a6223c2344
Implemented missing memDir methods.
2015-03-02 14:44:16 +11:00
Aaron Jacobs
c38463a122
Fixed broken invariants at construction.
2015-03-02 14:40:28 +11:00
Aaron Jacobs
1b65aaf887
Refactored invariant checking.
2015-03-02 14:37:01 +11:00
Aaron Jacobs
f26fdfc80c
Implemented some of memFS.checkInvariants.
2015-03-02 14:27:40 +11:00
Aaron Jacobs
9d4fcebedf
Implemented memFS.OpenDir.
2015-03-02 14:22:59 +11:00
Aaron Jacobs
2f98fdd29d
Added a TODO.
2015-03-02 14:17:52 +11:00
Aaron Jacobs
0d7c207f85
Added a TODO.
2015-03-02 14:16:17 +11:00
Aaron Jacobs
2790095b6b
Implemented Init.
2015-03-02 14:14:49 +11:00
Aaron Jacobs
6f93f4eba9
Implemented NewMemFS.
2015-03-02 14:14:02 +11:00
Aaron Jacobs
0c265d4161
MemFSTest.ContentsOfEmptyFileSystem
2015-03-02 14:12:02 +11:00
Aaron Jacobs
9fb1bc6bff
Began on a memfs test.
2015-03-02 14:11:09 +11:00
Aaron Jacobs
3379842d1e
Switched to an array of inodes for memfs, like a real file system.
2015-03-02 14:08:51 +11:00
Aaron Jacobs
23b398bc83
Added function stubs.
2015-03-02 14:00:48 +11:00
Aaron Jacobs
464201ae12
Fixed a build error.
2015-03-02 13:59:32 +11:00
Aaron Jacobs
0b7e54ef6b
Moved the factory function.
2015-02-27 16:33:18 +11:00
Aaron Jacobs
3739cb6c3a
Split up mem_fs.go.
2015-02-27 16:32:49 +11:00
Aaron Jacobs
9c6965487b
Split up the samples package.
2015-02-27 16:31:04 +11:00
Aaron Jacobs
c03718ca7b
Started on an in-memory file system.
2015-02-27 16:30:22 +11:00
Aaron Jacobs
e06c8f7790
HelloFSTest.Open_NonExistent
2015-02-27 16:07:47 +11:00
Aaron Jacobs
11a4a83b37
HelloFSTest.OpenAndRead
2015-02-27 16:07:13 +11:00
Aaron Jacobs
3cc0b9cb55
HelloFSTest.ReadFile_Dir
2015-02-27 15:58:14 +11:00
Aaron Jacobs
ba8ebc7a52
HelloFSTest.ReadFile_World
2015-02-27 15:57:32 +11:00
Aaron Jacobs
fe2f872382
Implemented HelloFS.ReadFile.
2015-02-27 15:57:06 +11:00
Aaron Jacobs
1d1fb83281
Implemented OpenFile.
2015-02-27 15:50:01 +11:00
Aaron Jacobs
3c768d4393
HelloFSTest.ReadFile_Hello
2015-02-27 14:56:57 +11:00
Aaron Jacobs
39d60191f7
HelloFSTest.Stat_NonExistent
2015-02-27 14:55:02 +11:00
Aaron Jacobs
54b7c34e8f
HelloFSTest.Stat_World
2015-02-27 14:54:39 +11:00
Aaron Jacobs
4344afda0f
HelloFSTest.Stat_Hello
2015-02-27 14:53:08 +11:00
Aaron Jacobs
7ed279d75b
HelloFSTest.ReadDir_NonExistent
2015-02-27 14:44:03 +11:00
Aaron Jacobs
39e09d6bdb
Allow opening other dirs.
2015-02-27 14:43:05 +11:00
Aaron Jacobs
985bd0ac2b
Fixed permission errors.
2015-02-27 14:42:22 +11:00
Aaron Jacobs
070528d9e4
Implemented HelloFS.Init.
2015-02-27 14:40:32 +11:00
Aaron Jacobs
63b70540e3
Added an Init method.
2015-02-27 14:40:09 +11:00
Aaron Jacobs
99dca8b42c
Refactored attribute patching.
2015-02-27 14:24:31 +11:00
Aaron Jacobs
820917579f
HelloFSTest.ReadDir_Dir
2015-02-27 14:09:53 +11:00
Aaron Jacobs
aa99b03e36
Fixed a test bug.
2015-02-27 14:09:14 +11:00
Aaron Jacobs
1750a271f5
Added time info.
2015-02-27 14:05:52 +11:00
Aaron Jacobs
5514405606
Added file sizes.
2015-02-27 14:03:38 +11:00
Aaron Jacobs
4380b9ba90
Fixed some test bugs.
2015-02-27 14:01:44 +11:00
Aaron Jacobs
54ae602a5c
Added dir attributes.
2015-02-27 14:00:18 +11:00
Aaron Jacobs
1b3c0d1489
Implemented HelloFS.LookUpInode.
2015-02-27 13:56:51 +11:00
Aaron Jacobs
59855978e2
Added attributes for hello.
2015-02-27 13:52:43 +11:00
Aaron Jacobs
72e4ed930d
Added a mode to inode attributes.
2015-02-27 13:44:51 +11:00
Aaron Jacobs
505b5cb326
Implemented HelloFS.GetInodeAttributes.
2015-02-27 13:37:21 +11:00
Aaron Jacobs
85d95b742c
Added attributes for the root inode.
2015-02-27 13:36:20 +11:00
Aaron Jacobs
e57dade603
Refactored HelloFS.
2015-02-27 13:35:16 +11:00
Aaron Jacobs
137b24614a
Fixed a bug.
2015-02-27 12:38:27 +11:00
Aaron Jacobs
7b77e1d567
Define directory structure.
2015-02-27 12:37:26 +11:00
Aaron Jacobs
941a56eb0e
Use int for ReadDirRequest.Size, matching slices.
2015-02-27 12:23:32 +11:00
Aaron Jacobs
03c295b02f
First try at HelloFS.ReadDir.
2015-02-27 12:21:12 +11:00
Aaron Jacobs
3ee5ddb908
Defined inode IDs.
2015-02-27 11:55:00 +11:00
Aaron Jacobs
923b2e69ea
Moved NotImplementedFileSystem to reduce clutter.
2015-02-27 09:59:51 +11:00