@@ -1638,6 +1638,25 @@ def test_scanpipe_codebase_resource_model_compliance_alert_update_fields(self):
16381638 resource .refresh_from_db ()
16391639 self .assertEqual ("ok" , resource .compliance_alert )
16401640
1641+ def test_scanpipe_codebase_resource_model_parent_path_set_during_save (self ):
1642+ resource = self .project1 .codebaseresources .create (path = "" )
1643+ self .assertEqual ("" , resource .parent_path )
1644+
1645+ resource = self .project1 .codebaseresources .create (path = "." )
1646+ self .assertEqual ("" , resource .parent_path )
1647+
1648+ resource = self .project1 .codebaseresources .create (path = "file" )
1649+ self .assertEqual ("" , resource .parent_path )
1650+
1651+ resource = self .project1 .codebaseresources .create (path = "dir/" )
1652+ self .assertEqual ("" , resource .parent_path )
1653+
1654+ resource = self .project1 .codebaseresources .create (path = "dir1/dir2/" )
1655+ self .assertEqual ("dir1" , resource .parent_path )
1656+
1657+ resource = self .project1 .codebaseresources .create (path = "dir1/dir2/file" )
1658+ self .assertEqual ("dir1/dir2" , resource .parent_path )
1659+
16411660 @patch .object (scanpipe_app , "policies" , new = global_policies )
16421661 def test_scanpipe_can_compute_compliance_alert_for_license_exceptions (self ):
16431662 scanpipe_app .license_policies_index = license_policies_index
@@ -1646,16 +1665,6 @@ def test_scanpipe_can_compute_compliance_alert_for_license_exceptions(self):
16461665 resource .update (detected_license_expression = license_expression )
16471666 self .assertEqual ("warning" , resource .compute_compliance_alert ())
16481667
1649- def test_scanpipe_codebase_root_parent_path (self ):
1650- resource1 = self .project1 .codebaseresources .create (path = "file" )
1651-
1652- self .assertEqual ("" , resource1 .parent_path )
1653-
1654- def test_scanpipe_codebase_regular_parent_path (self ):
1655- resource2 = self .project1 .codebaseresources .create (path = "dir1/dir2/file" )
1656-
1657- self .assertEqual ("dir1/dir2" , resource2 .parent_path )
1658-
16591668 def test_scanpipe_scan_fields_model_mixin_methods (self ):
16601669 expected = [
16611670 "detected_license_expression" ,
@@ -2136,7 +2145,9 @@ def test_scanpipe_codebase_resource_model_walk_method(self):
21362145 path = "asgiref-3.3.0.whl-extract/asgiref/compatibility.py"
21372146 )
21382147 expected_parent_path = "asgiref-3.3.0.whl-extract/asgiref"
2139- self .assertEqual (expected_parent_path , asgiref_resource .parent_directory ())
2148+ self .assertEqual (
2149+ expected_parent_path , asgiref_resource .compute_parent_directory ()
2150+ )
21402151 self .assertTrue (asgiref_resource .has_parent ())
21412152 expected_parent = self .project_asgiref .codebaseresources .get (
21422153 path = "asgiref-3.3.0.whl-extract/asgiref"
0 commit comments