Пример #1
0
        public void WriteDefinitionWithTypeAndEnum()
        {
            StringWriter   stringWriter = new StringWriter();
            JsonTextWriter writer       = new JsonTextWriter(stringWriter);

            writer.QuoteChar = '\'';

            const string definitionName = "mockDefinition";
            JsonSchema   definition     = JsonSchema.CreateSingleValuedEnum("MockEnum1");

            ResourceSchemaWriter.WriteDefinition(writer, definitionName, definition);
            Assert.Equal("'mockDefinition':{'type':'string','enum':['MockEnum1']}", stringWriter.ToString());
        }
Пример #2
0
        public void WriteDefinitionWithEmptyDefinition()
        {
            StringWriter   stringWriter = new StringWriter();
            JsonTextWriter writer       = new JsonTextWriter(stringWriter);

            writer.QuoteChar = '\'';

            const string definitionName = "mockDefinition";
            JsonSchema   definition     = new JsonSchema();

            ResourceSchemaWriter.WriteDefinition(writer, definitionName, definition);
            Assert.Equal("'mockDefinition':{}", stringWriter.ToString());
        }
Пример #3
0
        public void WriteDefinitionWithEnumAndRequiredProperty()
        {
            StringWriter   stringWriter = new StringWriter();
            JsonTextWriter writer       = new JsonTextWriter(stringWriter);

            writer.QuoteChar = '\'';

            const string definitionName = "mockDefinition";
            JsonSchema   definition     = new JsonSchema()
                                          .AddEnum("MockEnum1", "MockEnum2")
                                          .AddProperty("mockPropertyName", new JsonSchema(), true);

            ResourceSchemaWriter.WriteDefinition(writer, definitionName, definition);
            Assert.Equal("'mockDefinition':{'enum':['MockEnum1','MockEnum2'],'properties':{'mockPropertyName':{'oneOf':[{},{'$ref':'https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression'}]}},'required':['mockPropertyName']}", stringWriter.ToString());
        }
Пример #4
0
        public void WriteDefinitionWithRequiredPropertyAndDescription()
        {
            StringWriter   stringWriter = new StringWriter();
            JsonTextWriter writer       = new JsonTextWriter(stringWriter);

            writer.QuoteChar = '\'';

            const string definitionName = "mockDefinition";
            JsonSchema   definition     = new JsonSchema();

            definition.AddProperty("mockPropertyName", new JsonSchema(), true);
            definition.Description = "MockDescription";

            ResourceSchemaWriter.WriteDefinition(writer, definitionName, definition);
            Assert.Equal("'mockDefinition':{'properties':{'mockPropertyName':{'oneOf':[{},{'$ref':'http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#/definitions/expression'}]}},'required':['mockPropertyName'],'description':'MockDescription'}", stringWriter.ToString());
        }
Пример #5
0
        public void WriteDefinitionWithTypeAndEnum()
        {
            StringWriter   stringWriter = new StringWriter();
            JsonTextWriter writer       = new JsonTextWriter(stringWriter);

            writer.QuoteChar = '\'';

            const string definitionName = "mockDefinition";
            JsonSchema   definition     = new JsonSchema()
            {
                JsonType = "MockType"
            }
            .AddEnum("MockEnum1", "MockEnum2");

            ResourceSchemaWriter.WriteDefinition(writer, definitionName, definition);
            Assert.Equal("'mockDefinition':{'type':'MockType','enum':['MockEnum1','MockEnum2']}", stringWriter.ToString());
        }