sapling/eden/fs/testharness
Xavier Deguillard f4f159537f utils: add a platform independent FileUtils
Summary:
Up to now, Windows had to have its own version of folly::{readFile, writeFile,
writeFileAtomic} as these only operate on `char *` path, which can only
represent ascii paths on Windows. Since the Windows version is slightly
different from folly, this forced the code to either ifdef _WIN32, or use the
folly version pretending that it would be OK. The Windows version was also
behaving slightly differently from folly. For instance, where folly would
return a boolean to indicate success, on Windows we would throw an exception.

To simplify our code, add type safety and unify both, we can implement our own
wrappers on top of either folly or Windows APIs.

We still have some code that uses folly::readFile but these should only be
dealing with filedescriptors. As a following step, we may want to have our own
File class that wraps a file descriptor/HANDLE so we can completely remove all
uses of folly::readFile.

Reviewed By: wez

Differential Revision: D23037325

fbshipit-source-id: 2b9a026f3ee6220ef55097abe649b23e38d9fe91
2020-08-14 18:56:33 -07:00
..
test thread ObjectFetchContext to backing store 2020-06-23 10:02:40 -07:00
CMakeLists.txt use the normal PrivHelper.h header file on Windows 2020-05-01 14:01:40 -07:00
FakeBackingStore.cpp get priority from ObjectFetchContext in BackingStore 2020-07-24 08:24:02 -07:00
FakeBackingStore.h get priority from ObjectFetchContext in BackingStore 2020-07-24 08:24:02 -07:00
FakeClock.h Tidy up license headers 2019-10-11 05:28:23 -07:00
FakeFuse.cpp replace some uses of memset 2020-01-31 10:50:48 -08:00
FakeFuse.h Tidy up license headers 2019-10-11 05:28:23 -07:00
FakeObjectStore.cpp use ObjectFetchContext for priority 2020-07-02 12:00:45 -07:00
FakeObjectStore.h use ObjectFetchContext for priority 2020-07-02 12:00:45 -07:00
FakePrivHelper.cpp use the normal PrivHelper.h header file on Windows 2020-05-01 14:01:40 -07:00
FakePrivHelper.h use the normal PrivHelper.h header file on Windows 2020-05-01 14:01:40 -07:00
FakeTreeBuilder.cpp Tidy up license headers 2019-10-11 05:28:23 -07:00
FakeTreeBuilder.h Tidy up license headers 2019-10-11 05:28:23 -07:00
HgRepo.cpp utils: add a platform independent FileUtils 2020-08-14 18:56:33 -07:00
HgRepo.h add getTreeForManifest 2019-12-09 16:25:27 -08:00
InodeUnloader.h enable the checkout tests on Windows 2020-04-26 21:14:24 -07:00
LoggingFetchContext.h add cause info to objectFetchContext 2020-06-23 10:02:40 -07:00
StoredObject.h fix lock ordering issues in eden tests 2019-10-22 10:39:13 -07:00
TempFile.cpp enable the fs/utils tests in the Windows build 2020-04-29 11:04:21 -07:00
TempFile.h Tidy up license headers 2019-10-11 05:28:23 -07:00
TestChecks.h refactor - move ObjectFetchContext to its own file 2020-06-23 10:02:40 -07:00
TestDispatcher.cpp adding ObjectFetchContext to lookup 2020-06-18 10:40:41 -07:00
TestDispatcher.h adding ObjectFetchContext to lookup 2020-06-18 10:40:41 -07:00
TestMain.cpp Tidy up license headers 2019-10-11 05:28:23 -07:00
TestMount.cpp utils: add a platform independent FileUtils 2020-08-14 18:56:33 -07:00
TestMount.h win: simplify path management 2020-08-10 08:53:13 -07:00
TestServer.cpp introduce metadata importer 2020-07-10 16:03:32 -07:00
TestServer.h Tidy up license headers 2019-10-11 05:28:23 -07:00
TestUtil.cpp Tidy up license headers 2019-10-11 05:28:23 -07:00
TestUtil.h Tidy up license headers 2019-10-11 05:28:23 -07:00