2021-06-21 23:09:35 +00:00
|
|
|
#include <gtest/gtest.h>
|
|
|
|
|
#include <test/cpp/jit/test_utils.h>
|
|
|
|
|
|
|
|
|
|
#include <torch/csrc/jit/jit_log.h>
|
2021-10-01 06:23:49 +00:00
|
|
|
#include <sstream>
|
2021-06-21 23:09:35 +00:00
|
|
|
|
|
|
|
|
namespace torch {
|
|
|
|
|
namespace jit {
|
|
|
|
|
|
2021-10-01 06:23:49 +00:00
|
|
|
TEST(JitLoggingTest, CheckSetLoggingLevel) {
|
2021-06-21 23:09:35 +00:00
|
|
|
::torch::jit::set_jit_logging_levels("file_to_test");
|
|
|
|
|
ASSERT_TRUE(::torch::jit::is_enabled(
|
|
|
|
|
"file_to_test.cpp", JitLoggingLevels::GRAPH_DUMP));
|
|
|
|
|
}
|
|
|
|
|
|
2021-10-01 06:23:49 +00:00
|
|
|
TEST(JitLoggingTest, CheckSetMultipleLogLevels) {
|
2021-06-21 23:09:35 +00:00
|
|
|
::torch::jit::set_jit_logging_levels("f1:>f2:>>f3");
|
|
|
|
|
ASSERT_TRUE(::torch::jit::is_enabled("f1.cpp", JitLoggingLevels::GRAPH_DUMP));
|
|
|
|
|
ASSERT_TRUE(
|
|
|
|
|
::torch::jit::is_enabled("f2.cpp", JitLoggingLevels::GRAPH_UPDATE));
|
|
|
|
|
ASSERT_TRUE(
|
|
|
|
|
::torch::jit::is_enabled("f3.cpp", JitLoggingLevels::GRAPH_DEBUG));
|
|
|
|
|
}
|
|
|
|
|
|
2021-10-01 06:23:49 +00:00
|
|
|
TEST(JitLoggingTest, CheckLoggingLevelAfterUnset) {
|
2021-06-21 23:09:35 +00:00
|
|
|
::torch::jit::set_jit_logging_levels("f1");
|
|
|
|
|
ASSERT_EQ("f1", ::torch::jit::get_jit_logging_levels());
|
|
|
|
|
::torch::jit::set_jit_logging_levels("invalid");
|
|
|
|
|
ASSERT_FALSE(
|
|
|
|
|
::torch::jit::is_enabled("f1.cpp", JitLoggingLevels::GRAPH_DUMP));
|
|
|
|
|
}
|
|
|
|
|
|
2021-10-01 06:23:49 +00:00
|
|
|
TEST(JitLoggingTest, CheckAfterChangingLevel) {
|
2021-06-21 23:09:35 +00:00
|
|
|
::torch::jit::set_jit_logging_levels("f1");
|
|
|
|
|
::torch::jit::set_jit_logging_levels(">f1");
|
|
|
|
|
ASSERT_TRUE(
|
|
|
|
|
::torch::jit::is_enabled("f1.cpp", JitLoggingLevels::GRAPH_UPDATE));
|
|
|
|
|
}
|
|
|
|
|
|
2021-10-01 06:23:49 +00:00
|
|
|
TEST(JitLoggingTest, CheckOutputStreamSetting) {
|
|
|
|
|
::torch::jit::set_jit_logging_levels("test_jit_logging_levels");
|
|
|
|
|
std::ostringstream test_stream;
|
|
|
|
|
::torch::jit::set_jit_logging_output_stream(test_stream);
|
2022-11-23 22:46:29 +00:00
|
|
|
/* Using JIT_LOG checks if this file has logging enabled with
|
|
|
|
|
is_enabled(__FILE__, level) making the test fail. since we are only testing
|
|
|
|
|
the OutputStreamSetting we can forcefully output to it directly.
|
|
|
|
|
*/
|
|
|
|
|
::torch::jit::get_jit_logging_output_stream() << ::torch::jit::jit_log_prefix(
|
|
|
|
|
::torch::jit::JitLoggingLevels::GRAPH_DUMP,
|
|
|
|
|
__FILE__,
|
|
|
|
|
__LINE__,
|
|
|
|
|
::c10::str("Message"));
|
2021-10-01 06:23:49 +00:00
|
|
|
ASSERT_TRUE(test_stream.str().size() > 0);
|
|
|
|
|
}
|
|
|
|
|
|
2021-06-21 23:09:35 +00:00
|
|
|
} // namespace jit
|
|
|
|
|
} // namespace torch
|