<commit_before>#    Licensed under the Apache License, Version 2.0 (the "License"); you may
#    not use this file except in compliance with the License. You may obtain
#    a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#    Unless required by applicable law or agreed to in writing, software
#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
#    License for the specific language governing permissions and limitations
#    under the License.

from tempest.api.orchestration import base
from tempest.common.utils import data_utils
from tempest import test


class TemplateYAMLTestJSON(base.BaseOrchestrationTest):
    template = """
HeatTemplateFormatVersion: '2012-12-12'
Description: |
  Template which creates only a new user
Resources:
  CfnUser:
    Type: AWS::IAM::User
"""

    @classmethod
    @test.safe_setup
    def setUpClass(cls):
        super(TemplateYAMLTestJSON, cls).setUpClass()
        cls.stack_name = data_utils.rand_name('heat')
        cls.stack_identifier = cls.create_stack(cls.stack_name, cls.template)
        cls.client.wait_for_stack_status(cls.stack_identifier,
                                         'CREATE_COMPLETE')
        cls.stack_id = cls.stack_identifier.split('/')[1]
        cls.parameters = {}

    @test.attr(type='gate')
    def test_show_template(self):
        """Getting template used to create the stack."""
        resp, template = self.client.show_template(self.stack_identifier)
        self.assertEqual('200', resp['status'])

    @test.attr(type='gate')
    def test_validate_template(self):
        """Validating template passing it content."""
        resp, parameters = self.client.validate_template(self.template,
                                                         self.parameters)
        self.assertEqual('200', resp['status'])


class TemplateAWSTestJSON(TemplateYAMLTestJSON):
    template = """
{
  "AWSTemplateFormatVersion" : "2010-09-09",
  "Description" : "Template which creates only a new user",
  "Resources" : {
    "CfnUser" : {
      "Type" : "AWS::IAM::User"
    }
  }
}
"""<commit_msg>Change heat templete<commit_after>#    Licensed under the Apache License, Version 2.0 (the "License"); you may
#    not use this file except in compliance with the License. You may obtain
#    a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#    Unless required by applicable law or agreed to in writing, software
#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
#    License for the specific language governing permissions and limitations
#    under the License.

from tempest.api.orchestration import base
from tempest.common.utils import data_utils
from tempest import test


class TemplateYAMLTestJSON(base.BaseOrchestrationTest):
    template = """
HeatTemplateFormatVersion: '2012-12-12'
Description: |
  Template which creates only a new cloud config
Resources:
  CfnCloudConfig:
    Type: OS::Heat::CloudConfig
    Properties:
      cloud_config: {}
"""

    @classmethod
    @test.safe_setup
    def setUpClass(cls):
        super(TemplateYAMLTestJSON, cls).setUpClass()
        cls.stack_name = data_utils.rand_name('heat')
        cls.stack_identifier = cls.create_stack(cls.stack_name, cls.template)
        cls.client.wait_for_stack_status(cls.stack_identifier,
                                         'CREATE_COMPLETE')
        cls.stack_id = cls.stack_identifier.split('/')[1]
        cls.parameters = {}

    @test.attr(type='gate')
    def test_show_template(self):
        """Getting template used to create the stack."""
        resp, template = self.client.show_template(self.stack_identifier)
        self.assertEqual('200', resp['status'])

    @test.attr(type='gate')
    def test_validate_template(self):
        """Validating template passing it content."""
        resp, parameters = self.client.validate_template(self.template,
                                                         self.parameters)
        self.assertEqual('200', resp['status'])


class TemplateAWSTestJSON(TemplateYAMLTestJSON):
    template = """
{
  "AWSTemplateFormatVersion" : "2010-09-09",
  "Description" : "Template which creates only a new cloud config",
  "Resources" : {
    "CfnCloudConfig" : {
      "Type" : "OS::Heat::CloudConfig",
      "Properties": {
        "cloud_config": {}
      }
    }
  }
}
"""
{'fraction_non_alphanumeric': 0.10476815398075241, 'fraction_numerical': 0.011811023622047244, 'mean_word_length': 2.9730668983492614, 'pattern_counts': {'":': 2, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1080288', 'n_tokens_mistral': 1299, 'n_tokens_neox': 1264, 'n_words': 348}