Commit 1e3ddab6 authored by Cédric OLIVIER's avatar Cédric OLIVIER
Browse files

add some tests

parent a518bbf8
Loading
Loading
Loading
Loading

src/tbc/__init__.py

0 → 100644
+0 −0

Empty file added.

+0 −1
Original line number Diff line number Diff line
@@ -80,4 +80,3 @@ def migrate():
    
    for variant in kicker.get("variants"):
        _migrate(variant, args.project_dir, var_prefix)

src/tests/__init__.py

0 → 100644
+0 −0

Empty file added.

+65 −0
Original line number Diff line number Diff line
import io
import sys
import yaml
from tbc.template_to_component import _migrate_var

class TestTemplateToComponent:

    def test_migrate_var_boolean(self):
        input_var = {
               "name": "PYTEST_ENABLED",
               "description": f"Disable PYTEST job",
               "type": "boolean",
           }    
        
        expected_output = {
            "pytest_enabled": {
                "description": "Disable PYTEST job",
                "type": "boolean",
                "default": False
            }
        }

        captured_output = io.StringIO()
        sys.stdout = captured_output

        # Appelle la fonction qui utilise print
        _migrate_var(input_var, "")

        # Récupère la sortie capturée
        captured_output = captured_output.getvalue().strip()

        # Restaure la sortie standard
        sys.stdout = sys.__stdout__

        # Effectue l'assertion
        assert yaml.safe_load(captured_output) == expected_output

    def test_migrate_var_multiline_comment(self):
        input_var = {
            "name": "AWS_ENVIRONMENT_URL",
            "type": "url",
            "description": "The default environments url _(only define for static environment URLs declaration)_\n\n_supports late variable expansion"
        }
        
        expected_output = {
            "environment_url": {
                "type": "url",
                "description": "The default environments url _(only define for static environment URLs declaration)_\n\n_supports late variable expansion"
            }
        }

        captured_output = io.StringIO()
        sys.stdout = captured_output

        # Appelle la fonction qui utilise print
        _migrate_var(input_var, "")

        # Récupère la sortie capturée
        captured_output = captured_output.getvalue().strip()

        # Restaure la sortie standard
        sys.stdout = sys.__stdout__

        # Effectue l'assertion
        assert yaml.safe_load(captured_output) == expected_output        
 No newline at end of file