From e7d9ed88bea012aa485e0f968231ae58b2224f8b Mon Sep 17 00:00:00 2001
From: Shreya Malviya <shreya.malviya@gmail.com>
Date: Tue, 26 Jul 2022 17:28:40 +0530
Subject: [PATCH] UT: Add Windows tests for CustomPBAConfiguration filename
 validation

---
 .../configuration/test_agent_configuration.py | 20 ++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/monkey/tests/unit_tests/common/configuration/test_agent_configuration.py b/monkey/tests/unit_tests/common/configuration/test_agent_configuration.py
index 962d2cd4c..1991e726e 100644
--- a/monkey/tests/unit_tests/common/configuration/test_agent_configuration.py
+++ b/monkey/tests/unit_tests/common/configuration/test_agent_configuration.py
@@ -69,25 +69,35 @@ def test_custom_pba_configuration_schema():
     assert config.windows_filename == WINDOWS_FILENAME
 
 
-def test_custom_pba_configuration_schema__empty_filename_allowed():
+def test_custom_pba_configuration_schema__empty_filenames_allowed():
     schema = CustomPBAConfigurationSchema()
 
     empty_filename_configuration = CUSTOM_PBA_CONFIGURATION.copy()
-    empty_filename_configuration.update({"linux_filename": ""})
+    empty_filename_configuration.update({"linux_filename": "", "windows_filename": ""})
 
     config = schema.load(empty_filename_configuration)
 
     assert config.linux_command == LINUX_COMMAND
     assert config.linux_filename == ""
     assert config.windows_command == WINDOWS_COMMAND
-    assert config.windows_filename == WINDOWS_FILENAME
+    assert config.windows_filename == ""
 
 
-def test_custom_pba_configuration_schema__invalid_filename():
+def test_custom_pba_configuration_schema__invalid_linux_filename():
     schema = CustomPBAConfigurationSchema()
 
     invalid_filename_configuration = CUSTOM_PBA_CONFIGURATION.copy()
-    invalid_filename_configuration["linux_filename"] = "???"
+    invalid_filename_configuration["linux_filename"] = "\\"
+
+    with pytest.raises(ValidationError):
+        schema.load(invalid_filename_configuration)
+
+
+def test_custom_pba_configuration_schema__invalid_windows_filename():
+    schema = CustomPBAConfigurationSchema()
+
+    invalid_filename_configuration = CUSTOM_PBA_CONFIGURATION.copy()
+    invalid_filename_configuration["windows_filename"] = "?"
 
     with pytest.raises(ValidationError):
         schema.load(invalid_filename_configuration)