Exemple #1
0
        public void Deparameterize_ThrowIfUnknownEnvironmentTest()
        {
            // Cause exception by specifying environment not used in the definition list
            string environment = "MadeUpEnvironment";

            Action act = () => GrafanaSerialization.DeparameterizeDashboard(_dashboardWithParameters, _parameters, environment);

            act.Should().Throw <ArgumentException>();
        }
Exemple #2
0
        public void Deparameterize_ThrowIfUnknownNameTest()
        {
            string environment = "Staging";

            // Cause exception by including only some of the definitions used in the dashboard
            IEnumerable <Parameter> parameters = _parameters.Take(1);

            Action act = () => GrafanaSerialization.DeparameterizeDashboard(_dashboardWithParameters, parameters, environment);

            act.Should().Throw <ArgumentException>();
        }
Exemple #3
0
        public void DeparamaterizeTest()
        {
            string environment = "Staging";

            JObject deparameterizedDashboard = GrafanaSerialization.DeparameterizeDashboard(_dashboardWithParameters, _parameters, environment);

            deparameterizedDashboard.SelectToken("$.dashboard.panels[0].targets[0].azureMonitor.resourceGroup")?.Value <string>()
            .Should().Be(_parameters[0].Values[environment]);
            deparameterizedDashboard.SelectToken("$.dashboard.panels[0].targets[0].azureMonitor.resourceName")?.Value <string>()
            .Should().Be(_parameters[1].Values[environment]);
            deparameterizedDashboard.SelectToken("$.dashboard.panels[0].targets[0].azureMonitor.duplicateTest")?.Value <string>()
            .Should().Be(_parameters[0].Values[environment]);
            deparameterizedDashboard.SelectToken("$.dashboard.panels[1].targets[0].azureLogAnalytics.resource")?.Value <string>()
            .Should().Be(_parameters[0].Values[environment]);
        }
Exemple #4
0
        public void Deparameterize_ThrowIfPlaceholderPresentTest()
        {
            // Cause exception by specifying a parameter with the placeholder string in it.
            string           environment = _environments[0];
            List <Parameter> parameters  = new List <Parameter>(_parameters);

            parameters.Add(new Parameter()
            {
                Name   = "PLACEHOLDER:12345678-1234-1234-1234-1234567890AB",
                Values = new Dictionary <string, string>()
                {
                    { environment, "MadeUpValue" }
                }
            });

            Action act = () => GrafanaSerialization.DeparameterizeDashboard(_dashboardWithParameters, parameters, environment);

            act.Should().Throw <ArgumentException>();
        }