Skip to content

Commit

Permalink
Documents Reorg Tests fix 3
Browse files Browse the repository at this point in the history
Signed-off-by: Lalith Kota <[email protected]>
  • Loading branch information
lalithkota committed Jan 18, 2025
1 parent 1345f8f commit 243de31
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 18 deletions.
4 changes: 2 additions & 2 deletions g2p_document_encryption/tests/test_document_file.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ def test_compute_data_encryption_enabled(
{
"name": "test.txt",
"backend_id": self.storage_backend.id,
"data": b"test_data",
"data": base64.b64encode(b"test_data"),
}
)

Expand All @@ -94,7 +94,7 @@ def test_compute_data_encryption_disabled(
{
"name": "test.txt",
"backend_id": self.storage_backend.id,
"data": b"test_data",
"data": base64.b64encode(b"test_data"),
}
)

Expand Down
4 changes: 2 additions & 2 deletions g2p_odk_importer/models/odk_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -237,8 +237,8 @@ def handle_addl_data(self, mapped_json):
def get_member_kind(self, record):
kind_as_str = record.get("kind", None)
if kind_as_str:
kind = self.env["g2p.group.membership.kind"].search([("name", "=", kind_as_str)], limit=1)
return kind
return self.env["g2p.group.membership.kind"].search([("name", "=", kind_as_str)], limit=1)
return None

def get_member_relationship(self, source_id, record):
member_relation = record.get("relationship_with_head", None)
Expand Down
31 changes: 22 additions & 9 deletions g2p_odk_importer/tests/test_odk_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@ def test_import_records_is_registrant(self, mock_get, mock_login):
self.odk_config.import_records(self.json_formatter, self.target_registry)

# Check if "is_registrant" and "is_group" were set correctly
partner = self.env["res.partner"].search([], limit=1)
partner = self.env["res.partner"].search([("is_registrant", "=", True)], limit=1)
self.assertTrue(partner.is_registrant)
self.assertFalse(partner.is_group)

Expand All @@ -216,7 +216,7 @@ def test_import_record_by_instance_id_is_registrant(self, mock_get, mock_login):
)

# Check if "is_registrant" and "is_group" were set correctly
partner = self.env["res.partner"].search([], limit=1)
partner = self.env["res.partner"].search([("is_registrant", "=", True)], limit=1)
self.assertTrue(partner.is_registrant)
self.assertFalse(partner.is_group)
self.assertEqual(partner.name, "Doe John")
Expand Down Expand Up @@ -259,7 +259,7 @@ def test_import_record_by_instance_id_success(self, mock_get, mock_login):
)

# Verify the created partner data had correct flags
partner = self.env["res.partner"].search([], limit=1)
partner = self.env["res.partner"].search([("is_registrant", "=", True)], limit=1)
self.assertTrue(partner.is_registrant)
self.assertFalse(partner.is_group)
self.assertEqual(partner.name, "Doe John")
Expand All @@ -284,8 +284,12 @@ def test_import_record_by_instance_id_group(self, mock_get, mock_login):
)

# Verify the created partner data had correct flags
group = self.env["res.partner"].search([("is_group", "=", True)], limit=1)
ind = self.env["res.partner"].search([("is_group", "=", False)], limit=1)
group = self.env["res.partner"].search(
[("is_registrant", "=", True), ("is_group", "=", True)], limit=1
)
ind = self.env["res.partner"].search(
[("is_registrant", "=", True), ("is_group", "=", False)], limit=1
)
self.assertTrue(group)
self.assertTrue(ind)
self.assertTrue(group.is_registrant)
Expand Down Expand Up @@ -316,7 +320,7 @@ def test_handle_group_membership(self, mock_get_individual_data, mock_get_kind,
self.odk_config.handle_one2many_fields(mapped_json, self.target_registry)

# Verify individual creation
partner = self.env["res.partner"].search([], limit=1)
partner = self.env["res.partner"].search([("is_registrant", "=", True)], limit=1)
self.assertEqual(partner.name, mock_individual_data["name"])
# self.assertEqual(partner.given_name, mock_individual_data["given_name"])
# self.assertEqual(partner.family_name, mock_individual_data["family_name"])
Expand All @@ -336,13 +340,22 @@ def test_handle_group_membership(self, mock_get_individual_data, mock_get_kind,
expected_individual_data = {"individual": partner.id, "kind": [(4, mock_kind_id)]}
self.assertEqual(mapped_json["group_membership_ids"][0][2], expected_individual_data)

def test_handle_group_membership_no_relationship(self):
@patch("odoo.addons.g2p_odk_importer.models.odk_config.OdkConfig.get_individual_data")
def test_handle_group_membership_no_relationship(self, mock_get_individual_data):
mock_get_individual_data.return_value = {
"name": "Test Person",
"is_registrant": True,
"is_group": False,
}

# Test handling when no relationship is found
mapped_json = {"group_membership_ids": [{"name": "Test Person"}]}

self.odk_config.handle_one2many_fields(mapped_json, self.target_registry)

ind = self.env["res.partner"].search([("is_group", "=", False)], limit=1)
ind = self.env["res.partner"].search(
[("is_registrant", "=", True), ("is_group", "=", False)], limit=1
)
# Verify only group membership was created without relationship
self.assertTrue("group_membership_ids" in mapped_json)
self.assertEqual(len(mapped_json.get("related_1_ids", [])), 0)
Expand Down Expand Up @@ -493,7 +506,7 @@ def test_get_submissions_invalid_response(self, mock_get, mock_login):

with self.assertLogs(level="ERROR") as log:
submissions = self.odk_config.get_submissions()
self.assertIn("Unexpected response format", log.output[0])
self.assertTrue(any("Unexpected response format" in log_out for log_out in log.output))
self.assertEqual(len(submissions), 0)

@patch("odoo.addons.g2p_odk_importer.models.odk_config.OdkConfig.login_get_session_token")
Expand Down
4 changes: 3 additions & 1 deletion g2p_odk_importer/tests/test_odk_import.py
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,9 @@ def test_process_instance_id_exception(self, mock_import_record):
self.odk_import._process_instance_id([instance_id])

# Verify logger was called with the exception details
self.assertIn("Failed to import instance ID test_instance_id", log.output[0])
self.assertTrue(
any("Failed to import instance ID test_instance_id" in log_out for log_out in log.output)
)

# Re-fetch the instance_id to check its updated status
updated_instance_id = self.env["odk.instance.id"].browse(instance_id.id)
Expand Down
6 changes: 3 additions & 3 deletions g2p_odk_user_mapping/tests/test_res_partner.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,16 +28,16 @@ def setUp(self):

@patch("odoo.addons.g2p_odk_importer.models.odk_config.OdkConfig.login_get_session_token")
@patch("requests.get")
def test_fetch_app_users_failure(self, mock_get, mock_login):
def test_fetch_odk_app_users_failure(self, mock_get, mock_login):
mock_get.return_value.status_code = 500

mock_login.return_value = "test_session_token"

with self.assertRaises(UserError):
self.partner._fetch_app_users()
self.partner._fetch_odk_app_users()

@patch("odoo.addons.g2p_odk_importer.models.odk_config.OdkConfig.login_get_session_token")
@patch("odoo.addons.g2p_odk_user_mapping.models.res_partner.ResPartner._fetch_app_users")
@patch("odoo.addons.g2p_odk_user_mapping.models.res_partner.ResPartner._fetch_odk_app_users")
def test_onchange_odk_config_id(self, mock_fetch, mock_login):
mock_fetch.return_value = [{"id": 1, "displayName": "User One"}]

Expand Down
1 change: 0 additions & 1 deletion g2p_registry_document_encryption/data/document_store.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">
<function
id="set_encryption_for_default_backend"
model="storage.backend"
name="set_encryption_stragies_to_registry"
eval="(ref('storage_backend.default_storage_backend'),)"
Expand Down

0 comments on commit 243de31

Please sign in to comment.