public void YamlSerialization_SerializeAndDeserializeValidConfigForAzureStorageQueue_SucceedsWithIdenticalOutput() { // Arrange var azureMetadata = GenerateBogusAzureMetadata(); var azureStorageQueueMetricDefinition = GenerateBogusAzureStorageQueueMetricDefinition(); var metricDefaults = GenerateBogusMetricDefaults(); var scrapingConfiguration = new Core.Scraping.Configuration.Model.MetricsDeclaration { AzureMetadata = azureMetadata, MetricDefaults = metricDefaults, Metrics = new List <MetricDefinition> { azureStorageQueueMetricDefinition } }; var configurationSerializer = new ConfigurationSerializer(NullLogger.Instance); // Act var serializedConfiguration = configurationSerializer.Serialize(scrapingConfiguration); var deserializedConfiguration = configurationSerializer.Deserialize(serializedConfiguration); // Assert Assert.NotNull(deserializedConfiguration); AssertAzureMetadata(deserializedConfiguration, azureMetadata); AssertMetricDefaults(deserializedConfiguration, metricDefaults); Assert.NotNull(deserializedConfiguration.Metrics); Assert.Single(deserializedConfiguration.Metrics); var deserializedMetricDefinition = deserializedConfiguration.Metrics.FirstOrDefault(); AssertMetricDefinition(deserializedMetricDefinition, azureStorageQueueMetricDefinition); var deserializedAzureStorageQueueMetricDefinition = deserializedMetricDefinition as StorageQueueMetricDefinition; AssertAzureStorageQueueMetricDefinition(deserializedAzureStorageQueueMetricDefinition, azureStorageQueueMetricDefinition, deserializedMetricDefinition); }
protected void AssertAzureMetadata(Core.Scraping.Configuration.Model.MetricsDeclaration deserializedConfiguration, AzureMetadata azureMetadata) { Assert.NotNull(deserializedConfiguration.AzureMetadata); Assert.Equal(azureMetadata.TenantId, deserializedConfiguration.AzureMetadata.TenantId); Assert.Equal(azureMetadata.ResourceGroupName, deserializedConfiguration.AzureMetadata.ResourceGroupName); Assert.Equal(azureMetadata.SubscriptionId, deserializedConfiguration.AzureMetadata.SubscriptionId); }
public void YamlSerialization_SerializeAndDeserializeValidConfigForServiceBus_SucceedsWithIdenticalOutput(string resourceGroupName, string defaultScrapingInterval, string metricScrapingInterval) { // Arrange var azureMetadata = GenerateBogusAzureMetadata(); var serviceBusMetricDefinition = GenerateBogusServiceBusMetricDefinition(resourceGroupName, metricScrapingInterval); var metricDefaults = GenerateBogusMetricDefaults(defaultScrapingInterval); var scrapingConfiguration = new Core.Scraping.Configuration.Model.MetricsDeclaration { AzureMetadata = azureMetadata, MetricDefaults = metricDefaults, Metrics = new List <MetricDefinition> { serviceBusMetricDefinition } }; var configurationSerializer = new ConfigurationSerializer(NullLogger.Instance); // Act var serializedConfiguration = configurationSerializer.Serialize(scrapingConfiguration); var deserializedConfiguration = configurationSerializer.Deserialize(serializedConfiguration); // Assert Assert.NotNull(deserializedConfiguration); AssertAzureMetadata(deserializedConfiguration, azureMetadata); AssertMetricDefaults(deserializedConfiguration, metricDefaults); Assert.NotNull(deserializedConfiguration.Metrics); Assert.Single(deserializedConfiguration.Metrics); var deserializedMetricDefinition = deserializedConfiguration.Metrics.FirstOrDefault(); AssertMetricDefinition(deserializedMetricDefinition, serviceBusMetricDefinition); var deserializedServiceBusMetricDefinition = deserializedMetricDefinition as ServiceBusQueueMetricDefinition; AssertServiceBusQueueMetricDefinition(deserializedServiceBusMetricDefinition, serviceBusMetricDefinition); }
protected void AssertMetricDefaults(Core.Scraping.Configuration.Model.MetricsDeclaration deserializedConfiguration, MetricDefaults metricDefaults) { var deserializedMetricDefaults = deserializedConfiguration.MetricDefaults; Assert.NotNull(deserializedMetricDefaults); Assert.NotNull(deserializedMetricDefaults.Aggregation); Assert.Equal(metricDefaults.Aggregation.Interval, deserializedMetricDefaults.Aggregation.Interval); }