public void Initializer_DoesNotThrowOnNull_MetricTelemetry() { // Apply Initializer var initializer = new MetricSdkVersionTelemetryInitializer(); initializer.Initialize(null); // Nothing to validate. If an exception was thrown, test would fail. }
public void Initializer_IsIdempotent() { // Create a Metric telemetry with SDK version starting with "f_" string originalVersion = "f_azwapccore:2.9.1-26132"; var metricTelemetry = new MetricTelemetry("metric", 100.00); metricTelemetry.Context.GetInternalContext().SdkVersion = originalVersion; // Apply Initializer, more than once. var initializer = new MetricSdkVersionTelemetryInitializer(); initializer.Initialize(metricTelemetry); initializer.Initialize(metricTelemetry); // Validate that initializer does not modify the SDKVersion as it is already prefixed with "f_" var actualSdkVersion = metricTelemetry.Context.GetInternalContext().SdkVersion; Assert.Equal(originalVersion, actualSdkVersion); }
public void Initializer_DoesNotThrowOnEmptyOrNullVersion_MetricTelemetry() { // Create a Metric telemetry. var metricTelemetry = new MetricTelemetry("metric", 100.00); var initializer = new MetricSdkVersionTelemetryInitializer(); // Assign Empty Version metricTelemetry.Context.GetInternalContext().SdkVersion = string.Empty; // Apply Initializer initializer.Initialize(metricTelemetry); // Assign Null Version metricTelemetry.Context.GetInternalContext().SdkVersion = null; // Apply Initializer initializer.Initialize(metricTelemetry); // Nothing to validate. If an exception was thrown, test would fail. }
public void Initializer_AddsPrefix_MetricTelemetry() { // Create a Metric telemetry with some SDK version string originalVersion = "azwapccore:2.9.1-26132"; var metricTelemetry = new MetricTelemetry("metric", 100.00); metricTelemetry.Context.GetInternalContext().SdkVersion = originalVersion; // Apply Initializer var initializer = new MetricSdkVersionTelemetryInitializer(); initializer.Initialize(metricTelemetry); var actualSdkVersion = metricTelemetry.Context.GetInternalContext().SdkVersion; // Validate that "f_" is prefixed Assert.StartsWith("f_", actualSdkVersion); // And validate that original version is kept after "f_" Assert.EndsWith(originalVersion, actualSdkVersion); }
public void Initializer_OnlyModifiedMetricTelemetry() { // Create a RequestTelemetry with SDKVersion. var request = new RequestTelemetry { ResponseCode = "200", Name = "POST /api/somemethod", }; string originalSdkVersion = "azurefunctions:2.9.1-26132"; request.Context.GetInternalContext().SdkVersion = originalSdkVersion; // Apply initializer var initializer = new MetricSdkVersionTelemetryInitializer(); initializer.Initialize(request); // Validate that original version is un-touched, as this initializer is only expected to modify Metric telemetry Assert.Equal(originalSdkVersion, request.Context.GetInternalContext().SdkVersion); }