@@ -491,30 +491,21 @@ def test_scanpipe_views_project_details_charts_view(self):
491491 self .assertNotContains (response , 'id="dependency-charts"' )
492492 self .assertNotContains (response , 'id="resource-charts-charts"' )
493493
494- CodebaseResource .objects .create (
495- project = self .project1 ,
496- programming_language = "Python" ,
497- type = CodebaseResource .Type .FILE ,
498- )
494+ make_resource_file (self .project1 , path = "" , programming_language = "Python" )
499495
500496 with self .assertNumQueries (12 ):
501497 response = self .client .get (url )
502498 self .assertContains (response , '{"Python": 1}' )
503499
504500 def test_scanpipe_views_project_details_charts_compliance_alert (self ):
505501 url = reverse ("project_charts" , args = [self .project1 .slug ])
502+ resource = make_resource_file (self .project1 )
506503 expected = 'id="compliance_alert_chart"'
507504
508505 response = self .client .get (url )
509506 self .assertNotContains (response , expected )
510507
511- response = self .client .get (url )
512- self .assertNotContains (response , expected )
513-
514- resource = CodebaseResource .objects .create (
515- project = self .project1 ,
516- type = CodebaseResource .Type .FILE ,
517- )
508+ # Do not trigger the save() logic.
518509 CodebaseResource .objects .filter (id = resource .id ).update (
519510 compliance_alert = CodebaseResource .Compliance .ERROR
520511 )
@@ -523,6 +514,27 @@ def test_scanpipe_views_project_details_charts_compliance_alert(self):
523514 self .assertContains (response , expected )
524515 self .assertContains (response , '{"error": 1}' )
525516
517+ def test_scanpipe_views_project_details_charts_copyrights (self ):
518+ url = reverse ("project_charts" , args = [self .project1 .slug ])
519+
520+ make_resource_file (self .project1 )
521+ copyrights = [
522+ {
523+ "copyright" : "Copyright (c) nexB Inc. and others" ,
524+ "start_line" : 2 ,
525+ "end_line" : 2 ,
526+ }
527+ ]
528+ make_resource_file (self .project1 , copyrights = copyrights )
529+
530+ response = self .client .get (url )
531+ expected = (
532+ '<script id="file_copyrights" type="application/json">'
533+ '{"Copyright (c) nexB Inc. and others": 1, "(No value detected)": 1}'
534+ "</script>"
535+ )
536+ self .assertContains (response , expected )
537+
526538 def test_scanpipe_views_project_details_scan_summary_panels (self ):
527539 url = self .project1 .get_absolute_url ()
528540
@@ -1089,18 +1101,8 @@ def test_scanpipe_views_codebase_relation_diff_view(self):
10891101 self .data / "codebase" / "b.txt" ,
10901102 ]
10911103 copy_inputs (resource_files , self .project1 .codebase_path )
1092- resource1 = CodebaseResource .objects .create (
1093- project = self .project1 ,
1094- path = "a.txt" ,
1095- type = CodebaseResource .Type .FILE ,
1096- is_text = True ,
1097- )
1098- resource2 = CodebaseResource .objects .create (
1099- project = self .project1 ,
1100- path = "b.txt" ,
1101- type = CodebaseResource .Type .FILE ,
1102- is_text = True ,
1103- )
1104+ resource1 = make_resource_file (self .project1 , path = "a.txt" )
1105+ resource2 = make_resource_file (self .project1 , path = "b.txt" )
11041106 data = {
11051107 "from_path" : resource1 .path ,
11061108 "to_path" : resource2 .path ,
0 commit comments