Skip to content

Commit 844c27f

Browse files
enedclaude
andcommitted
fix: Simplify format_dart CI check to properly detect formatting issues
Remove the debugging workflow that was masking formatting failures. The issue was running 'dart format .' first (which modifies files) then 'dart format --set-exit-if-changed .' on already-formatted files. Now we run the check directly without modifying files first, so it will properly fail if there are formatting differences between local and CI. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
1 parent ecaab1e commit 844c27f

File tree

5 files changed

+50
-35
lines changed

5 files changed

+50
-35
lines changed

.github/workflows/format.yml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,7 @@ jobs:
1818
run: |
1919
echo "=== Git status before formatting ==="
2020
git status --porcelain
21-
echo "=== Running dart format ==="
22-
dart format .
23-
echo "=== Git diff after formatting ==="
24-
git diff
25-
echo "=== Git status after formatting ==="
26-
git status --porcelain
27-
echo "=== Now running with --set-exit-if-changed ==="
21+
echo "=== Checking if files need formatting ==="
2822
dart format --set-exit-if-changed .
2923
3024
format_kotlin:
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
include: package:flutter_lints/flutter.yaml
22

3+
formatter:
4+
page_width: 120
5+
36
linter:
47
rules:
58
- public_member_api_docs

workmanager/lib/src/workmanager_impl.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ class Workmanager {
8181
static final Workmanager _instance = Workmanager._internal();
8282

8383
static void _ensurePlatformImplementation() {
84-
if (WorkmanagerPlatform.instance is! WorkmanagerAndroid &&
84+
if (WorkmanagerPlatform.instance is! WorkmanagerAndroid &&
8585
WorkmanagerPlatform.instance is! WorkmanagerIOS) {
8686
if (Platform.isAndroid) {
8787
WorkmanagerPlatform.instance = WorkmanagerAndroid();

workmanager_android/test/workmanager_android_test.dart

Lines changed: 22 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,12 @@ void main() {
1313
setUp(() {
1414
workmanager = WorkmanagerAndroid();
1515
methodCalls = <MethodCall>[];
16-
16+
1717
// Mock the method channel
1818
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger
1919
.setMockMethodCallHandler(
20-
const MethodChannel('dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
20+
const MethodChannel(
21+
'dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
2122
(MethodCall methodCall) async {
2223
methodCalls.add(methodCall);
2324
return null;
@@ -28,7 +29,8 @@ void main() {
2829
tearDown(() {
2930
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger
3031
.setMockMethodCallHandler(
31-
const MethodChannel('dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
32+
const MethodChannel(
33+
'dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
3234
null,
3335
);
3436
});
@@ -56,8 +58,9 @@ void main() {
5658

5759
expect(methodCalls, hasLength(1));
5860
expect(methodCalls.first.method, 'registerOneOffTask');
59-
60-
final arguments = Map<String, dynamic>.from(methodCalls.first.arguments);
61+
62+
final arguments =
63+
Map<String, dynamic>.from(methodCalls.first.arguments);
6164
expect(arguments['uniqueName'], 'testTask');
6265
expect(arguments['taskName'], 'testTaskName');
6366
expect(arguments['inputData'], {'key': 'value'});
@@ -71,14 +74,16 @@ void main() {
7174
expect(arguments['backoffPolicy'], 'exponential');
7275
expect(arguments['backoffDelayInMilliseconds'], 60000);
7376
expect(arguments['tag'], 'testTag');
74-
expect(arguments['outOfQuotaPolicy'], 'run_as_non_expedited_work_request');
77+
expect(
78+
arguments['outOfQuotaPolicy'], 'run_as_non_expedited_work_request');
7579
});
7680

7781
test('should handle null optional parameters', () async {
7882
await workmanager.registerOneOffTask('testTask', 'testTaskName');
7983

8084
expect(methodCalls, hasLength(1));
81-
final arguments = Map<String, dynamic>.from(methodCalls.first.arguments);
85+
final arguments =
86+
Map<String, dynamic>.from(methodCalls.first.arguments);
8287
expect(arguments['inputData'], null);
8388
expect(arguments['initialDelaySeconds'], null);
8489
expect(arguments['networkType'], null);
@@ -112,8 +117,9 @@ void main() {
112117

113118
expect(methodCalls, hasLength(1));
114119
expect(methodCalls.first.method, 'registerPeriodicTask');
115-
116-
final arguments = Map<String, dynamic>.from(methodCalls.first.arguments);
120+
121+
final arguments =
122+
Map<String, dynamic>.from(methodCalls.first.arguments);
117123
expect(arguments['uniqueName'], 'periodicTask');
118124
expect(arguments['taskName'], 'periodicTaskName');
119125
expect(arguments['frequencySeconds'], 3600);
@@ -131,7 +137,8 @@ void main() {
131137
group('registerProcessingTask', () {
132138
test('should throw UnsupportedError on Android', () async {
133139
expect(
134-
() => workmanager.registerProcessingTask('processingTask', 'processingTaskName'),
140+
() => workmanager.registerProcessingTask(
141+
'processingTask', 'processingTaskName'),
135142
throwsA(isA<UnsupportedError>()),
136143
);
137144
});
@@ -171,7 +178,8 @@ void main() {
171178
test('should return result from method channel', () async {
172179
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger
173180
.setMockMethodCallHandler(
174-
const MethodChannel('dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
181+
const MethodChannel(
182+
'dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
175183
(MethodCall methodCall) async {
176184
if (methodCall.method == 'isScheduledByUniqueName') {
177185
return true;
@@ -188,7 +196,8 @@ void main() {
188196
test('should return false when method channel returns null', () async {
189197
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger
190198
.setMockMethodCallHandler(
191-
const MethodChannel('dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
199+
const MethodChannel(
200+
'dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
192201
(MethodCall methodCall) async => null,
193202
);
194203

@@ -207,4 +216,4 @@ void main() {
207216
});
208217
});
209218
});
210-
}
219+
}

workmanager_ios/test/workmanager_ios_test.dart

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,12 @@ void main() {
1313
setUp(() {
1414
workmanager = WorkmanagerIOS();
1515
methodCalls = <MethodCall>[];
16-
16+
1717
// Mock the method channel
1818
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger
1919
.setMockMethodCallHandler(
20-
const MethodChannel('dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
20+
const MethodChannel(
21+
'dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
2122
(MethodCall methodCall) async {
2223
methodCalls.add(methodCall);
2324
return null;
@@ -28,7 +29,8 @@ void main() {
2829
tearDown(() {
2930
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger
3031
.setMockMethodCallHandler(
31-
const MethodChannel('dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
32+
const MethodChannel(
33+
'dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
3234
null,
3335
);
3436
});
@@ -44,8 +46,9 @@ void main() {
4446

4547
expect(methodCalls, hasLength(1));
4648
expect(methodCalls.first.method, 'registerOneOffTask');
47-
48-
final arguments = Map<String, dynamic>.from(methodCalls.first.arguments);
49+
50+
final arguments =
51+
Map<String, dynamic>.from(methodCalls.first.arguments);
4952
expect(arguments['uniqueName'], 'testTask');
5053
expect(arguments['taskName'], 'testTaskName');
5154
expect(arguments['inputData'], {'key': 'value'});
@@ -56,7 +59,8 @@ void main() {
5659
await workmanager.registerOneOffTask('testTask', 'testTaskName');
5760

5861
expect(methodCalls, hasLength(1));
59-
final arguments = Map<String, dynamic>.from(methodCalls.first.arguments);
62+
final arguments =
63+
Map<String, dynamic>.from(methodCalls.first.arguments);
6064
expect(arguments['inputData'], null);
6165
expect(arguments['initialDelaySeconds'], null);
6266
});
@@ -73,8 +77,9 @@ void main() {
7377

7478
expect(methodCalls, hasLength(1));
7579
expect(methodCalls.first.method, 'registerPeriodicTask');
76-
77-
final arguments = Map<String, dynamic>.from(methodCalls.first.arguments);
80+
81+
final arguments =
82+
Map<String, dynamic>.from(methodCalls.first.arguments);
7883
expect(arguments['uniqueName'], 'periodicTask');
7984
expect(arguments['taskName'], 'periodicTaskName');
8085
expect(arguments['inputData'], {'periodic': 'data'});
@@ -97,8 +102,9 @@ void main() {
97102

98103
expect(methodCalls, hasLength(1));
99104
expect(methodCalls.first.method, 'registerProcessingTask');
100-
101-
final arguments = Map<String, dynamic>.from(methodCalls.first.arguments);
105+
106+
final arguments =
107+
Map<String, dynamic>.from(methodCalls.first.arguments);
102108
expect(arguments['uniqueName'], 'processingTask');
103109
expect(arguments['taskName'], 'processingTaskName');
104110
expect(arguments['inputData'], {'processing': 'data'});
@@ -150,7 +156,8 @@ void main() {
150156
test('should return result from method channel', () async {
151157
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger
152158
.setMockMethodCallHandler(
153-
const MethodChannel('dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
159+
const MethodChannel(
160+
'dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
154161
(MethodCall methodCall) async {
155162
if (methodCall.method == 'printScheduledTasks') {
156163
return 'Scheduled tasks: Task1, Task2';
@@ -164,10 +171,12 @@ void main() {
164171
expect(result, 'Scheduled tasks: Task1, Task2');
165172
});
166173

167-
test('should return default message when method channel returns null', () async {
174+
test('should return default message when method channel returns null',
175+
() async {
168176
TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger
169177
.setMockMethodCallHandler(
170-
const MethodChannel('dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
178+
const MethodChannel(
179+
'dev.fluttercommunity.workmanager/foreground_channel_work_manager'),
171180
(MethodCall methodCall) async => null,
172181
);
173182

@@ -177,4 +186,4 @@ void main() {
177186
});
178187
});
179188
});
180-
}
189+
}

0 commit comments

Comments
 (0)