tests/tdef: tune logging, also match stderr

Change-Id: I7f346dfbec9e724e905d26990a978495d3a9b030
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 478dd48..8d510d5 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -466,6 +466,7 @@
 	     oap/oap_client_test.ok oap/oap_client_test.err		\
 	     vty/vty_transcript_test.vty				\
 	     tdef/tdef_test.ok \
+	     tdef/tdef_test.err \
 	     tdef/tdef_test_range_64bit.ok \
 	     tdef/tdef_vty_config_root_test.vty	\
 	     tdef/tdef_vty_config_subnode_test.vty \
@@ -676,7 +677,8 @@
 	gsm23236/gsm23236_test \
 		>$(srcdir)/gsm23236/gsm23236_test.ok
 	tdef/tdef_test \
-		>$(srcdir)/tdef/tdef_test.ok
+		>$(srcdir)/tdef/tdef_test.ok \
+		2>$(srcdir)/tdef/tdef_test.err
 	sockaddr_str/sockaddr_str_test \
 		>$(srcdir)/sockaddr_str/sockaddr_str_test.ok
 	use_count/use_count_test \
diff --git a/tests/tdef/tdef_test.c b/tests/tdef/tdef_test.c
index 13dcd01..1cc9c9c 100644
--- a/tests/tdef/tdef_test.c
+++ b/tests/tdef/tdef_test.c
@@ -469,9 +469,16 @@
 	osmo_init_logging2(ctx, NULL);
 
 	log_set_print_filename2(osmo_stderr_target, LOG_FILENAME_NONE);
+	log_set_print_level(osmo_stderr_target, 1);
 	log_set_print_category(osmo_stderr_target, 1);
+	log_set_print_category_hex(osmo_stderr_target, 0);
 	log_set_use_color(osmo_stderr_target, 0);
 
+	osmo_fsm_log_addr(false);
+	osmo_fsm_log_timeouts(true);
+
+	log_set_category_filter(osmo_stderr_target, DLGLOBAL, 1, LOGL_DEBUG);
+
 	OSMO_ASSERT(osmo_fsm_register(&test_tdef_fsm) == 0);
 
 	test_tdef_get(argc > 1);
diff --git a/tests/tdef/tdef_test.err b/tests/tdef/tdef_test.err
new file mode 100644
index 0000000..1a39b89
--- /dev/null
+++ b/tests/tdef/tdef_test.err
@@ -0,0 +1,25 @@
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){A}: Allocated
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){A}: State change to A (T1, 100s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){A}: State change to B (T2, 1s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){B}: State change to C (T3, 3000s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){C}: State change to D (T4, 100s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){D}: State change to E (X5, 1s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){E}: State change to F (X6, 1s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){F}: State change to G (T7, 50s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){G}: State change to H (T8, 300s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){H}: State change to I (T9, 300s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){I}: State change to J (T10, 1200s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){J}: State change to K (keeping T10, 1076.954s remaining)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){K}: State change to A (T1, 100s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){A}: State change to K (keeping T1, 76.954s remaining)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){K}: State change to A (T1, 100s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){A}: State change to L (keeping T1, 76.954s remaining)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){L}: State change to O (no timeout)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){O}: State change to L (T123, 1s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){L}: State change to O (no timeout)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){O}: State change to X (no timeout)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){X}: State change to Y (T666, 999s)
+DLGLOBAL DEBUG tdef_test(test_tdef_state_timeout){Y}: State change to Z (no timeout)
+DLGLOBAL ERROR tdef_test(test_tdef_state_timeout){Z}: transition to state B not permitted!
+DLGLOBAL ERROR tdef_test(test_tdef_state_timeout){Z}: transition to state C not permitted!
+DLGLOBAL ERROR tdef_test(test_tdef_state_timeout){Z}: transition to state D not permitted!
diff --git a/tests/testsuite.at b/tests/testsuite.at
index e88e0a8..40424e1 100644
--- a/tests/testsuite.at
+++ b/tests/testsuite.at
@@ -414,7 +414,8 @@
 AT_SETUP([tdef])
 AT_KEYWORDS([tdef])
 cat $abs_srcdir/tdef/tdef_test.ok > expout
-AT_CHECK([$abs_top_builddir/tests/tdef/tdef_test], [0], [expout], [ignore])
+cat $abs_srcdir/tdef/tdef_test.err > experr
+AT_CHECK([$abs_top_builddir/tests/tdef/tdef_test], [0], [expout], [experr])
 AT_CLEANUP
 
 AT_SETUP([sockaddr_str])