< prev index next >

test/native/logging/test_logConfiguration.cpp

Print this page
rev 13288 : imported patch 8181917-refactor-ul-logstream


 346   LogConfiguration::configure_stdout(LogLevel::Off, false, LOG_TAGS(gc));
 347   EXPECT_FALSE(log_is_enabled(Error, gc));
 348   EXPECT_FALSE(log_is_enabled(Error, gc, heap));
 349   for (LogTagSet* ts = LogTagSet::first(); ts != NULL; ts = ts->next()) {
 350     EXPECT_EQ(LogLevel::Off, ts->level_for(&StdoutLog));
 351   }
 352 }
 353 
 354 static int Test_logconfiguration_subscribe_triggered = 0;
 355 static void Test_logconfiguration_subscribe_helper() {
 356   Test_logconfiguration_subscribe_triggered++;
 357 }
 358 
 359 TEST_VM_F(LogConfigurationTest, subscribe) {
 360   ResourceMark rm;
 361   Log(logging) log;
 362   set_log_config("stdout", "logging*=trace");
 363 
 364   LogConfiguration::register_update_listener(&Test_logconfiguration_subscribe_helper);
 365 
 366   LogConfiguration::parse_log_arguments("stdout", "logging=trace", NULL, NULL, log.error_stream());

 367   ASSERT_EQ(1, Test_logconfiguration_subscribe_triggered);
 368 
 369   LogConfiguration::configure_stdout(LogLevel::Debug, true, LOG_TAGS(gc));
 370   ASSERT_EQ(2, Test_logconfiguration_subscribe_triggered);
 371 
 372   LogConfiguration::disable_logging();
 373   ASSERT_EQ(3, Test_logconfiguration_subscribe_triggered);
 374 }
 375 
 376 TEST_VM_F(LogConfigurationTest, parse_invalid_tagset) {
 377   static const char* invalid_tagset = "logging+start+exit+safepoint+gc"; // Must not exist for test to function.
 378 
 379   // Make sure warning is produced if one or more configured tagsets are invalid
 380   ResourceMark rm;
 381   stringStream ss;
 382   bool success = LogConfiguration::parse_log_arguments("stdout", invalid_tagset, NULL, NULL, &ss);
 383   const char* msg = ss.as_string();
 384   EXPECT_TRUE(success) << "Should only cause a warning, not an error";
 385   EXPECT_TRUE(string_contains_substring(msg, "No tag set matches selection(s):"));
 386   EXPECT_TRUE(string_contains_substring(msg, invalid_tagset));




 346   LogConfiguration::configure_stdout(LogLevel::Off, false, LOG_TAGS(gc));
 347   EXPECT_FALSE(log_is_enabled(Error, gc));
 348   EXPECT_FALSE(log_is_enabled(Error, gc, heap));
 349   for (LogTagSet* ts = LogTagSet::first(); ts != NULL; ts = ts->next()) {
 350     EXPECT_EQ(LogLevel::Off, ts->level_for(&StdoutLog));
 351   }
 352 }
 353 
 354 static int Test_logconfiguration_subscribe_triggered = 0;
 355 static void Test_logconfiguration_subscribe_helper() {
 356   Test_logconfiguration_subscribe_triggered++;
 357 }
 358 
 359 TEST_VM_F(LogConfigurationTest, subscribe) {
 360   ResourceMark rm;
 361   Log(logging) log;
 362   set_log_config("stdout", "logging*=trace");
 363 
 364   LogConfiguration::register_update_listener(&Test_logconfiguration_subscribe_helper);
 365 
 366   LogStream ls(log.error());
 367   LogConfiguration::parse_log_arguments("stdout", "logging=trace", NULL, NULL, &ls);
 368   ASSERT_EQ(1, Test_logconfiguration_subscribe_triggered);
 369 
 370   LogConfiguration::configure_stdout(LogLevel::Debug, true, LOG_TAGS(gc));
 371   ASSERT_EQ(2, Test_logconfiguration_subscribe_triggered);
 372 
 373   LogConfiguration::disable_logging();
 374   ASSERT_EQ(3, Test_logconfiguration_subscribe_triggered);
 375 }
 376 
 377 TEST_VM_F(LogConfigurationTest, parse_invalid_tagset) {
 378   static const char* invalid_tagset = "logging+start+exit+safepoint+gc"; // Must not exist for test to function.
 379 
 380   // Make sure warning is produced if one or more configured tagsets are invalid
 381   ResourceMark rm;
 382   stringStream ss;
 383   bool success = LogConfiguration::parse_log_arguments("stdout", invalid_tagset, NULL, NULL, &ss);
 384   const char* msg = ss.as_string();
 385   EXPECT_TRUE(success) << "Should only cause a warning, not an error";
 386   EXPECT_TRUE(string_contains_substring(msg, "No tag set matches selection(s):"));
 387   EXPECT_TRUE(string_contains_substring(msg, invalid_tagset));


< prev index next >