Repository: DevOps-MBSE/AaC (language: python)

Issue:
📋 [TASK] - Improve Tests in If True Then Empty Unit Tests
### Parent Feature

#844

### Task Description

As an AaC Test Developer, I want to expand the test coverage in my unit tests, so that I can have more confidence in the robustness of my code.

### Acceptance Criteria

- [ ] Update test logic as necessary to expand test coverage. 
  - [ ] Happy path and sad path at a minimum
- [ ] (Stretch) Incorporate a behave feature file for testing if applicable.
- [ ] Run `flake8` on the targeted test directory and address findings.
- [ ] Document any identified gaps.

### Unresolved questions

_No response_


Discussion / hints:

Fix patch:
diff --git a/python/features/plugin_examples/schema_plugin.aac b/python/features/plugin_examples/schema_plugin.aac
new file mode 100644
index 000000000..dc21356d2
--- /dev/null
+++ b/python/features/plugin_examples/schema_plugin.aac
@@ -0,0 +1,8 @@
+plugin:
+  name: plugin
+  package: aac.lang
+  schema_constraints:
+    - name: constraint name
+      arguments:
+        - name: constraint_arguments
+          type: string
diff --git a/python/features/plugin_examples/schema_plugin_bad.aac b/python/features/plugin_examples/schema_plugin_bad.aac
new file mode 100644
index 000000000..cb3d2aa9c
--- /dev/null
+++ b/python/features/plugin_examples/schema_plugin_bad.aac
@@ -0,0 +1,9 @@
+plugin:
+  name: plugin
+  package: aac.lang
+  schema_constraints:
+    - name: constraint name
+      universal: True
+      arguments:
+        - name: constraint_arguments
+          type: string
diff --git a/python/features/plugins/if_true_then_empty.feature b/python/features/plugins/if_true_then_empty.feature
new file mode 100644
index 000000000..f25f904f2
--- /dev/null
+++ b/python/features/plugins/if_true_then_empty.feature
@@ -0,0 +1,11 @@
+Feature:  If True Then Empty Evaluation
+
+    Scenario:  Check the Schema Plugin File
+        Given I have the "./features/plugin_examples/schema_plugin.aac" file
+        When I run the "check" command with arguments "./features/plugin_examples/schema_plugin.aac" and with no flags
+        Then I should receive a message that the command was successful
+
+    Scenario:  Check the Bad Schema Plugin File
+        Given I have the "./features/plugin_examples/schema_plugin_bad.aac" file
+        When I run the "check" command with arguments "./features/plugin_examples/schema_plugin_bad.aac" and with no flags
+        Then I should receive a message that the command was not successful
diff --git a/python/src/aac/__init__.py b/python/src/aac/__init__.py
index 761ebcb1a..c2678941c 100644
--- a/python/src/aac/__init__.py
+++ b/python/src/aac/__init__.py
@@ -12,7 +12,7 @@
 import logging
 import os
 
-__version__ = "0.4.38"
+__version__ = "0.4.39"
 
 __log_file_name__ = os.path.join(os.path.dirname(__file__), "aac.log")
 


Test patch:
diff --git a/python/tests/test_aac/plugins/if_true_then_empty/test_if_true_then_empty.py b/python/tests/test_aac/plugins/if_true_then_empty/test_if_true_then_empty.py
index f48ecfb90..e9ad041b1 100644
--- a/python/tests/test_aac/plugins/if_true_then_empty/test_if_true_then_empty.py
+++ b/python/tests/test_aac/plugins/if_true_then_empty/test_if_true_then_empty.py
@@ -6,7 +6,7 @@
 
 class TestIfTrueThenEmpty(TestCase):
     def test_if_true_then_empty(self):
-        
+
         context = LanguageContext()
 
         test_schema = context.parse_and_load(TEST_SCHEMA)
@@ -17,6 +17,12 @@ def test_if_true_then_empty(self):
             self.assertTrue(result.is_success(), f"Expected success for {good_data[0].name}")
             context.remove_definitions(good_data)
 
+    def test_if_true_then_empty_fail(self):
+
+        context = LanguageContext()
+
+        test_schema = context.parse_and_load(TEST_SCHEMA)
+
         for bad in [BAD_DATA_1]:
             bad_data = context.parse_and_load(bad)
             result = if_true_then_empty(bad_data[0].instance, test_schema[0], None, "alpha", "beta")