From 68857a7be95a6f7f10721cdc949bb35fcb096f9f Mon Sep 17 00:00:00 2001 From: Bruno Cardoso Lopes Date: Fri, 13 May 2016 21:31:32 +0000 Subject: [PATCH] [Support][Unittests] Add unittest for recursive_directory_iterator::level() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269488 91177308-0d34-0410-b5e6-96231b3b80d8 --- unittests/Support/Path.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/unittests/Support/Path.cpp b/unittests/Support/Path.cpp index fbeabe0bfc5..70bbf2499ac 100644 --- a/unittests/Support/Path.cpp +++ b/unittests/Support/Path.cpp @@ -716,6 +716,20 @@ TEST_F(FileSystemTest, DirectoryIteration) { ASSERT_NO_ERROR(fs::remove(Twine(TestDirectory) + "/recursive/z0/za1")); ASSERT_NO_ERROR(fs::remove(Twine(TestDirectory) + "/recursive/z0")); ASSERT_NO_ERROR(fs::remove(Twine(TestDirectory) + "/recursive")); + + // Test recursive_directory_iterator level() + ASSERT_NO_ERROR( + fs::create_directories(Twine(TestDirectory) + "/reclevel/a/b/c")); + fs::recursive_directory_iterator I(Twine(TestDirectory) + "/reclevel", ec), E; + for (int l = 0; I != E; I.increment(ec), ++l) { + ASSERT_NO_ERROR(ec); + EXPECT_EQ(I.level(), l); + } + EXPECT_EQ(I, E); + ASSERT_NO_ERROR(fs::remove(Twine(TestDirectory) + "/reclevel/a/b/c")); + ASSERT_NO_ERROR(fs::remove(Twine(TestDirectory) + "/reclevel/a/b")); + ASSERT_NO_ERROR(fs::remove(Twine(TestDirectory) + "/reclevel/a")); + ASSERT_NO_ERROR(fs::remove(Twine(TestDirectory) + "/reclevel")); } const char archive[] = "!\x0A"; -- 2.11.0