|
7 | 7 | CommitFactory, |
8 | 8 | OwnerFactory, |
9 | 9 | PullFactory, |
10 | | - ReportDetailsFactory, |
11 | | - ReportFactory, |
12 | 10 | RepositoryFactory, |
13 | | - RepositoryFlagFactory, |
14 | | - UploadFactory, |
15 | 11 | ) |
16 | 12 | from services.archive import ArchiveService |
17 | 13 | from services.comparison import ComparisonProxy |
@@ -97,144 +93,164 @@ def sample_report(): |
97 | 93 |
|
98 | 94 | @pytest.fixture |
99 | 95 | def sample_commit_with_report_already_carriedforward(dbsession, mock_storage): |
| 96 | + sessions_dict = { |
| 97 | + "0": { |
| 98 | + "N": None, |
| 99 | + "a": None, |
| 100 | + "c": None, |
| 101 | + "d": None, |
| 102 | + "e": None, |
| 103 | + "f": [], |
| 104 | + "j": None, |
| 105 | + "n": None, |
| 106 | + "p": None, |
| 107 | + "st": "uploaded", |
| 108 | + "t": None, |
| 109 | + "u": None, |
| 110 | + }, |
| 111 | + "1": { |
| 112 | + "N": None, |
| 113 | + "a": None, |
| 114 | + "c": None, |
| 115 | + "d": None, |
| 116 | + "e": None, |
| 117 | + "f": ["unit"], |
| 118 | + "j": None, |
| 119 | + "n": None, |
| 120 | + "p": None, |
| 121 | + "st": "uploaded", |
| 122 | + "t": None, |
| 123 | + "u": None, |
| 124 | + }, |
| 125 | + "2": { |
| 126 | + "N": None, |
| 127 | + "a": None, |
| 128 | + "c": None, |
| 129 | + "d": None, |
| 130 | + "e": None, |
| 131 | + "f": ["enterprise"], |
| 132 | + "j": None, |
| 133 | + "n": None, |
| 134 | + "p": None, |
| 135 | + "st": "carriedforward", |
| 136 | + "t": None, |
| 137 | + "u": None, |
| 138 | + "se": {"carriedforward_from": "123456789sha"}, |
| 139 | + }, |
| 140 | + "3": { |
| 141 | + "N": None, |
| 142 | + "a": None, |
| 143 | + "c": None, |
| 144 | + "d": None, |
| 145 | + "e": None, |
| 146 | + "f": ["integration"], |
| 147 | + "j": None, |
| 148 | + "n": None, |
| 149 | + "p": None, |
| 150 | + "st": "carriedforward", |
| 151 | + "t": None, |
| 152 | + "u": None, |
| 153 | + }, |
| 154 | + } |
| 155 | + file_headers = { |
| 156 | + "file_00.py": [ |
| 157 | + 0, |
| 158 | + [0, 14, 12, 0, 2, "85.71429", 0, 0, 0, 0, 0, 0, 0], |
| 159 | + [None, None, None, [0, 14, 12, 0, 2, "85.71429", 0, 0, 0, 0, 0, 0, 0]], |
| 160 | + None, |
| 161 | + ], |
| 162 | + "file_01.py": [ |
| 163 | + 1, |
| 164 | + [0, 11, 8, 0, 3, "72.72727", 0, 0, 0, 0, 0, 0, 0], |
| 165 | + [None, None, None, [0, 11, 8, 0, 3, "72.72727", 0, 0, 0, 0, 0, 0, 0]], |
| 166 | + None, |
| 167 | + ], |
| 168 | + "file_10.py": [ |
| 169 | + 10, |
| 170 | + [0, 10, 6, 1, 3, "60.00000", 0, 0, 0, 0, 0, 0, 0], |
| 171 | + [None, None, None, [0, 10, 6, 1, 3, "60.00000", 0, 0, 0, 0, 0, 0, 0]], |
| 172 | + None, |
| 173 | + ], |
| 174 | + "file_11.py": [ |
| 175 | + 11, |
| 176 | + [0, 23, 15, 1, 7, "65.21739", 0, 0, 0, 0, 0, 0, 0], |
| 177 | + [None, None, None, [0, 23, 15, 1, 7, "65.21739", 0, 0, 0, 0, 0, 0, 0]], |
| 178 | + None, |
| 179 | + ], |
| 180 | + "file_12.py": [ |
| 181 | + 12, |
| 182 | + [0, 14, 8, 0, 6, "57.14286", 0, 0, 0, 0, 0, 0, 0], |
| 183 | + [None, None, None, [0, 14, 8, 0, 6, "57.14286", 0, 0, 0, 0, 0, 0, 0]], |
| 184 | + None, |
| 185 | + ], |
| 186 | + "file_13.py": [ |
| 187 | + 13, |
| 188 | + [0, 15, 9, 0, 6, "60.00000", 0, 0, 0, 0, 0, 0, 0], |
| 189 | + [None, None, None, [0, 15, 9, 0, 6, "60.00000", 0, 0, 0, 0, 0, 0, 0]], |
| 190 | + None, |
| 191 | + ], |
| 192 | + "file_14.py": [ |
| 193 | + 14, |
| 194 | + [0, 23, 13, 0, 10, "56.52174", 0, 0, 0, 0, 0, 0, 0], |
| 195 | + [None, None, None, [0, 23, 13, 0, 10, "56.52174", 0, 0, 0, 0, 0, 0, 0]], |
| 196 | + None, |
| 197 | + ], |
| 198 | + "file_02.py": [ |
| 199 | + 2, |
| 200 | + [0, 13, 9, 0, 4, "69.23077", 0, 0, 0, 0, 0, 0, 0], |
| 201 | + [None, None, None, [0, 13, 9, 0, 4, "69.23077", 0, 0, 0, 0, 0, 0, 0]], |
| 202 | + None, |
| 203 | + ], |
| 204 | + "file_03.py": [ |
| 205 | + 3, |
| 206 | + [0, 16, 8, 0, 8, "50.00000", 0, 0, 0, 0, 0, 0, 0], |
| 207 | + [None, None, None, [0, 16, 8, 0, 8, "50.00000", 0, 0, 0, 0, 0, 0, 0]], |
| 208 | + None, |
| 209 | + ], |
| 210 | + "file_04.py": [ |
| 211 | + 4, |
| 212 | + [0, 10, 6, 0, 4, "60.00000", 0, 0, 0, 0, 0, 0, 0], |
| 213 | + [None, None, None, [0, 10, 6, 0, 4, "60.00000", 0, 0, 0, 0, 0, 0, 0]], |
| 214 | + None, |
| 215 | + ], |
| 216 | + "file_05.py": [ |
| 217 | + 5, |
| 218 | + [0, 14, 10, 0, 4, "71.42857", 0, 0, 0, 0, 0, 0, 0], |
| 219 | + [None, None, None, [0, 14, 10, 0, 4, "71.42857", 0, 0, 0, 0, 0, 0, 0]], |
| 220 | + None, |
| 221 | + ], |
| 222 | + "file_06.py": [ |
| 223 | + 6, |
| 224 | + [0, 9, 7, 1, 1, "77.77778", 0, 0, 0, 0, 0, 0, 0], |
| 225 | + [None, None, None, [0, 9, 7, 1, 1, "77.77778", 0, 0, 0, 0, 0, 0, 0]], |
| 226 | + None, |
| 227 | + ], |
| 228 | + "file_07.py": [ |
| 229 | + 7, |
| 230 | + [0, 11, 9, 0, 2, "81.81818", 0, 0, 0, 0, 0, 0, 0], |
| 231 | + [None, None, None, [0, 11, 9, 0, 2, "81.81818", 0, 0, 0, 0, 0, 0, 0]], |
| 232 | + None, |
| 233 | + ], |
| 234 | + "file_08.py": [ |
| 235 | + 8, |
| 236 | + [0, 11, 6, 0, 5, "54.54545", 0, 0, 0, 0, 0, 0, 0], |
| 237 | + [None, None, None, [0, 11, 6, 0, 5, "54.54545", 0, 0, 0, 0, 0, 0, 0]], |
| 238 | + None, |
| 239 | + ], |
| 240 | + "file_09.py": [ |
| 241 | + 9, |
| 242 | + [0, 14, 10, 1, 3, "71.42857", 0, 0, 0, 0, 0, 0, 0], |
| 243 | + [None, None, None, [0, 14, 10, 1, 3, "71.42857", 0, 0, 0, 0, 0, 0, 0]], |
| 244 | + None, |
| 245 | + ], |
| 246 | + } |
100 | 247 | commit = CommitFactory.create( |
| 248 | + _report_json={"sessions": sessions_dict, "files": file_headers}, |
101 | 249 | repository__owner__service="github", |
102 | 250 | repository__owner__integration_id="10000", |
103 | 251 | repository__using_integration=True, |
104 | 252 | ) |
105 | 253 | dbsession.add(commit) |
106 | | - |
107 | | - unit_flag = RepositoryFlagFactory(repository=commit.repository, flag_name="unit") |
108 | | - dbsession.add(unit_flag) |
109 | | - enterprise_flag = RepositoryFlagFactory( |
110 | | - repository=commit.repository, flag_name="enterprise" |
111 | | - ) |
112 | | - dbsession.add(enterprise_flag) |
113 | | - integration_flag = RepositoryFlagFactory( |
114 | | - repository=commit.repository, flag_name="integration" |
115 | | - ) |
116 | | - dbsession.add(integration_flag) |
117 | | - |
118 | | - report = ReportFactory(commit=commit) |
119 | | - dbsession.add(report) |
120 | | - |
121 | | - upload0 = UploadFactory(report=report, order_number=0, upload_type="uploaded") |
122 | | - dbsession.add(upload0) |
123 | | - upload1 = UploadFactory( |
124 | | - report=report, order_number=1, upload_type="uploaded", flags=[unit_flag] |
125 | | - ) |
126 | | - dbsession.add(upload1) |
127 | | - upload2 = UploadFactory( |
128 | | - report=report, |
129 | | - order_number=2, |
130 | | - upload_type="carriedforward", |
131 | | - upload_extras={"carriedforward_from": "123456789sha"}, |
132 | | - flags=[enterprise_flag], |
133 | | - ) |
134 | | - dbsession.add(upload2) |
135 | | - upload3 = UploadFactory( |
136 | | - report=report, |
137 | | - order_number=3, |
138 | | - upload_type="carriedforward", |
139 | | - flags=[integration_flag], |
140 | | - ) |
141 | | - dbsession.add(upload3) |
142 | | - |
143 | | - files_array = [ |
144 | | - { |
145 | | - "filename": "file_00.py", |
146 | | - "file_index": 0, |
147 | | - "file_totals": [0, 14, 12, 0, 2, "85.71429", 0, 0, 0, 0, 0, 0, 0], |
148 | | - "diff_totals": None, |
149 | | - }, |
150 | | - { |
151 | | - "filename": "file_01.py", |
152 | | - "file_index": 1, |
153 | | - "file_totals": [0, 11, 8, 0, 3, "72.72727", 0, 0, 0, 0, 0, 0, 0], |
154 | | - "diff_totals": None, |
155 | | - }, |
156 | | - { |
157 | | - "filename": "file_10.py", |
158 | | - "file_index": 10, |
159 | | - "file_totals": [0, 10, 6, 1, 3, "60.00000", 0, 0, 0, 0, 0, 0, 0], |
160 | | - "diff_totals": None, |
161 | | - }, |
162 | | - { |
163 | | - "filename": "file_11.py", |
164 | | - "file_index": 11, |
165 | | - "file_totals": [0, 23, 15, 1, 7, "65.21739", 0, 0, 0, 0, 0, 0, 0], |
166 | | - "diff_totals": None, |
167 | | - }, |
168 | | - { |
169 | | - "filename": "file_12.py", |
170 | | - "file_index": 12, |
171 | | - "file_totals": [0, 14, 8, 0, 6, "57.14286", 0, 0, 0, 0, 0, 0, 0], |
172 | | - "diff_totals": None, |
173 | | - }, |
174 | | - { |
175 | | - "filename": "file_13.py", |
176 | | - "file_index": 13, |
177 | | - "file_totals": [0, 15, 9, 0, 6, "60.00000", 0, 0, 0, 0, 0, 0, 0], |
178 | | - "diff_totals": None, |
179 | | - }, |
180 | | - { |
181 | | - "filename": "file_14.py", |
182 | | - "file_index": 14, |
183 | | - "file_totals": [0, 23, 13, 0, 10, "56.52174", 0, 0, 0, 0, 0, 0, 0], |
184 | | - "diff_totals": None, |
185 | | - }, |
186 | | - { |
187 | | - "filename": "file_02.py", |
188 | | - "file_index": 2, |
189 | | - "file_totals": [0, 13, 9, 0, 4, "69.23077", 0, 0, 0, 0, 0, 0, 0], |
190 | | - "diff_totals": None, |
191 | | - }, |
192 | | - { |
193 | | - "filename": "file_03.py", |
194 | | - "file_index": 3, |
195 | | - "file_totals": [0, 16, 8, 0, 8, "50.00000", 0, 0, 0, 0, 0, 0, 0], |
196 | | - "diff_totals": None, |
197 | | - }, |
198 | | - { |
199 | | - "filename": "file_04.py", |
200 | | - "file_index": 4, |
201 | | - "file_totals": [0, 10, 6, 0, 4, "60.00000", 0, 0, 0, 0, 0, 0, 0], |
202 | | - "diff_totals": None, |
203 | | - }, |
204 | | - { |
205 | | - "filename": "file_05.py", |
206 | | - "file_index": 5, |
207 | | - "file_totals": [0, 14, 10, 0, 4, "71.42857", 0, 0, 0, 0, 0, 0, 0], |
208 | | - "diff_totals": None, |
209 | | - }, |
210 | | - { |
211 | | - "filename": "file_06.py", |
212 | | - "file_index": 6, |
213 | | - "file_totals": [0, 9, 7, 1, 1, "77.77778", 0, 0, 0, 0, 0, 0, 0], |
214 | | - "diff_totals": None, |
215 | | - }, |
216 | | - { |
217 | | - "filename": "file_07.py", |
218 | | - "file_index": 7, |
219 | | - "file_totals": [0, 11, 9, 0, 2, "81.81818", 0, 0, 0, 0, 0, 0, 0], |
220 | | - "diff_totals": None, |
221 | | - }, |
222 | | - { |
223 | | - "filename": "file_08.py", |
224 | | - "file_index": 8, |
225 | | - "file_totals": [0, 11, 6, 0, 5, "54.54545", 0, 0, 0, 0, 0, 0, 0], |
226 | | - "diff_totals": None, |
227 | | - }, |
228 | | - { |
229 | | - "filename": "file_09.py", |
230 | | - "file_index": 9, |
231 | | - "file_totals": [0, 14, 10, 1, 3, "71.42857", 0, 0, 0, 0, 0, 0, 0], |
232 | | - "diff_totals": None, |
233 | | - }, |
234 | | - ] |
235 | | - details = ReportDetailsFactory(report=report, _files_array=files_array) |
236 | | - dbsession.add(details) |
237 | | - |
238 | 254 | dbsession.flush() |
239 | 255 |
|
240 | 256 | with open("tasks/tests/samples/sample_chunks_4_sessions.txt") as f: |
@@ -368,7 +384,7 @@ def sample_comparison_coverage_carriedforward( |
368 | 384 | dbsession.flush() |
369 | 385 |
|
370 | 386 | yaml_dict = {"flags": {"enterprise": {"carryforward": True}}} |
371 | | - report = ReportService(yaml_dict).build_report_from_commit(head_commit) |
| 387 | + report = ReportService(yaml_dict).get_existing_report_for_commit(head_commit) |
372 | 388 | report._totals = ( |
373 | 389 | None # need to reset the report to get it to recalculate totals correctly |
374 | 390 | ) |
|
0 commit comments