Aaron Jacobs
0f6db15c59
buffer: give OutMessage's public API a makeover.
...
Use int where appropriate, fix up documentation, and clarify. Delete the
implementation where it will soon need to change.
2016-12-19 13:14:21 +11:00
Aaron Jacobs
10bc0e766c
buffer_test: fix computation of the number of bytes cleared.
2016-12-19 13:14:05 +11:00
Aaron Jacobs
40b516328e
buffer: expand test coverage.
...
In preparation for changing the public API.
2016-12-19 12:40:00 +11:00
Aaron Jacobs
06b9c19b5e
TestOutMessageHeader
2016-12-19 12:38:58 +11:00
Aaron Jacobs
78a1450a77
TestOutMessageShrinkTo
2016-12-19 12:32:22 +11:00
Aaron Jacobs
39f1f7c489
TestOutMessageAppendString
2016-12-19 12:31:08 +11:00
Aaron Jacobs
c1af0dbdee
TestOutMessageAppend
2016-12-19 12:30:42 +11:00
Aaron Jacobs
e7b9860f41
buffer_test: expand the coverage of TestOutMessageGrow.
2016-12-19 12:26:59 +11:00
Aaron Jacobs
02e3f7895c
buffer_test: expand the coverage of TestOutMessageReset.
2016-12-19 12:20:27 +11:00
Aaron Jacobs
f250e46e83
buffer_test: add TODOs where more test coverage is necessary.
2016-12-19 12:16:51 +11:00
Aaron Jacobs
102b1184fb
buffer: add more tests.
...
At the level of the OutMessage API. In preparation for reworking its
implementation.
2016-12-19 11:46:53 +11:00
Aaron Jacobs
ad65849346
Add a test for OutMessage.Grow.
2016-12-19 11:17:33 +11:00
Aaron Jacobs
e329c0ef33
Add a test for OutMessage.Reset.
2016-12-19 11:17:33 +11:00
Aaron Jacobs
e1a6f0e2d8
.travis.yml: require a modern version of Go.
...
For the sake of testing.T.Run.
2016-12-19 11:12:29 +11:00
Aaron Jacobs
2bb2916cf4
buffer: add tests and benchmarks.
...
In preparation for considering a switch away from the evil use of
runtime's internal memclr function.
2016-12-19 10:36:05 +11:00
Aaron Jacobs
72fc9c96ca
Add a benchmark for growing and shrinking.
...
This should better stress memclr.
2016-12-19 10:35:20 +11:00
Aaron Jacobs
b87ffb528b
Fix a bug in BenchmarkOutMessageReset.
...
I misunderstood what was being zeroed. Only the header is.
2016-12-19 10:26:19 +11:00
Aaron Jacobs
d31e0a4eae
Add a test for memclr.
2016-12-19 10:19:29 +11:00
Aaron Jacobs
92e3407014
Add benchmarks for OutMessage.Reset.
2016-12-19 09:46:08 +11:00
Aaron Jacobs
3b8b4e55df
Add support for osxfuse 3.
...
There are a few changes to tests and documentation to reflect changes to
osxfuse behavior. All of them should probably be seen as backwards
compatible. The tests now test the osxfuse 3 behavior, and for this
reason we should consider killing osxfuse 2 support after some time.
Closes #18 .
Closes #19 .
2016-10-16 09:14:47 +01:00
Aaron Jacobs
a067b22c1d
Fix issues around statfs(2) changes with osxfuse 3.
...
Tested on OS X 10.11.6 (15G1004) with osxfuse 3.5.2.
2016-10-16 09:12:42 +01:00
Aaron Jacobs
b2c3396382
Update state around "close without msyc" behavior on OS X.
2016-10-16 08:56:51 +01:00
Aaron Jacobs
d66bad8705
Unexport osxfuse-related code.
2016-10-16 08:56:48 +01:00
Aaron Jacobs
8b5caee575
Unexport OSXFUSEPaths.
2016-10-16 08:56:44 +01:00
Aaron Jacobs
f1e482d155
Move osxfuse-specific config into mount_darwin.go.
2016-10-16 08:56:40 +01:00
Aaron Jacobs
fc5bd98d65
Don't allow configurability for osxfuse paths.
...
There's no need to complicate the API. If osxfuse makes a
backwards-incompatible change again, we can add support for it.
2016-10-16 08:56:34 +01:00
Nemanja Zbiljić
eadfaa0742
Support OSXFUSE 3.x, fall back to 2.x if needed
...
Also supports custom bundled OSXFUSE installs.
2016-09-25 18:07:29 +02:00
Aaron Jacobs
0b9db0a706
fuse: improve debug logging, including more inode and name info.
...
To aid in debugging GoogleCloudPlatform/gcsfuse#170 .
2016-05-16 10:07:28 +10:00
Aaron Jacobs
652a72aae2
Return better errors from Mount, instead of dumping them to stderr.
...
For googlecloudplatform/gcsfuse#161 .
2016-02-29 02:49:50 +00:00
Aaron Jacobs
2c0c70f477
Kill off silly fusermount screen scraping.
2016-02-29 02:47:56 +00:00
Aaron Jacobs
2e4cd6720b
Add integration tests for mounting.
...
In particular TestNonEmptyMountPoint, which is currently failing on
Linux due to the poor error handling we inherited from bazil.org/fuse.
2016-02-29 02:45:24 +00:00
Aaron Jacobs
3da7af8c88
Restore TestNonEmptyMountPoint for Linux.
...
I had forgotten that we explicitly handle the "mount point doesn't
exist" case, so that wasn't tickling what I had hoped in fusermount.
2016-02-29 13:44:02 +11:00
Aaron Jacobs
035636830f
Switch to a test that can pass on OS X, too.
...
It appears osxfuse is happy to mount over a non-empty directory.
2016-02-29 13:41:38 +11:00
Aaron Jacobs
8b7833ba01
TestNonEmptyMountPoint: clean up in the event of a successful mount.
2016-02-29 13:40:25 +11:00
Aaron Jacobs
38175a2e8b
Fix minimalFS on OS X.
2016-02-29 13:38:01 +11:00
Aaron Jacobs
3d61726401
TestNonEmptyMountPoint
2016-02-29 02:36:18 +00:00
Aaron Jacobs
45795d4717
TestSuccessfulMount
2016-02-29 02:34:31 +00:00
Aaron Jacobs
608feace05
Add fusetesting.GetTimes.
...
This makes it easier to write integration tests for atime, ctime, and
mtime on both darwin and linux.
2016-01-11 10:27:55 +11:00
Aaron Jacobs
5595fe0920
Implement GetTimes for linux.
2016-01-10 23:27:28 +00:00
Aaron Jacobs
850146a678
Add GetTimes, implemented for darwin.
2016-01-11 10:26:22 +11:00
Aaron Jacobs
895b8c4155
Added support for mknod(2) and related calls to fuse_mknod.
...
For googlecloudplatform/gcsfuse#137 .
2015-12-15 10:55:29 +11:00
Aaron Jacobs
ab9f5b35ca
Fixed a silly test bug.
2015-12-14 23:40:46 +00:00
Aaron Jacobs
67e4fbbc5f
Added memFS.MkNode.
2015-12-14 23:40:13 +00:00
Aaron Jacobs
47638fa8c7
Added FileSystem support.
2015-12-14 23:35:40 +00:00
Aaron Jacobs
f5dc8c356e
Added conversion support.
2015-12-14 23:34:09 +00:00
Aaron Jacobs
15b31ee0ee
Added MkNodeOp.
2015-12-14 23:30:42 +00:00
Aaron Jacobs
31e0f8e466
Added integration tests for googlecloudplatform/gcsfuse#137 .
2015-12-15 10:15:48 +11:00
Aaron Jacobs
6afe951ee0
Fixed build errors.
2015-12-15 10:15:48 +11:00
Aaron Jacobs
4db81d4495
Pasted MknodTest from googlecloudplatform/gcsfuse@ff8a3f0 .
2015-12-15 10:15:40 +11:00
Andrew Gaul
1dcc6791f0
Report physical blocks used
...
Tools like du and ls -l use this value to calculate the space used.
Force block size to 512 bytes for simplicity and compatibility with
Mac OS X which uses an older FUSE.
2015-10-22 18:57:08 -07:00