@@ -64,7 +64,9 @@ void main() {
6464 );
6565 }
6666
67- testWithProfile ('update state' , fn: () async {
67+ testWithProfile ('update state' , expectedLogMessages: [
68+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.0.0.tar.gz".' ,
69+ ], fn: () async {
6870 final mc = await _report ('oxygen' , '1.0.0' );
6971 final r1 = await _moderate ('oxygen' , '1.0.0' );
7072 expect (r1.output, {
@@ -109,7 +111,9 @@ void main() {
109111 expect (mc2! .getActionLog ().entries, hasLength (1 ));
110112 });
111113
112- testWithProfile ('clear moderation flag' , fn: () async {
114+ testWithProfile ('clear moderation flag' , expectedLogMessages: [
115+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.0.0.tar.gz".' ,
116+ ], fn: () async {
113117 final r1 = await _moderate ('oxygen' , '1.0.0' , state: true );
114118 expect (r1.output, {
115119 'package' : 'oxygen' ,
@@ -143,7 +147,11 @@ void main() {
143147 expect (optionsUpdates.isRetracted, true );
144148 });
145149
146- testWithProfile ('cannot moderate last visible version' , fn: () async {
150+ testWithProfile ('cannot moderate last visible version' ,
151+ expectedLogMessages: [
152+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.2.0.tar.gz".' ,
153+ 'SHOUT Deleting object from public bucket: "packages/oxygen-2.0.0-dev.tar.gz".' ,
154+ ], fn: () async {
147155 await _moderate ('oxygen' , '1.2.0' , state: true );
148156 final p1 = await packageBackend.lookupPackage ('oxygen' );
149157 expect (p1! .latestVersion, '1.0.0' );
@@ -164,7 +172,9 @@ void main() {
164172 );
165173 });
166174
167- testWithProfile ('can publish new version' , fn: () async {
175+ testWithProfile ('can publish new version' , expectedLogMessages: [
176+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.0.0.tar.gz".' ,
177+ ], fn: () async {
168178 await _moderate ('oxygen' , '1.0.0' , state: true );
169179
170180 final pubspecContent = generatePubspecYaml ('oxygen' , '3.0.0' );
@@ -174,7 +184,10 @@ void main() {
174184 expect (message.success.message, contains ('Successfully uploaded' ));
175185 });
176186
177- testWithProfile ('cannot re-publish moderated version' , fn: () async {
187+ testWithProfile ('cannot re-publish moderated version' ,
188+ expectedLogMessages: [
189+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.0.0.tar.gz".' ,
190+ ], fn: () async {
178191 await _moderate ('oxygen' , '1.0.0' , state: true );
179192
180193 final pubspecContent = generatePubspecYaml ('oxygen' , '1.0.0' );
@@ -189,7 +202,9 @@ void main() {
189202 });
190203
191204 testWithProfile ('archive file is removed from public buckets' ,
192- fn: () async {
205+ expectedLogMessages: [
206+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.0.0.tar.gz".' ,
207+ ], fn: () async {
193208 Future <Uint8List ?> expectStatusCode (int statusCode,
194209 {String version = '1.0.0' }) async {
195210 final publicUrls = [
@@ -232,7 +247,9 @@ void main() {
232247 });
233248
234249 testWithProfile ('versions file is updated in exported bucket' ,
235- fn: () async {
250+ expectedLogMessages: [
251+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.0.0.tar.gz".' ,
252+ ], fn: () async {
236253 Future <void > expectIncluded (String version, bool isIncluded) async {
237254 final prefixes = ['latest' , runtimeVersion];
238255 for (final prefix in prefixes) {
@@ -257,7 +274,9 @@ void main() {
257274 await expectIncluded ('1.0.0' , true );
258275 });
259276
260- testWithProfile ('search is updated with new version' , fn: () async {
277+ testWithProfile ('search is updated with new version' , expectedLogMessages: [
278+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.2.0.tar.gz".' ,
279+ ], fn: () async {
261280 await searchBackend.doCreateAndUpdateSnapshot (
262281 FakeGlobalLockClaim (clock.now ().add (Duration (seconds: 3 ))),
263282 concurrency: 2 ,
@@ -298,7 +317,10 @@ void main() {
298317
299318 testWithProfile (
300319 'moderated version is not visible in API (other version is)' ,
301- fn: () async {
320+ expectedLogMessages: [
321+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.0.0.tar.gz".' ,
322+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.2.0.tar.gz".' ,
323+ ], fn: () async {
302324 await _moderate ('oxygen' , '1.0.0' , state: true );
303325 final rs1 = await packageBackend.listVersionsCached ('oxygen' );
304326 expect (rs1.latest.version, '1.2.0' );
@@ -325,7 +347,9 @@ void main() {
325347 });
326348
327349 testWithProfile ('moderated versions are not displayed on versions tab' ,
328- fn: () async {
350+ expectedLogMessages: [
351+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.2.0.tar.gz".' ,
352+ ], fn: () async {
329353 await _moderate ('oxygen' , '1.2.0' , state: true );
330354 await expectHtmlResponse (
331355 await issueGet ('/packages/oxygen/versions' ),
@@ -339,7 +363,10 @@ void main() {
339363 );
340364 });
341365
342- testWithProfile ('moderated version pages are not displayed' , fn: () async {
366+ testWithProfile ('moderated version pages are not displayed' ,
367+ expectedLogMessages: [
368+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.2.0.tar.gz".' ,
369+ ], fn: () async {
343370 List <String > pagePaths (String version) {
344371 return [
345372 '/packages/oxygen/versions/$version ' ,
@@ -415,6 +442,9 @@ void main() {
415442 testWithProfile (
416443 'moderated version trigger new analysis' ,
417444 processJobsWithFakeRunners: true ,
445+ expectedLogMessages: [
446+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.2.0.tar.gz".' ,
447+ ],
418448 fn: () async {
419449 final score1 =
420450 await scoreCardBackend.getScoreCardData ('oxygen' , '1.2.0' );
@@ -468,7 +498,9 @@ void main() {
468498
469499 testWithProfile (
470500 'cleanup deletes datastore entities and canonical archive file' ,
471- fn: () async {
501+ expectedLogMessages: [
502+ 'SHOUT Deleting object from public bucket: "packages/oxygen-1.0.0.tar.gz".' ,
503+ ], fn: () async {
472504 // canonical file is present
473505 expect (
474506 await packageBackend.tarballStorage
0 commit comments