提交 ba276430 编写于 作者: W wxyu

MS-348 Add ResourceFactory Test


Former-commit-id: 19a40353320c2059090441120f93108ee89f1fc1
上级 031561d8
...@@ -7,6 +7,7 @@ Please mark all change in change log and use the ticket from JIRA. ...@@ -7,6 +7,7 @@ Please mark all change in change log and use the ticket from JIRA.
- MS-344 - Add TaskTable Test - MS-344 - Add TaskTable Test
- MS-345 - Add Node Test - MS-345 - Add Node Test
- MS-346 - Add some implementation of scheduler to solve compile error - MS-346 - Add some implementation of scheduler to solve compile error
- MS-348 - Add ResourceFactory Test
## Bug ## Bug
......
...@@ -14,11 +14,11 @@ namespace engine { ...@@ -14,11 +14,11 @@ namespace engine {
std::shared_ptr<Resource> std::shared_ptr<Resource>
ResourceFactory::Create(const std::string &name, const std::string &alias) { ResourceFactory::Create(const std::string &name, const std::string &alias) {
if (name == "disk") { if (name == "disk") {
return std::make_shared<CpuResource>(alias); return std::make_shared<DiskResource>(alias);
} else if (name == "cpu") { } else if (name == "cpu") {
return std::make_shared<CpuResource>(alias); return std::make_shared<CpuResource>(alias);
} else if (name == "gpu") { } else if (name == "gpu") {
return std::make_shared<CpuResource>(alias); return std::make_shared<GpuResource>(alias);
} else { } else {
return nullptr; return nullptr;
} }
......
...@@ -14,6 +14,17 @@ namespace milvus { ...@@ -14,6 +14,17 @@ namespace milvus {
namespace engine { namespace engine {
class DiskResource : public Resource { class DiskResource : public Resource {
public:
explicit
DiskResource(std::string name)
: Resource(std::move(name), ResourceType::DISK) {}
protected:
void
LoadFile(TaskPtr task) override {}
void
Process(TaskPtr task) override {}
}; };
} }
......
...@@ -14,6 +14,17 @@ namespace milvus { ...@@ -14,6 +14,17 @@ namespace milvus {
namespace engine { namespace engine {
class GpuResource : public Resource { class GpuResource : public Resource {
public:
explicit
GpuResource(std::string name)
: Resource(std::move(name), ResourceType::GPU) {}
protected:
void
LoadFile(TaskPtr task) override {}
void
Process(TaskPtr task) override {}
}; };
} }
......
#include "scheduler/ResourceFactory.h"
#include <gtest/gtest.h>
using namespace zilliz::milvus::engine;
TEST(resource_factory_test, create) {
auto disk = ResourceFactory::Create("disk");
auto cpu = ResourceFactory::Create("cpu");
auto gpu = ResourceFactory::Create("gpu");
ASSERT_TRUE(std::dynamic_pointer_cast<DiskResource>(disk));
ASSERT_TRUE(std::dynamic_pointer_cast<CpuResource>(cpu));
ASSERT_TRUE(std::dynamic_pointer_cast<GpuResource>(gpu));
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册