예제 #1
0
        public void TestAddAPIMInstanceResource()
        {
            var document = Utils.GetEmbededFileContent("APIManagementTemplate.Test.Samples.StandardInstance-New.json");
            var template = DeploymentTemplate.FromString(document);
            var actual   = template.ToString();

            Assert.IsNotNull(actual);
        }
예제 #2
0
        public void ParameterizeBackends()
        {
            var document = Utils.GetEmbededFileContent("APIManagementTemplate.Test.Samples.MaloInstance-Preview-Export.json");
            var template = DeploymentTemplate.FromString(document);

            template.ParameterizeBackends();

            Assert.AreEqual("http://www.webservicex.net", template.parameters["backends_soap2rest_stock_url"].Value <string>("defaultValue"));
            Assert.AreEqual("[parameters('backends_soap2rest_stock_url')]", template.resources.Where(rr => rr.Value <string>("type") == "Microsoft.ApiManagement/service/backends" && rr.Value <string>("name") == "[parameters('backends_soap2rest_stock_name')]").First()["properties"].Value <string>("url"));
        }
예제 #3
0
        public void RemoveBuiltInGroups()
        {
            var document = Utils.GetEmbededFileContent("APIManagementTemplate.Test.Samples.StandardInstance-New.json");
            var template = DeploymentTemplate.FromString(document);

            template.RemoveResources_BuiltInGroups();

            Assert.AreEqual(0, template.resources.Where(rr => rr.Value <string>("type") == "Microsoft.ApiManagement/service/groups" && rr["properties"].Value <string>("type") == "system").Count());
            Assert.IsNull(template.parameters["groups_guests_name_1"]);
        }
예제 #4
0
        public void TestFromString()
        {
            var document = Utils.GetEmbededFileContent("APIManagementTemplate.Test.Samples.StandardInstance-New.json");

            Assert.IsNotNull(document);

            var template = DeploymentTemplate.FromString(document);

            Assert.IsNotNull(template);
            Assert.IsInstanceOfType(template, typeof(DeploymentTemplate));
        }
예제 #5
0
        public void ParameterizeAPIs()
        {
            var document = Utils.GetEmbededFileContent("APIManagementTemplate.Test.Samples.StandardInstance-New.json");
            var template = DeploymentTemplate.FromString(document);

            template.ParameterizeAPIs();

            Assert.AreEqual("http://echoapi.cloudapp.net/api", template.parameters["apis_echo_api_serviceUrl"].Value <string>("defaultValue"));
            Assert.AreEqual("[parameters('apis_echo_api_serviceUrl')]", template.resources.Where(rr => rr.Value <string>("type") == "Microsoft.ApiManagement/service/apis" && rr.Value <string>("name") == "[parameters('apis_echo_api_name')]").First()["properties"].Value <string>("serviceUrl"));
            Assert.AreEqual("1", template.parameters["apis_echo_api_apiRevision"].Value <string>("defaultValue"));
            Assert.AreEqual("[parameters('apis_echo_api_apiRevision')]", template.resources.Where(rr => rr.Value <string>("type") == "Microsoft.ApiManagement/service/apis" && rr.Value <string>("name") == "[parameters('apis_echo_api_name')]").First()["properties"].Value <string>("apiRevision"));
        }
예제 #6
0
        public void PREVIEWFixOperationsUrlTemplateParameters()
        {
            var document = Utils.GetEmbededFileContent("APIManagementTemplate.Test.Samples.MaloInstance-Preview-Export.json");
            var template = DeploymentTemplate.FromString(document);

            template.FixOperationsMissingUrlTemplateParameters();

            var oparation = template.resources.Where(rr => rr.Value <string>("type") == "Microsoft.ApiManagement/service/apis/operations" && rr.Value <string>("name") == "[parameters('operations_58a31f7c0647c01610394009_name')]").First();

            //check the urlTemplate
            Assert.AreEqual("/road/county/{countyNo}/{other}", oparation["properties"].Value <string>("urlTemplate"));

            //check that we have 2 templateParameters
            Assert.AreEqual(2, oparation["properties"]["templateParameters"].Count());


            Assert.AreEqual("countyNo", oparation["properties"]["templateParameters"][0].Value <string>("name"));
            Assert.AreEqual("other", oparation["properties"]["templateParameters"][1].Value <string>("name"));
        }