@@ -785,18 +785,21 @@ def test_get_grouped_triples_with_rules(
785785 grouped_triples ["Person Name" ] = {
786786 "property" : "http://example.org/name" ,
787787 "triples" : [{"triple" : ("http://example.org/person1" , "http://example.org/name" , "mock_value" )}],
788+ "subjectClass" : "http://example.org/Person" ,
788789 "subjectShape" : "http://example.org/PersonShape" ,
789790 "objectShape" : None ,
790791 }
791792 grouped_triples ["Person Age" ] = {
792793 "property" : "http://example.org/age" ,
793794 "triples" : [{"triple" : ("http://example.org/person1" , "http://example.org/age" , "mock_value" )}],
795+ "subjectClass" : "http://example.org/Person" ,
794796 "subjectShape" : "http://example.org/PersonShape" ,
795797 "objectShape" : None ,
796798 }
797799 grouped_triples ["Person Knows" ] = {
798800 "property" : "http://example.org/knows" ,
799801 "triples" : [{"triple" : ("http://example.org/person1" , "http://example.org/knows" , "mock_value" )}],
802+ "subjectClass" : "http://example.org/Person" ,
800803 "subjectShape" : "http://example.org/PersonShape" ,
801804 "objectShape" : None ,
802805 }
@@ -817,12 +820,13 @@ def test_get_grouped_triples_no_rules(
817820 """Test getting grouped triples with no display rules."""
818821 self .get_display_rules_patch .return_value = []
819822
820- def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None ):
823+ def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None , subject_class = None ):
821824 display_name = prop_uri .split ("/" )[- 1 ]
822825 if display_name not in grouped_triples :
823826 grouped_triples [display_name ] = {
824827 "property" : prop_uri ,
825828 "triples" : [{"triple" : ("http://example.org/person1" , prop_uri , "mock_value" )}],
829+ "subjectClass" : self .highest_priority_class ,
826830 "subjectShape" : self .subject_shape ,
827831 "objectShape" : None ,
828832 }
@@ -869,12 +873,13 @@ def test_get_grouped_triples_no_matching_rule(
869873 # Mock find_matching_rule to return None (no matching rule)
870874 self .mock_find_matching_rule .return_value = None
871875
872- def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None ):
876+ def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None , subject_class = None ):
873877 display_name = prop_uri .split ("/" )[- 1 ]
874878 if display_name not in grouped_triples :
875879 grouped_triples [display_name ] = {
876880 "property" : prop_uri ,
877881 "triples" : [{"triple" : ("http://example.org/person1" , prop_uri , "mock_value" )}],
882+ "subjectClass" : self .highest_priority_class ,
878883 "subjectShape" : self .subject_shape ,
879884 "objectShape" : None ,
880885 }
@@ -909,12 +914,13 @@ def test_type_consistency_for_filtering_in_entity_about(
909914 # Simulate no display rules (the scenario where the bug occurred)
910915 self .get_display_rules_patch .return_value = []
911916
912- def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None ):
917+ def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None , subject_class = None ):
913918 display_name = prop_uri .split ("/" )[- 1 ]
914919 if display_name not in grouped_triples :
915920 grouped_triples [display_name ] = {
916921 "property" : prop_uri ,
917922 "triples" : [{"triple" : ("http://example.org/person1" , prop_uri , "mock_value" )}],
923+ "subjectClass" : self .highest_priority_class ,
918924 "subjectShape" : self .subject_shape ,
919925 "objectShape" : None ,
920926 }
@@ -976,13 +982,14 @@ def test_get_grouped_triples_with_intermediate_relation(
976982 "shouldBeDisplayed" : True ,
977983 }
978984
979- def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None ):
985+ def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None , subject_class = None ):
980986 if prop_uri == "http://example.org/knows" :
981987 display_name = "Knows"
982988 if display_name not in grouped_triples :
983989 grouped_triples [display_name ] = {
984990 "property" : prop_uri ,
985991 "triples" : [{"triple" : ("http://example.org/person1" , prop_uri , "mock_value" )}],
992+ "subjectClass" : subject_class ,
986993 "subjectShape" : subject_shape ,
987994 "objectShape" : "http://example.org/PersonShape" ,
988995 "intermediateRelation" : {"class" : "http://example.org/Relationship" },
@@ -1036,13 +1043,14 @@ def test_top_level_intermediate_relation_condition(self,
10361043 def mock_execute_sparql_query (query , subject , value ):
10371044 return "Label for " + str (value ), None
10381045
1039- def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None ):
1046+ def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None , subject_class = None ):
10401047 if prop_uri == "http://example.org/knows" :
10411048 display_name = "Knows"
10421049 if display_name not in grouped_triples :
10431050 grouped_triples [display_name ] = {
10441051 "property" : prop_uri ,
10451052 "triples" : [{"triple" : ("http://example.org/person1" , prop_uri , "mock_value" )}],
1053+ "subjectClass" : subject_class ,
10461054 "subjectShape" : subject_shape ,
10471055 "objectShape" : None ,
10481056 "intermediateRelation" : {"class" : "http://example.org/Relationship" },
@@ -1095,13 +1103,14 @@ def test_nested_intermediate_relation_condition(
10951103 "shouldBeDisplayed" : True ,
10961104 }
10971105
1098- def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None ):
1106+ def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None , subject_class = None ):
10991107 if prop_uri == "http://example.org/knows" :
11001108 display_name = "Knows (with relationship)"
11011109 if display_name not in grouped_triples :
11021110 grouped_triples [display_name ] = {
11031111 "property" : prop_uri ,
11041112 "triples" : [{"triple" : ("http://example.org/person1" , prop_uri , "mock_value" )}],
1113+ "subjectClass" : subject_class ,
11051114 "subjectShape" : subject_shape ,
11061115 "objectShape" : "http://example.org/PersonShape" ,
11071116 "intermediateRelation" : {"class" : "http://example.org/Relationship" },
@@ -1155,13 +1164,14 @@ def test_inherited_intermediate_relation_condition(
11551164 "shouldBeDisplayed" : True ,
11561165 }
11571166
1158- def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None ):
1167+ def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None , subject_class = None ):
11591168 if prop_uri == "http://example.org/knows" :
11601169 display_name = "Knows (with inherited relationship)"
11611170 if display_name not in grouped_triples :
11621171 grouped_triples [display_name ] = {
11631172 "property" : prop_uri ,
11641173 "triples" : [{"triple" : ("http://example.org/person1" , prop_uri , "mock_value" )}],
1174+ "subjectClass" : subject_class ,
11651175 "subjectShape" : subject_shape ,
11661176 "objectShape" : "http://example.org/PersonShape" ,
11671177 "intermediateRelation" : {"class" : "http://example.org/Relationship" },
@@ -1265,13 +1275,14 @@ def test_simple_display_name_with_intermediate_relation(
12651275
12661276 extended_predicates_info = mock_valid_predicates_info + ["http://example.org/simple" ]
12671277
1268- def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None ):
1278+ def mock_process_default_property (prop_uri , triples , grouped_triples , subject_shape = None , subject_class = None ):
12691279 if prop_uri == "http://example.org/simple" :
12701280 display_name = "Simple Property"
12711281 if display_name not in grouped_triples :
12721282 grouped_triples [display_name ] = {
12731283 "property" : prop_uri ,
12741284 "triples" : [{"triple" : ("http://example.org/person1" , prop_uri , "mock_value" )}],
1285+ "subjectClass" : subject_class ,
12751286 "subjectShape" : subject_shape ,
12761287 "objectShape" : "http://example.org/SimpleShape" ,
12771288 "intermediateRelation" : {"class" : "http://example.org/SimpleRelationship" },
0 commit comments