3838package oracle .jdbc .provider .observability ;
3939
4040import static org .junit .jupiter .api .Assertions .assertEquals ;
41+ import static org .junit .jupiter .api .Assertions .fail ;
4142
4243import java .lang .management .ManagementFactory ;
4344import java .util .HashMap ;
4748import javax .management .MBeanServer ;
4849import javax .management .ObjectName ;
4950
51+ import org .junit .jupiter .api .Assertions ;
5052import org .junit .jupiter .api .Test ;
5153
5254import oracle .jdbc .spi .OracleResourceProvider .Parameter ;
@@ -58,62 +60,67 @@ public class BackwardCompatibilityTest {
5860 @ Test
5961 public void testConfiguration () throws Exception {
6062
61- // System properties
62- System .setProperty ("oracle.jdbc.provider.opentelemetry.enabled" , "true" );
63- System .setProperty ("oracle.jdbc.provider.opentelemetry.sensitive-enabled" , "true" );
64-
65- TraceEventListenerProvider provider = new OpenTelemetryTraceEventListenerProvider ();
66- Map <Parameter , CharSequence > parameters = new HashMap <>();
67- provider .getParameters ().forEach (parameter -> {
68- parameters .put (parameter , (CharSequence )INSTANCE_NAME );
69- });
70- ObservabilityTraceEventListener listener = (ObservabilityTraceEventListener )provider .getTraceEventListener (parameters );
71- ObservabilityConfiguration configuration = listener .getObservabilityConfiguration ();
72-
73- assertEquals (true , configuration .getEnabled ());
74- assertEquals ("OTEL" , configuration .getEnabledTracers ());
75- assertEquals (true , configuration .getSensitiveDataEnabled ());
76-
77- assertEquals (1 , configuration .getEnabledTracersAsList ().size ());
78- assertEquals ("OTEL" , configuration .getEnabledTracersAsList ().get (0 ));
79-
80- // MBean
81- ObjectName objectName = listener .getMBeanObjectName ();
82- MBeanServer server = ManagementFactory .getPlatformMBeanServer ();
83- String enabled = server .getAttribute (objectName , "Enabled" ).toString ();
84- String enabledTracers = server .getAttribute (objectName , "EnabledTracers" ).toString ();
85- String sensitiveDataEnabled = server .getAttribute (objectName , "SensitiveDataEnabled" ).toString ();
86-
87- assertEquals (enabled , "true" );
88- assertEquals (enabledTracers , "OTEL" );
89- assertEquals (sensitiveDataEnabled , "true" );
90-
91- server .setAttribute (objectName , new Attribute ("Enabled" , false ));
92- server .setAttribute (objectName , new Attribute ("SensitiveDataEnabled" , false ));
93-
94- assertEquals (false , configuration .getEnabled ());
95- assertEquals (false , configuration .getSensitiveDataEnabled ());
96-
97- assertEquals ("OTEL" , configuration .getEnabledTracers ());
98- assertEquals (false , configuration .getSensitiveDataEnabled ());
99-
100- assertEquals (1 , configuration .getEnabledTracersAsList ().size ());
101- assertEquals ("OTEL" , configuration .getEnabledTracersAsList ().get (0 ));
102-
103- // Singleton
104- configuration .setEnabled (true );
105- configuration .setSensitiveDataEnabled (true );
106-
107- enabled = server .getAttribute (objectName , "Enabled" ).toString ();
108- enabledTracers = server .getAttribute (objectName , "EnabledTracers" ).toString ();
109- sensitiveDataEnabled = server .getAttribute (objectName , "SensitiveDataEnabled" ).toString ();
110-
111- assertEquals ("true" , enabled );
112- assertEquals ("OTEL" , enabledTracers );
113- assertEquals ("true" , sensitiveDataEnabled );
114-
115- assertEquals (1 , configuration .getEnabledTracersAsList ().size ());
116- assertEquals ("OTEL" , configuration .getEnabledTracersAsList ().get (0 ));
63+ try {
64+ // System properties
65+ System .setProperty ("oracle.jdbc.provider.opentelemetry.enabled" , "true" );
66+ System .setProperty ("oracle.jdbc.provider.opentelemetry.sensitive-enabled" , "true" );
67+
68+ TraceEventListenerProvider provider = new OpenTelemetryTraceEventListenerProvider ();
69+ Map <Parameter , CharSequence > parameters = new HashMap <>();
70+ provider .getParameters ().forEach (parameter -> {
71+ parameters .put (parameter , (CharSequence )INSTANCE_NAME );
72+ });
73+ ObservabilityTraceEventListener listener = (ObservabilityTraceEventListener )provider .getTraceEventListener (parameters );
74+ ObservabilityConfiguration configuration = listener .getObservabilityConfiguration ();
75+
76+ assertEquals (true , configuration .getEnabled ());
77+ assertEquals ("OTEL" , configuration .getEnabledTracers ());
78+ assertEquals (true , configuration .getSensitiveDataEnabled ());
79+
80+ assertEquals (1 , configuration .getEnabledTracersAsList ().size ());
81+ assertEquals ("OTEL" , configuration .getEnabledTracersAsList ().get (0 ));
82+
83+ // MBean
84+ ObjectName objectName = listener .getMBeanObjectName ();
85+ MBeanServer server = ManagementFactory .getPlatformMBeanServer ();
86+ String enabled = server .getAttribute (objectName , "Enabled" ).toString ();
87+ String enabledTracers = server .getAttribute (objectName , "EnabledTracers" ).toString ();
88+ String sensitiveDataEnabled = server .getAttribute (objectName , "SensitiveDataEnabled" ).toString ();
89+
90+ assertEquals (enabled , "true" );
91+ assertEquals (enabledTracers , "OTEL" );
92+ assertEquals (sensitiveDataEnabled , "true" );
93+
94+ server .setAttribute (objectName , new Attribute ("Enabled" , false ));
95+ server .setAttribute (objectName , new Attribute ("SensitiveDataEnabled" , false ));
96+
97+ assertEquals (false , configuration .getEnabled ());
98+ assertEquals (false , configuration .getSensitiveDataEnabled ());
99+
100+ assertEquals ("OTEL" , configuration .getEnabledTracers ());
101+ assertEquals (false , configuration .getSensitiveDataEnabled ());
102+
103+ assertEquals (1 , configuration .getEnabledTracersAsList ().size ());
104+ assertEquals ("OTEL" , configuration .getEnabledTracersAsList ().get (0 ));
105+
106+ // Singleton
107+ configuration .setEnabled (true );
108+ configuration .setSensitiveDataEnabled (true );
109+
110+ enabled = server .getAttribute (objectName , "Enabled" ).toString ();
111+ enabledTracers = server .getAttribute (objectName , "EnabledTracers" ).toString ();
112+ sensitiveDataEnabled = server .getAttribute (objectName , "SensitiveDataEnabled" ).toString ();
113+
114+ assertEquals ("true" , enabled );
115+ assertEquals ("OTEL" , enabledTracers );
116+ assertEquals ("true" , sensitiveDataEnabled );
117+
118+ assertEquals (1 , configuration .getEnabledTracersAsList ().size ());
119+ assertEquals ("OTEL" , configuration .getEnabledTracersAsList ().get (0 ));
120+ } catch (Throwable throwable ) {
121+ throwable .printStackTrace ();
122+ Assertions .fail ("Failed" , throwable );
123+ }
117124
118125 }
119126}
0 commit comments