Ejemplo n.º 1
0
        public async Task Can_apply_ascii_metric_formatting()
        {
            // Arrange
            var counter = new CounterOptions {
                Context = "test", Name = "counter1"
            };
            var serializer = new MetricSnapshotSerializer();
            var fields     = new MetricFields();

            // Act
            _fixture.Metrics.Measure.Counter.Increment(counter);
            await using var sw = new StringWriter();
            await using (var writer = new MetricSnapshotTextWriter(sw))
            {
                serializer.Serialize(writer, _fixture.Metrics.Snapshot.Get(), fields);
            }

            // Assert
            sw.ToString().Should().Be(
                "# TIMESTAMP: 0\n# MEASUREMENT: [test] counter1\n# TAGS:\n                  mtype = counter\n                   unit = none\n# FIELDS:\n                  value = 1\n--------------------------------------------------------------\n");
        }
        public void Can_apply_ascii_metric_formatting_with_custom_name_formatter()
        {
            // Arrange
            var counter = new CounterOptions {
                Context = "test", Name = "counter1"
            };
            var serializer = new MetricSnapshotSerializer();

            // Act
            _fixture.Metrics.Measure.Counter.Increment(counter);
            using (var sw = new StringWriter())
            {
                using (var packer = new MetricSnapshotTextWriter(sw, metricNameFormatter: (context, name) => $"{context}---{name}"))
                {
                    serializer.Serialize(packer, _fixture.Metrics.Snapshot.Get());
                }

                // Assert
                sw.ToString().Should().Be(
                    "# TIMESTAMP: 0\n# MEASUREMENT: test---counter1\n# TAGS:\n                  mtype = counter\n                   unit = none\n# FIELDS:\n                  value = 1\n--------------------------------------------------------------\n");
            }
        }