Mercurial > hg > CbC > CbC_llvm
comparison unittests/Support/FileOutputBufferTest.cpp @ 121:803732b1fca8
LLVM 5.0
author | kono |
---|---|
date | Fri, 27 Oct 2017 17:07:41 +0900 |
parents | 1172e4bd9c6f |
children | 3a76565eade5 |
comparison
equal
deleted
inserted
replaced
120:1172e4bd9c6f | 121:803732b1fca8 |
---|---|
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 | 9 |
10 #include "llvm/Support/FileOutputBuffer.h" | |
10 #include "llvm/Support/Errc.h" | 11 #include "llvm/Support/Errc.h" |
11 #include "llvm/Support/ErrorHandling.h" | 12 #include "llvm/Support/ErrorHandling.h" |
12 #include "llvm/Support/FileOutputBuffer.h" | |
13 #include "llvm/Support/FileSystem.h" | 13 #include "llvm/Support/FileSystem.h" |
14 #include "llvm/Support/Path.h" | 14 #include "llvm/Support/Path.h" |
15 #include "llvm/Support/raw_ostream.h" | 15 #include "llvm/Support/raw_ostream.h" |
16 #include "gtest/gtest.h" | 16 #include "gtest/gtest.h" |
17 | 17 |
38 fs::createUniqueDirectory("FileOutputBuffer-test", TestDirectory)); | 38 fs::createUniqueDirectory("FileOutputBuffer-test", TestDirectory)); |
39 } | 39 } |
40 | 40 |
41 // TEST 1: Verify commit case. | 41 // TEST 1: Verify commit case. |
42 SmallString<128> File1(TestDirectory); | 42 SmallString<128> File1(TestDirectory); |
43 File1.append("/file1"); | 43 File1.append("/file1"); |
44 { | 44 { |
45 ErrorOr<std::unique_ptr<FileOutputBuffer>> BufferOrErr = | 45 ErrorOr<std::unique_ptr<FileOutputBuffer>> BufferOrErr = |
46 FileOutputBuffer::create(File1, 8192); | 46 FileOutputBuffer::create(File1, 8192); |
47 ASSERT_NO_ERROR(BufferOrErr.getError()); | 47 ASSERT_NO_ERROR(BufferOrErr.getError()); |
48 std::unique_ptr<FileOutputBuffer> &Buffer = *BufferOrErr; | 48 std::unique_ptr<FileOutputBuffer> &Buffer = *BufferOrErr; |
77 errc::no_such_file_or_directory); | 77 errc::no_such_file_or_directory); |
78 ASSERT_NO_ERROR(fs::remove(File2.str())); | 78 ASSERT_NO_ERROR(fs::remove(File2.str())); |
79 | 79 |
80 // TEST 3: Verify sizing down case. | 80 // TEST 3: Verify sizing down case. |
81 SmallString<128> File3(TestDirectory); | 81 SmallString<128> File3(TestDirectory); |
82 File3.append("/file3"); | 82 File3.append("/file3"); |
83 { | 83 { |
84 ErrorOr<std::unique_ptr<FileOutputBuffer>> BufferOrErr = | 84 ErrorOr<std::unique_ptr<FileOutputBuffer>> BufferOrErr = |
85 FileOutputBuffer::create(File3, 8192000); | 85 FileOutputBuffer::create(File3, 8192000); |
86 ASSERT_NO_ERROR(BufferOrErr.getError()); | 86 ASSERT_NO_ERROR(BufferOrErr.getError()); |
87 std::unique_ptr<FileOutputBuffer> &Buffer = *BufferOrErr; | 87 std::unique_ptr<FileOutputBuffer> &Buffer = *BufferOrErr; |
98 ASSERT_EQ(File3Size, 8192000ULL); | 98 ASSERT_EQ(File3Size, 8192000ULL); |
99 ASSERT_NO_ERROR(fs::remove(File3.str())); | 99 ASSERT_NO_ERROR(fs::remove(File3.str())); |
100 | 100 |
101 // TEST 4: Verify file can be made executable. | 101 // TEST 4: Verify file can be made executable. |
102 SmallString<128> File4(TestDirectory); | 102 SmallString<128> File4(TestDirectory); |
103 File4.append("/file4"); | 103 File4.append("/file4"); |
104 { | 104 { |
105 ErrorOr<std::unique_ptr<FileOutputBuffer>> BufferOrErr = | 105 ErrorOr<std::unique_ptr<FileOutputBuffer>> BufferOrErr = |
106 FileOutputBuffer::create(File4, 8192, FileOutputBuffer::F_executable); | 106 FileOutputBuffer::create(File4, 8192, FileOutputBuffer::F_executable); |
107 ASSERT_NO_ERROR(BufferOrErr.getError()); | 107 ASSERT_NO_ERROR(BufferOrErr.getError()); |
108 std::unique_ptr<FileOutputBuffer> &Buffer = *BufferOrErr; | 108 std::unique_ptr<FileOutputBuffer> &Buffer = *BufferOrErr; |