Beman
4005870f9c
Commit work-in-progress prior to merging into branch v4. (It is clear the class path refactoring is resulting in a cleaner, more correct implementation. So merge now even though the work is currently incomplete.)
2017-09-20 09:27:06 -04:00
Beman
3a19d97b5e
Bring parent_path() into std compliance. Fix decomp_table boo boos. All decomposition_table_tests() now passing.
2017-09-17 11:37:09 -04:00
Beman
1750152680
path.hpp: refactor path::has_root_name(), has_root_directory(), and has relative_path().
...
path.cpp: refactor path::root_name(), root_directory(), and root_path().
path_test.cpp: bring decomposition_table into compliance with C++ Std WP. The decomposition tests for parent_path() are now failing, indicating that code needs to be brought into std compliance. There are many traditional tests failing, but these will be reviewed later.
2017-09-17 11:24:55 -04:00
Beman
080c99c425
Unstable work-in-progress. Commit before creating path-refactor branch.
2017-09-16 17:08:48 -04:00
Beman
d767a3e947
Add a table driven decomposition test. The plan is to migrate a lot of the handwritten decomposition and query tests to the table driven test.
2017-09-14 17:27:22 -04:00
Beman
5652949497
Add Visual Studio project for example/path_info
2017-09-14 14:57:59 -04:00
Beman
e13d60104f
Bring lexically_normal() into sync with C++ WP, N4687. Commit and push as backup in advance of hurricane Irma.
2017-09-10 10:56:27 -04:00
Beman
d0910d003c
Merge branch 'develop' into v4 after resolving a couple of minor conflicts and retesting.
2017-09-03 11:54:36 -04:00
Beman
07619fb370
Add Beman's local test results to aid tracking changes over time.
2017-08-24 08:00:38 -04:00
Beman
bf2f23efc5
C++17 20.4.2.1.4 [bitmask.types] complete and passing all tests.
2017-08-23 21:41:11 -04:00
Beman
49218481e5
Clean up some tutorial example code and fix the wording for it in the tutorial. Thanks to Anmol-Singh-Jaggi for pull request #11 .
2017-08-07 20:01:08 -04:00
Beman
355e57f706
Upgrade to Visual Studio 2017
2017-04-02 08:00:04 -04:00
Beman
3a8554803f
Add lexically_normal cases Nico suggested we concentrate on to resolve questions about invariants
2017-03-09 14:46:34 -05:00
Beman
65cc9b6aec
Add the filename_tests() examples from the C++17 standard.
2017-02-16 09:21:46 -05:00
Beman
e5c8e732aa
Reorder and number the lexically_normal tests so that they correspond to P0492R1.
2017-02-07 07:21:25 -05:00
Beman
d466406388
Update path.cpp to meet lexically_normal c++17 specs. Add test cases, including some from Nico. Add lexically_normal output to example/path_info.cpp
2017-01-29 08:35:14 -05:00
Beman
cc94b12f2f
Move recursive_directory_iterator tests to operations_test.cpp to avoid the file system race conditions (duh!) that were causing apparently random failures when IDEs or build systems were running many tests in parallel.
2017-01-25 10:54:04 -05:00
Beman
0878728d8e
Remove tests that were failing due to file system races when other tests may be removing test directories from the directory being iterated over.
2017-01-25 07:42:30 -05:00
Beman
de05529917
Change path::create_directories() to deal with trailing directory-separator now encoded as empty path. Add test cases.
2017-01-25 07:10:36 -05:00
Beman
61d4f04eda
Reflect V4 spec changes in deprecated_test.cpp. Clean up long_path_test.cpp. Add a few more query and decomposition test cases to path_test.cpp.
2017-01-25 05:43:51 -05:00
Beman
6dbbc24e90
Replace deprecated detail/lightweight_test.hpp with core/lightweight_main.hpp.
2017-01-23 07:15:30 -05:00
Beman
cf3cb4b372
Fix some path_test.cpp tests to conform to desired specs. Fix some path.cpp thinkos path::lexically_normal. All path_test.cpp tests now passing!
2017-01-22 18:00:13 -05:00
Beman
f9ffba8c41
Updated path_test.cpp cases where v4 spec has changed, and added new filename_tests() function to make sure path::filename() works correctly with the spec changes affecting root-name and root-directory elements. Fixed a line in path.cpp that had been commented out during development.
2017-01-22 12:35:30 -05:00
Beman
e0f05e471f
Change path::filename() and has_filename() to conform to P0492.
2017-01-13 17:10:14 -05:00
Beman
602133fc92
Change path::stem() and path::extension() to conform with P0492 comment US-61 proposed wording. Add stem() and extension() test cases presented to LEWG by Nico in Issaquah. All tests passing, including treating ".profile" as a stem with no extension.
2017-01-09 16:33:19 -05:00
Beman
edc8627838
Merge branch 'develop' into v4
2017-01-09 10:20:36 -05:00
Beman
170f483655
Add test/config_info.cpp to increase macro state reporting in hopes of easing debugging on remote machines.
2017-01-08 15:23:42 -05:00
Beman
4ccb6c38f2
Start release history for 1.64
2016-12-30 14:52:52 -05:00
Beman
2550f407f4
MinGW defines __MINGW32__ rather than _MSC_VER, so also test for __MINGW32__ to see if setenv/unsetenv workaround needed.
2016-12-30 10:09:31 -05:00
Beman
163631cc7d
ticket #12574 was just user confusion, but are the tests are worth keeping.
2016-11-28 08:29:08 -05:00
Beman
15c7706111
Fix create directory testing boo boo; Turns out " " is a valid file and directory name on Linux (and I'm guessing other POSIX-like systems). Add a POSIX-only test; "/foo" was reported to cause a crash on an earlier version. Don't test this on Windows since a user may well have sufficient permissions to create a directory in root.
2016-11-24 14:34:00 -05:00
Beman Dawes
cbefb2b9f0
Merge pull request #30 from thtrummer/develop
...
Fix warning, build error, for GCC under Cygwin
2016-11-23 10:46:37 -05:00
Beman
216720de55
Fix #12495 , create_directories() crashes when passed empty string as path, from Samantha Ritter. Also affected create_directory(). Charles Olivi submitted a pull request with some particularly helpful test cases.
2016-11-23 09:58:43 -05:00
Beman
5004d7b177
Fix #12578 - Bug in directory_iterator, recursive_directory_iterator, equality testing of copied iterator also at end.
2016-11-23 09:21:32 -05:00
Beman
48faf2b1ee
Add deprecated path::generic()
2016-11-22 16:51:45 -05:00
Beman
2f4b634c0c
Add some stem() and extension() test cases
2016-11-02 17:03:03 -04:00
Beman
0ac84c4d4a
Add missing is_block_file(), is_character_file(), is_fifo(), and is_socket() operational functions, three overloads for each, with tests.
2016-07-28 11:55:13 -04:00
Beman
ec46b843b7
The comment for the prior commit was wrong. There is no replace_filename bug and there are test cases in operations_test.cpp that would have detected such a bug. The confusion was caused when resolving merge conflicts failed to remove an obsolete comment.
2016-07-28 10:19:56 -04:00
Beman
aa6014f3bb
Merge branch 'feature/directory-entry-cache-refresh' into v4. Unstable due to replace_filename bug in operations.cpp directory_iterator_increment (and lack of test case that detects the bug), lack of POSIX directory_entry caching, and missing directory_entry query functions.
2016-07-28 08:36:46 -04:00
Beman
aaf8136856
Add the P0317
2016-07-28 06:56:59 -04:00
Beman
1cd06e340b
Implement much of R0317R1, Directory Entry Caching for Filesystem (R1), including full refresh() for Windows. Still missing most of the status query functions.
2016-07-27 10:12:56 -04:00
Beman
5dd8b918db
Provide typedef file_time_type. copy_file() effects updated to support all applicable copy_options effects: none, skip_existing, overwrite_existing, and update_existing. Test cases added accordingly.
2016-07-24 16:03:08 -04:00
Beman
72fedeaaf5
Update class enum copy_options to conform with std library.
2016-07-22 08:21:27 -04:00
Beman
4eb98912e5
Add deprecated static const file_type constants for the old enum file_type names to avoid breaking V3 code.
2016-07-21 08:02:28 -04:00
Beman
1a2d1b2510
Change enum file_type to class enum file_type
2016-07-20 16:26:25 -04:00
Thomas Trummer
e4d01fc006
Fix build error when using C++11 under Cygwin
...
http://www.boost.org/development/tests/develop/developer/output/timber-cygwin-boost-bin-v2-libs-filesystem-test-operations_test-test-gcc-5-4-0-debug.html
(Assuming the #ifdef is a copy & paste error)
2016-07-05 11:33:12 +02:00
Felix Bruns
fcb98ee37e
Rename generic() to generic_path(), since generic is a keyword in C++/CX.
...
When using Boost.Filesystem from a project compiled as C++/CX code,
compilation fails with a syntax error, because generic is a keyword.
error C2059: syntax error: 'generic'
See section "Generic interfaces" in C++/CX here:
https://msdn.microsoft.com/en-us/library/hh755792.aspx
2016-04-27 14:11:08 +02:00
Beman
513c90dcae
All operations_unit_test.cpp and operations_test.cpp tests passing.
2016-04-21 10:37:36 -04:00
Beman
1151b7f1ff
Refactor Windows attribute processing into new functions status_helper() and symlink_status_helper() to eliminate duplication of code and, more importantly, to ensure that attributes processed identically regardless of context. Add test cases to operations_unit_test.cpp.
...
All tests passing, except cases where cache is not reporting file_not_found for dangling symlinks.
2016-04-20 06:47:01 -04:00
Beman
d0ac39369b
Clarify error message
2016-04-18 06:54:03 -04:00