zoloto 0.0.1 copy "zoloto: ^0.0.1" to clipboard
zoloto: ^0.0.1 copied to clipboard

A set of utilities for simplifying golden (screenshot) test writing in Flutter.

example/lib/main.dart

import 'package:flutter/material.dart';

import 'src/models/bank_screen_data.dart';
import 'src/models/card_data.dart';
import 'src/models/transaction.dart';
import 'src/screens/bank_screen.dart';
import 'src/services/bank_service.dart';
import 'src/services/bank_service_scope.dart';

void main() {
  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData(
        textTheme: const TextTheme(
          displayLarge: TextStyle(fontFamily: 'Manrope'),
          displayMedium: TextStyle(fontFamily: 'Manrope'),
          displaySmall: TextStyle(fontFamily: 'Manrope'),
          headlineLarge: TextStyle(fontFamily: 'Manrope'),
          headlineMedium: TextStyle(fontFamily: 'Manrope'),
          headlineSmall: TextStyle(fontFamily: 'Manrope'),
          titleLarge: TextStyle(fontFamily: 'Manrope'),
          titleMedium: TextStyle(fontFamily: 'Manrope'),
          titleSmall: TextStyle(fontFamily: 'Manrope'),
          bodyLarge: TextStyle(fontFamily: 'Manrope'),
          bodyMedium: TextStyle(fontFamily: 'Manrope'),
          bodySmall: TextStyle(fontFamily: 'Manrope'),
          labelLarge: TextStyle(fontFamily: 'Manrope'),
          labelMedium: TextStyle(fontFamily: 'Manrope'),
          labelSmall: TextStyle(fontFamily: 'Manrope'),
        ),
      ),
      home: BankServiceScope(
        service: _createSampleService(),
        child: const BankScreen(),
      ),
    );
  }
}

BankService _createSampleService() {
  final service = BankService();
  service.setData(
    BankScreenDataLoaded(
      card: const CardData(
        maskedNumber: '•••• 4567',
        balance: '₽ 142 830,50',
        holderName: 'MARK ABRAMENKO',
        paymentSystem: PaymentSystem.mastercard,
      ),
      transactions: [
        const Transaction(
          name: 'Еда',
          amount: '−₽ 1 240',
          date: '13 мар',
          categoryIcon: Icons.restaurant,
        ),
        const Transaction(
          name: 'Перевод Лизе',
          amount: '−₽ 5 000',
          date: '12 мар',
          categoryIcon: Icons.send,
        ),
        const Transaction(
          name: 'Зарплата',
          amount: '+₽ 95 000',
          date: '10 мар',
          categoryIcon: Icons.account_balance,
        ),
        const Transaction(
          name: 'Spotify',
          amount: '−₽ 299',
          date: '9 мар',
          categoryIcon: Icons.music_note,
        ),
        const Transaction(
          name: 'Пятёрочка',
          amount: '−₽ 2 870',
          date: '8 мар',
          categoryIcon: Icons.shopping_cart,
        ),
        const Transaction(
          name: 'Аптека',
          amount: '−₽ 650',
          date: '7 мар',
          categoryIcon: Icons.local_pharmacy,
        ),
        const Transaction(
          name: 'Такси',
          amount: '−₽ 430',
          date: '6 мар',
          categoryIcon: Icons.local_taxi,
        ),
      ],
    ),
  );
  return service;
}
2
likes
160
points
208
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A set of utilities for simplifying golden (screenshot) test writing in Flutter.

Repository (GitHub)
View/report issues

Topics

#testing #golden-tests #screenshots

License

MIT (license)

Dependencies

flutter, flutter_test, meta

More

Packages that depend on zoloto