Skip to content

Commit 90311f3

Browse files
committed
[build] retain explicit receipts from profile device qualification
Signed-off-by: Viwat Vchirawongkwin <viwat.v@chula.ac.th>
1 parent 8657e5a commit 90311f3

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

‎app/integration_test/draft_recovery_device_qualification.dart‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
library;
99

1010
import 'dart:io';
11+
import 'dart:convert';
1112
import 'package:flutter_riverpod/flutter_riverpod.dart';
1213
import 'package:flutter_test/flutter_test.dart';
1314
import 'package:integration_test/integration_test.dart';
@@ -32,6 +33,10 @@ void main() {
3233
IntegrationTestWidgetsFlutterBinding.ensureInitialized();
3334
testWidgets('platform durable recovery ($_phase)', (tester) async {
3435
final directory = await getApplicationSupportDirectory();
36+
final resultFile = File(
37+
'${directory.path}/qualification-$_phase-result.json',
38+
);
39+
if (await resultFile.exists()) await resultFile.delete();
3540
final file = File('${directory.path}/qualification-current-draft.sqlite');
3641
final repository = await DriftDraftRepository.open(file);
3742
try {
@@ -90,5 +95,16 @@ void main() {
9095
} finally {
9196
await repository.close();
9297
}
98+
// A profile-mode app may have no attached stdout/test driver. Emit a
99+
// bounded test-only receipt only after every assertion and store close.
100+
await resultFile.writeAsString(
101+
jsonEncode({
102+
'phase': _phase,
103+
'passed': true,
104+
'platform': Platform.operatingSystem,
105+
'completedAt': DateTime.now().toUtc().toIso8601String(),
106+
}),
107+
flush: true,
108+
);
93109
});
94110
}

0 commit comments

Comments
 (0)