6161from onadata .libs .serializers .metadata_serializer import MetaDataSerializer
6262from onadata .libs .serializers .project_serializer import (
6363 BaseProjectSerializer ,
64+ ProjectPrivateSerializer ,
6465 ProjectSerializer ,
6566)
6667from onadata .libs .utils .cache_tools import PROJ_OWNER_CACHE , safe_key
@@ -309,11 +310,14 @@ def test_projects_get(self):
309310 self .assertEqual (response .status_code , 200 )
310311
311312 # test serialized data
312- serializer = ProjectSerializer (self .project , context = {"request" : request })
313- self .assertEqual (response .data , serializer .data )
313+ public_data = ProjectSerializer (self .project , context = {"request" : request }).data
314+ private_data = ProjectPrivateSerializer (
315+ self .project , context = {"request" : request }
316+ ).data
317+ self .assertEqual (response .data , {** public_data , ** private_data })
314318
315319 self .assertIsNotNone (self .project_data )
316- self .assertEqual (response .data , self .project_data )
320+ self .assertEqual (response .data , { ** self .project_data , ** private_data } )
317321 res_user_props = list (response .data ["users" ][0 ])
318322 res_user_props .sort ()
319323 self .assertEqual (res_user_props , user_props )
@@ -1678,7 +1682,10 @@ def test_cache_updated_on_project_update(self):
16781682 self .assertEqual (response .status_code , 200 )
16791683 self .assertEqual (False , response .data .get ("public" ))
16801684 cached_project = cache .get (f"{ PROJ_OWNER_CACHE } { self .project .pk } " )
1681- self .assertEqual (cached_project , response .data )
1685+ # Response without user specific fields
1686+ res_wo_private = {** response .data }
1687+ res_wo_private .pop ("current_user_role" )
1688+ self .assertEqual (cached_project , res_wo_private )
16821689
16831690 projectid = self .project .pk
16841691 data = {"public" : True }
@@ -1694,7 +1701,10 @@ def test_cache_updated_on_project_update(self):
16941701 self .assertEqual (response .status_code , 200 )
16951702 self .assertEqual (True , response .data .get ("public" ))
16961703 cached_project = cache .get (f"{ PROJ_OWNER_CACHE } { self .project .pk } " )
1697- self .assertEqual (cached_project , response .data )
1704+ # Response without user specific fields
1705+ res_wo_private = {** response .data }
1706+ res_wo_private .pop ("current_user_role" )
1707+ self .assertEqual (cached_project , res_wo_private )
16981708
16991709 def test_project_put_updates (self ):
17001710 self ._project_create ()
0 commit comments