| #include <gtest/gtest.h> | |
| #include <torch/csrc/distributed/c10d/UCCUtils.hpp> | |
| #include <utility> | |
| #include <vector> | |
| using namespace c10d; | |
| TEST(ProcessGroupUCCTest, testTrim) { | |
| std::vector<std::pair<std::string, std::string>> tests = { | |
| {" allreduce ", "allreduce"}, | |
| {"\tallgather", "allgather"}, | |
| {"send\n", "send"}, | |
| }; | |
| for (auto entry : tests) { | |
| ASSERT_EQ(trim(entry.first), entry.second); | |
| } | |
| } | |
| TEST(ProcessGroupUCCTest, testToLower) { | |
| std::vector<std::pair<std::string, std::string>> tests = { | |
| {"AllReduce", "allreduce"}, | |
| {"ALLGATHER", "allgather"}, | |
| {"send", "send"}, | |
| }; | |
| for (auto entry : tests) { | |
| ASSERT_EQ(tolower(entry.first), entry.second); | |
| } | |
| } | |
| TEST(ProcessGroupUCCTest, testParseList) { | |
| std::string input = "\tAllReduce, ALLGATHER, send\n"; | |
| std::vector<std::string> expect{"allreduce", "allgather", "send"}; | |
| ASSERT_EQ(parse_list(input), expect); | |
| } |