mirror of
https://github.com/saymrwulf/pytorch.git
synced 2026-05-15 21:00:47 +00:00
Test Plan: revert-hammer
Differential Revision:
D33163841
Original commit changeset: e262b6d8c80a
Original Phabricator Diff: D33102715 (eb374de3f5)
fbshipit-source-id: 644216036a238a458f0a2198460b36d24fb035f8
39 lines
887 B
C++
39 lines
887 B
C++
#include <gtest/gtest.h>
|
|
|
|
#include <torch/csrc/monitor/events.h>
|
|
|
|
using namespace torch::monitor;
|
|
|
|
struct AggregatingEventHandler : public EventHandler {
|
|
std::vector<Event> events;
|
|
|
|
void handle(const Event& e) override {
|
|
events.emplace_back(e);
|
|
}
|
|
};
|
|
|
|
TEST(EventsTest, EventHandler) {
|
|
Event e;
|
|
e.type = "test";
|
|
e.message = "test message";
|
|
e.timestamp = std::chrono::system_clock::now();
|
|
e.metadata["string"] = "asdf";
|
|
e.metadata["double"] = 1234.5678;
|
|
e.metadata["int"] = 1234L;
|
|
e.metadata["bool"] = true;
|
|
|
|
// log to nothing
|
|
logEvent(e);
|
|
|
|
auto handler = std::make_shared<AggregatingEventHandler>();
|
|
registerEventHandler(handler);
|
|
|
|
logEvent(e);
|
|
ASSERT_EQ(handler->events.size(), 1);
|
|
ASSERT_EQ(e, handler->events.at(0));
|
|
|
|
unregisterEventHandler(handler);
|
|
logEvent(e);
|
|
// handler unregister, didn't log
|
|
ASSERT_EQ(handler->events.size(), 1);
|
|
}
|