[llvm] 3094992 - Relands "[YAMLVFSWriter][Test][NFC] Add couple tests" vol. 2

Russell Gallop via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 4 04:24:40 PDT 2020


Hi Jan,

One of these tests is failing on a bot:
http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast/builds/32749

[ RUN      ] YAMLVFSWriterTest.HandleRootAsVPath
Assertion failed: sys::path::is_absolute(RealPath) && "real path not
absolute", file
C:\ps4-buildslave2\llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast\llvm-project\llvm\lib\Support\VirtualFileSystem.cpp,
line 1918

Please could you take a look?

Thanks
Russ

On Thu, 4 Jun 2020 at 09:26, Jan Korous via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

>
> Author: Jan Korous
> Date: 2020-06-04T01:26:12-07:00
> New Revision: 30949926f98576fbff8d5ad0390be5124ffacd7e
>
> URL:
> https://github.com/llvm/llvm-project/commit/30949926f98576fbff8d5ad0390be5124ffacd7e
> DIFF:
> https://github.com/llvm/llvm-project/commit/30949926f98576fbff8d5ad0390be5124ffacd7e.diff
>
> LOG: Relands "[YAMLVFSWriter][Test][NFC] Add couple tests" vol. 2
>
> This reverts commit e4e3e41905d182c0f3d5b0b9406e3cbf2aabb30f.
>
> Fixed dangling StringRef in test.
>
> Added:
>
>
> Modified:
>     llvm/unittests/Support/VirtualFileSystemTest.cpp
>
> Removed:
>
>
>
>
> ################################################################################
> diff  --git a/llvm/unittests/Support/VirtualFileSystemTest.cpp
> b/llvm/unittests/Support/VirtualFileSystemTest.cpp
> index 85e7093514b3..96092de2345b 100644
> --- a/llvm/unittests/Support/VirtualFileSystemTest.cpp
> +++ b/llvm/unittests/Support/VirtualFileSystemTest.cpp
> @@ -2338,3 +2338,60 @@ TEST_F(VFSFromYAMLTest,
> YAMLVFSWriterTestHandleDirs) {
>    EXPECT_FALSE(FS->exists(_b.Path + "/b"));
>    EXPECT_FALSE(FS->exists(_c.Path + "/c"));
>  }
> +
> +TEST_F(VFSFromYAMLTest, YAMLVFSWriterTestNestedDirs) {
> +  ScopedDir TestDirectory("virtual-file-system-test", /*Unique*/ true);
> +  ScopedDir a(TestDirectory + "/a");
> +  ScopedDir _a_aa(TestDirectory + "/a/aa");
> +  ScopedDir b(TestDirectory + "/b");
> +  ScopedDir _b_bb(TestDirectory + "/b/bb");
> +  ScopedDir c(TestDirectory + "/c");
> +  ScopedDir _c_cc(TestDirectory + "/c/cc");
> +
> +  vfs::YAMLVFSWriter VFSWriter;
> +  VFSWriter.addDirectoryMapping(a.Path, "//root/a");
> +  VFSWriter.addDirectoryMapping(_a_aa.Path, "//root/a/aa");
> +  VFSWriter.addDirectoryMapping(b.Path, "//root/b");
> +  VFSWriter.addDirectoryMapping(_b_bb.Path, "//root/b/bb");
> +  VFSWriter.addDirectoryMapping(c.Path, "//root/c");
> +  VFSWriter.addDirectoryMapping(_c_cc.Path, "//root/c/cc");
> +
> +  std::string Buffer;
> +  raw_string_ostream OS(Buffer);
> +  VFSWriter.write(OS);
> +  OS.flush();
> +
> +  IntrusiveRefCntPtr<ErrorDummyFileSystem> Lower(new
> ErrorDummyFileSystem());
> +  Lower->addDirectory("//root/a");
> +  Lower->addDirectory("//root/a/aa");
> +  Lower->addDirectory("//root/b");
> +  Lower->addDirectory("//root/b/bb");
> +  Lower->addDirectory("//root/c");
> +  Lower->addDirectory("//root/c/cc");
> +
> +  IntrusiveRefCntPtr<vfs::FileSystem> FS = getFromYAMLRawString(Buffer,
> Lower);
> +  ASSERT_TRUE(FS.get() != nullptr);
> +
> +  EXPECT_TRUE(FS->exists(a.Path));
> +  EXPECT_TRUE(FS->exists(_a_aa.Path));
> +  EXPECT_TRUE(FS->exists(b.Path));
> +  EXPECT_TRUE(FS->exists(_b_bb.Path));
> +  EXPECT_TRUE(FS->exists(c.Path));
> +  EXPECT_TRUE(FS->exists(_c_cc.Path));
> +}
> +
> +TEST(YAMLVFSWriterTest, HandleRootAsVPath) {
> +  llvm::SmallVector<char, 32> Tmp;
> +  llvm::sys::path::system_temp_directory(false, Tmp);
> +  std::string Root = llvm::sys::path::root_path(StringRef(Tmp.data(),
> Tmp.size())).str();
> +  llvm::SmallVector<char, 32> Subdir(Root.begin(), Root.end());
> +  llvm::sys::path::append(Subdir, "foo");
> +
> +  llvm::vfs::YAMLVFSWriter W;
> +  W.addDirectoryMapping(Root, "/tmp");
> +  W.addDirectoryMapping(std::string{Subdir.begin(), Subdir.end()} +
> "/foo", "/tmp/bar");
> +  std::string Dump;
> +  llvm::raw_string_ostream ToBeIgnored(Dump);
> +
> +  EXPECT_NO_FATAL_FAILURE(W.write(ToBeIgnored));
> +}
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200604/d90f5f06/attachment-0001.html>


More information about the llvm-commits mailing list