MCPcopy Create free account
hub / github.com/boostorg/filesystem / recursive_directory_iterator_test

Function recursive_directory_iterator_test

test/operations_unit_test.cpp:180–237  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

178 // recursive_directory_iterator_test -----------------------------------------------//
179
180 void recursive_directory_iterator_test()
181 {
182 cout << "recursive_directory_iterator_test..." << endl;
183
184 recursive_directory_iterator end;
185
186 recursive_directory_iterator it("..");
187
188 CHECK(!it->path().empty());
189
190 if (is_regular_file(it->status()))
191 {
192 CHECK(is_regular_file(it->symlink_status()));
193 CHECK(!is_directory(it->status()));
194 CHECK(!is_symlink(it->status()));
195 CHECK(!is_directory(it->symlink_status()));
196 CHECK(!is_symlink(it->symlink_status()));
197 }
198 else
199 {
200 CHECK(is_directory(it->status()));
201 CHECK(is_directory(it->symlink_status()));
202 CHECK(!is_regular_file(it->status()));
203 CHECK(!is_regular_file(it->symlink_status()));
204 CHECK(!is_symlink(it->status()));
205 CHECK(!is_symlink(it->symlink_status()));
206 }
207
208 for (; it != end; ++it)
209 {
210 //cout << " " << it->path() << "\n";
211 }
212
213 CHECK(recursive_directory_iterator("..") != recursive_directory_iterator());
214 CHECK(recursive_directory_iterator() == end);
215
216#ifndef BOOST_NO_CXX11_RANGE_BASED_FOR
217 for (directory_entry& x : recursive_directory_iterator(".."))
218 {
219 CHECK(!x.path().empty());
220 //cout << " " << x.path() << "\n";
221 }
222 const recursive_directory_iterator dir_itr("..");
223 for (directory_entry& x : dir_itr)
224 {
225 CHECK(!x.path().empty());
226 //cout << " " << x.path() << "\n";
227 }
228#endif
229
230 BOOST_FOREACH(directory_entry& x, recursive_directory_iterator(".."))
231 {
232 CHECK(!x.path().empty());
233 //cout << " " << x.path() << "\n";
234 }
235
236 cout << "recursive_directory_iterator_test complete" << endl;
237 }

Callers 1

cpp_mainFunction · 0.85

Calls 6

is_regular_fileFunction · 0.85
is_directoryFunction · 0.85
is_symlinkFunction · 0.85
statusMethod · 0.80
symlink_statusMethod · 0.80

Tested by

no test coverage detected