public void BasicCreate()
        {
            var telemetryClient = new TelemetryClient();
            var aggregationSet  = new AggregationSet(telemetryClient, "CounterName");

            Assert.AreEqual("CounterName", aggregationSet.Name);
        }
        public void AggregationSetKeyCounterNameSingleProp()
        {
            var telemetryClient = new TelemetryClient();
            int key1            = AggregationSet.GetKey(telemetryClient, "Agg1");
            int key2            = AggregationSet.GetKey(telemetryClient, "Agg1");
            int key3            = AggregationSet.GetKey(telemetryClient, "Agg1");

            Assert.AreEqual(key1, key2);
            Assert.AreEqual(key2, key3);
        }
        public void AggregationSetKeyTelemetryClient()
        {
            var telemetryClient1 = new TelemetryClient();
            var telemetryClient2 = new TelemetryClient();
            int key1             = AggregationSet.GetKey(telemetryClient1, "Agg1");
            int key2             = AggregationSet.GetKey(telemetryClient1, "Agg1");
            int key3             = AggregationSet.GetKey(telemetryClient2, "Agg1");

            Assert.AreEqual(key1, key2);
            Assert.AreNotEqual(key2, key3);
        }
        public void BasicCreateCounterData()
        {
            const double value      = 15.5;
            string       prop1Value = "Prop1-Value";

            var telemetryClient = new TelemetryClient();
            var aggregationSet  = new AggregationSet(telemetryClient, "CounterName");

            aggregationSet.AddAggregation(value, prop1Value);

            Assert.AreEqual("CounterName", aggregationSet.Name);

            var aggregations = aggregationSet.RemoveAggregations();

            MetricsBag counterData = aggregations.Values.First();

            Assert.AreEqual("Prop1-Value", counterData.Property1);

            Assert.AreEqual(value, counterData.CalculateAggregation().Average);
        }