Commit Graph

651 Commits (9ed0e374218969558008d63ef37fc03aeef0b5cf)

Author SHA1 Message Date
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
Aaron Jacobs 3a8a8855a1 Fixed a crash. 2015-02-27 09:56:57 +11:00
Aaron Jacobs 71a91b98f6 Updated HelloFS. 2015-02-27 09:56:27 +11:00
Aaron Jacobs 90ef75da6f Renamed package fuseutil -> fuse. 2015-02-27 08:57:18 +11:00