flutter-testing — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited flutter-testing (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
import 'package:flutter_test/flutter_test.dart';
import 'package:mocktail/mocktail.dart';
import 'package:riverpod/riverpod.dart';
class MockAuthRepository extends Mock implements AuthRepository {}
void main() {
late MockAuthRepository mockRepo;
late ProviderContainer container;
setUp(() {
mockRepo = MockAuthRepository();
container = ProviderContainer(
overrides: [authRepositoryProvider.overrideWithValue(mockRepo)],
);
});
tearDown(() => container.dispose());
test('login basarili olunca user doner', () async {
final user = UserModel(id: '1', name: 'Test', email: '[email protected]');
when(() => mockRepo.login(any(), any())).thenAnswer((_) async => user);
final vm = container.read(authViewModelProvider.notifier);
await vm.login('[email protected]', '123456');
final state = container.read(authViewModelProvider);
expect(state.value, user);
});
test('login basarisiz olunca error state doner', () async {
when(() => mockRepo.login(any(), any())).thenThrow(Exception('Hata'));
final vm = container.read(authViewModelProvider.notifier);
await vm.login('[email protected]', 'wrong');
final state = container.read(authViewModelProvider);
expect(state.hasError, true);
});
}testWidgets('login butonu tiklayinca form submit eder', (tester) async {
await tester.pumpWidget(
ProviderScope(
overrides: [authViewModelProvider.overrideWith(() => FakeAuthVM())],
child: const MaterialApp(home: LoginScreen()),
),
);
await tester.enterText(find.byType(TextField).first, '[email protected]');
await tester.enterText(find.byType(TextField).last, '123456');
await tester.tap(find.text('Giris Yap'));
await tester.pumpAndSettle();
// Assert
expect(find.byType(CircularProgressIndicator), findsOneWidget);
});~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.