38
38
from rest_framework .test import APIClient
39
39
40
40
from scanpipe .api .serializers import CodebaseResourceSerializer
41
+ from scanpipe .api .serializers import DiscoveredDependencySerializer
41
42
from scanpipe .api .serializers import DiscoveredPackageSerializer
42
43
from scanpipe .api .serializers import get_model_serializer
43
44
from scanpipe .api .serializers import get_serializer_fields
49
50
from scanpipe .models import Run
50
51
from scanpipe .pipes .input import copy_input
51
52
from scanpipe .pipes .output import JSONResultsGenerator
53
+ from scanpipe .tests import dependency_data1
52
54
from scanpipe .tests import package_data1
53
55
54
56
@@ -63,6 +65,10 @@ def setUp(self):
63
65
project = self .project1 , path = "filename.ext"
64
66
)
65
67
self .discovered_package1 = self .resource1 .create_and_add_package (package_data1 )
68
+ self .discovered_dependency1 = DiscoveredDependency .create_from_data (
69
+ self .project1 ,
70
+ dependency_data1
71
+ )
66
72
67
73
self .project_list_url = reverse ("project-list" )
68
74
self .project1_detail_url = reverse ("project-detail" , args = [self .project1 .uuid ])
@@ -83,6 +89,7 @@ def test_scanpipe_api_project_list(self):
83
89
self .assertNotContains (response , "error_count" )
84
90
self .assertNotContains (response , "resource_count" )
85
91
self .assertNotContains (response , "package_count" )
92
+ self .assertNotContains (response , "dependency_count" )
86
93
87
94
def test_scanpipe_api_project_list_filters (self ):
88
95
project2 = Project .objects .create (name = "pro2ject" , is_archived = True )
@@ -154,6 +161,7 @@ def test_scanpipe_api_project_detail(self):
154
161
self .assertEqual (0 , response .data ["error_count" ])
155
162
self .assertEqual (1 , response .data ["resource_count" ])
156
163
self .assertEqual (1 , response .data ["package_count" ])
164
+ self .assertEqual (1 , response .data ["dependency_count" ])
157
165
158
166
expected = {"" : 1 }
159
167
self .assertEqual (expected , response .data ["codebase_resources_summary" ])
@@ -163,6 +171,13 @@ def test_scanpipe_api_project_detail(self):
163
171
"with_modified_resources" : 0 ,
164
172
}
165
173
self .assertEqual (expected , response .data ["discovered_package_summary" ])
174
+ expected = {
175
+ "total" : 1 ,
176
+ "is_runtime" : 1 ,
177
+ "is_optional" : 0 ,
178
+ "is_resolved" : 0 ,
179
+ }
180
+ self .assertEqual (expected , response .data ["discovered_dependency_summary" ])
166
181
167
182
self .project1 .add_input_source (filename = "file1" , source = "uploaded" )
168
183
self .project1 .add_input_source (filename = "file2" , source = "https://download.url" )
@@ -273,7 +288,7 @@ def test_scanpipe_api_project_results_generator(self):
273
288
expected = ["dependencies" , "files" , "headers" , "packages" ]
274
289
self .assertEqual (expected , sorted (results .keys ()))
275
290
276
- self .assertEqual (0 , len (results ["dependencies" ]))
291
+ self .assertEqual (1 , len (results ["dependencies" ]))
277
292
self .assertEqual (1 , len (results ["headers" ]))
278
293
self .assertEqual (1 , len (results ["files" ]))
279
294
self .assertEqual (1 , len (results ["packages" ]))
@@ -287,7 +302,7 @@ def test_scanpipe_api_project_action_results(self):
287
302
expected = ["dependencies" , "files" , "headers" , "packages" ]
288
303
self .assertEqual (expected , sorted (results .keys ()))
289
304
290
- self .assertEqual (0 , len (results ["dependencies" ]))
305
+ self .assertEqual (1 , len (results ["dependencies" ]))
291
306
self .assertEqual (1 , len (results ["headers" ]))
292
307
self .assertEqual (1 , len (results ["files" ]))
293
308
self .assertEqual (1 , len (results ["packages" ]))
@@ -623,6 +638,9 @@ def test_scanpipe_api_serializer_get_model_serializer(self):
623
638
self .assertEqual (
624
639
DiscoveredPackageSerializer , get_model_serializer (DiscoveredPackage )
625
640
)
641
+ self .assertEqual (
642
+ DiscoveredDependencySerializer , get_model_serializer (DiscoveredDependency )
643
+ )
626
644
self .assertEqual (
627
645
CodebaseResourceSerializer , get_model_serializer (CodebaseResource )
628
646
)
0 commit comments