github-actions[bot] commented on code in PR #17246:
URL: https://github.com/apache/doris/pull/17246#discussion_r1122890571


##########
be/test/olap/tablet_cooldown_test.cpp:
##########
@@ -40,22 +42,139 @@ static StorageEngine* k_engine = nullptr;
 static const std::string kTestDir = "./ut_dir/tablet_cooldown_test";
 static constexpr int64_t kResourceId = 10000;
 static constexpr int64_t kStoragePolicyId = 10002;
+static constexpr int64_t kTabletId = 10005;
+static constexpr int64_t kReplicaId = 10009;
+static constexpr int64_t kSchemaHash = 270068377;
+
+using io::Path;
+
+static io::FileSystemSPtr s_fs;
 
-// remove DISABLED_ when need run this test
-#define TabletCooldownTest DISABLED_TabletCooldownTest
 class TabletCooldownTest : public testing::Test {
+    class FileWriterMock : public io::FileWriter {
+    public:
+        FileWriterMock(Path path) : io::FileWriter(std::move(path)) {
+            _local_file_writer = 
std::make_unique<io::LocalFileWriter>(fmt::format(

Review Comment:
   warning: no member named 'LocalFileWriter' in namespace 'doris::io' 
[clang-diagnostic-error]
   ```cpp
               _local_file_writer = 
std::make_unique<io::LocalFileWriter>(fmt::format(
                                                         ^
   ```
   



##########
be/test/olap/tablet_cooldown_test.cpp:
##########
@@ -40,22 +42,139 @@
 static const std::string kTestDir = "./ut_dir/tablet_cooldown_test";
 static constexpr int64_t kResourceId = 10000;
 static constexpr int64_t kStoragePolicyId = 10002;
+static constexpr int64_t kTabletId = 10005;
+static constexpr int64_t kReplicaId = 10009;
+static constexpr int64_t kSchemaHash = 270068377;
+
+using io::Path;
+
+static io::FileSystemSPtr s_fs;
 
-// remove DISABLED_ when need run this test
-#define TabletCooldownTest DISABLED_TabletCooldownTest
 class TabletCooldownTest : public testing::Test {
+    class FileWriterMock : public io::FileWriter {
+    public:
+        FileWriterMock(Path path) : io::FileWriter(std::move(path)) {
+            _local_file_writer = 
std::make_unique<io::LocalFileWriter>(fmt::format(
+                    "{}/{}", kTestDir, _path.string()));
+        }
+
+        ~FileWriterMock() {}
+
+        Status close() override {
+            return _local_file_writer->close();
+        }
+
+        Status abort() override {
+            return _local_file_writer->abort();
+        }
+
+        Status append(const Slice& data) override {
+            return _local_file_writer->append(data);
+        }
+
+        Status appendv(const Slice* data, size_t data_cnt) override {
+            return _local_file_writer->appendv(data, data_cnt);
+        }
+
+        Status write_at(size_t offset, const Slice& data) override {
+            return _local_file_writer->write_at(offset, data);
+        }
+
+        Status finalize() override {
+            return _local_file_writer->finalize();
+        }
+
+        size_t bytes_appended() const override { return 
_local_file_writer->bytes_appended(); }
+
+        io::FileSystemSPtr fs() const override { return s_fs; }
+    private:
+        std::unique_ptr<io::LocalFileWriter> _local_file_writer;

Review Comment:
   warning: private field '_local_file_writer' is not used 
[clang-diagnostic-unused-private-field]
   ```cpp
           std::unique_ptr<io::LocalFileWriter> _local_file_writer;
                                                ^
   ```
   



##########
be/test/olap/tablet_cooldown_test.cpp:
##########
@@ -40,22 +42,139 @@
 static const std::string kTestDir = "./ut_dir/tablet_cooldown_test";
 static constexpr int64_t kResourceId = 10000;
 static constexpr int64_t kStoragePolicyId = 10002;
+static constexpr int64_t kTabletId = 10005;
+static constexpr int64_t kReplicaId = 10009;
+static constexpr int64_t kSchemaHash = 270068377;
+
+using io::Path;
+
+static io::FileSystemSPtr s_fs;
 
-// remove DISABLED_ when need run this test
-#define TabletCooldownTest DISABLED_TabletCooldownTest
 class TabletCooldownTest : public testing::Test {
+    class FileWriterMock : public io::FileWriter {
+    public:
+        FileWriterMock(Path path) : io::FileWriter(std::move(path)) {
+            _local_file_writer = 
std::make_unique<io::LocalFileWriter>(fmt::format(
+                    "{}/{}", kTestDir, _path.string()));
+        }
+
+        ~FileWriterMock() {}
+
+        Status close() override {
+            return _local_file_writer->close();
+        }
+
+        Status abort() override {
+            return _local_file_writer->abort();
+        }
+
+        Status append(const Slice& data) override {
+            return _local_file_writer->append(data);
+        }
+
+        Status appendv(const Slice* data, size_t data_cnt) override {
+            return _local_file_writer->appendv(data, data_cnt);
+        }
+
+        Status write_at(size_t offset, const Slice& data) override {
+            return _local_file_writer->write_at(offset, data);
+        }
+
+        Status finalize() override {
+            return _local_file_writer->finalize();
+        }
+
+        size_t bytes_appended() const override { return 
_local_file_writer->bytes_appended(); }
+
+        io::FileSystemSPtr fs() const override { return s_fs; }
+    private:
+        std::unique_ptr<io::LocalFileWriter> _local_file_writer;

Review Comment:
   warning: no member named 'LocalFileWriter' in namespace 'doris::io' 
[clang-diagnostic-error]
   ```cpp
           std::unique_ptr<io::LocalFileWriter> _local_file_writer;
                               ^
   ```
   



##########
be/test/olap/tablet_cooldown_test.cpp:
##########
@@ -40,22 +42,139 @@
 static const std::string kTestDir = "./ut_dir/tablet_cooldown_test";
 static constexpr int64_t kResourceId = 10000;
 static constexpr int64_t kStoragePolicyId = 10002;
+static constexpr int64_t kTabletId = 10005;
+static constexpr int64_t kReplicaId = 10009;
+static constexpr int64_t kSchemaHash = 270068377;
+
+using io::Path;
+
+static io::FileSystemSPtr s_fs;
 
-// remove DISABLED_ when need run this test
-#define TabletCooldownTest DISABLED_TabletCooldownTest
 class TabletCooldownTest : public testing::Test {
+    class FileWriterMock : public io::FileWriter {
+    public:
+        FileWriterMock(Path path) : io::FileWriter(std::move(path)) {
+            _local_file_writer = 
std::make_unique<io::LocalFileWriter>(fmt::format(
+                    "{}/{}", kTestDir, _path.string()));
+        }
+
+        ~FileWriterMock() {}
+
+        Status close() override {
+            return _local_file_writer->close();
+        }
+
+        Status abort() override {
+            return _local_file_writer->abort();
+        }
+
+        Status append(const Slice& data) override {
+            return _local_file_writer->append(data);
+        }
+
+        Status appendv(const Slice* data, size_t data_cnt) override {
+            return _local_file_writer->appendv(data, data_cnt);
+        }
+
+        Status write_at(size_t offset, const Slice& data) override {
+            return _local_file_writer->write_at(offset, data);
+        }
+
+        Status finalize() override {
+            return _local_file_writer->finalize();
+        }
+
+        size_t bytes_appended() const override { return 
_local_file_writer->bytes_appended(); }
+
+        io::FileSystemSPtr fs() const override { return s_fs; }
+    private:
+        std::unique_ptr<io::LocalFileWriter> _local_file_writer;
+    };
+
+    class RemoteFileSystemMock : public io::RemoteFileSystem {
+        RemoteFileSystemMock(Path root_path, std::string&& id, 
io::FileSystemType type)
+                : RemoteFileSystem(std::move(root_path), std::move(id), type) {
+            _local_fs = io::LocalFileSystem::create(fmt::format("{}/{}", 
kTestDir,
+                                                                
_root_path.string()));
+        }
+        ~RemoteFileSystemMock() override {}
+
+        Status create_file(const Path& path, io::FileWriterPtr* writer) 
override {
+            *writer = std::make_unique<FileWriterMock>(path);

Review Comment:
   warning: no viable overloaded '=' [clang-diagnostic-error]
   ```cpp
               *writer = std::make_unique<FileWriterMock>(path);
                       ^
   ```
   **/usr/include/c++/11/bits/unique_ptr.h:370:** candidate function not 
viable: no known conversion from 
'unique_ptr<doris::TabletCooldownTest::FileWriterMock, 
default_delete<doris::TabletCooldownTest::FileWriterMock>>' to 
'unique_ptr<doris::io::FileWriter, default_delete<doris::io::FileWriter>>' for 
1st argument
   ```cpp
         unique_ptr& operator=(unique_ptr&&) = default;
                     ^
   ```
   **/usr/include/c++/11/bits/unique_ptr.h:385:** candidate template ignored: 
requirement 
'__and_<std::__and_<std::is_convertible<doris::TabletCooldownTest::FileWriterMock
 *, doris::io::FileWriter *>, 
std::__not_<std::is_array<doris::TabletCooldownTest::FileWriterMock>>>, 
std::is_assignable<std::default_delete<doris::io::FileWriter> &, 
std::default_delete<doris::TabletCooldownTest::FileWriterMock> &&>>::value' was 
not satisfied [with _Up = doris::TabletCooldownTest::FileWriterMock, _Ep = 
std::default_delete<doris::TabletCooldownTest::FileWriterMock>]
   ```cpp
        operator=(unique_ptr<_Up, _Ep>&& __u) noexcept
    ^
   ```
   **/usr/include/c++/11/bits/unique_ptr.h:394:** candidate function not 
viable: no known conversion from 'typename 
_MakeUniq<FileWriterMock>::__single_object' (aka 
'unique_ptr<doris::TabletCooldownTest::FileWriterMock>') to 'std::nullptr_t' 
for 1st argument
   ```cpp
         operator=(nullptr_t) noexcept
         ^
   ```
   **/usr/include/c++/11/bits/unique_ptr.h:468:** candidate function not 
viable: no known conversion from 
'unique_ptr<doris::TabletCooldownTest::FileWriterMock, 
default_delete<doris::TabletCooldownTest::FileWriterMock>>' to 'const 
unique_ptr<doris::io::FileWriter, default_delete<doris::io::FileWriter>>' for 
1st argument
   ```cpp
         unique_ptr& operator=(const unique_ptr&) = delete;
                     ^
   ```
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to