cubitFreezedTestTemplate function

String cubitFreezedTestTemplate(
  1. String name,
  2. String className
)

Implementation

String cubitFreezedTestTemplate(String name, String className) =>
    '''
import 'package:bloc_test/bloc_test.dart';
import 'package:flutter_test/flutter_test.dart';
import '../../../../../lib/features/$name/presentation/controller/${name}_cubit.dart';

void main() {
  group('${className}Cubit', () {
    late ${className}Cubit cubit;

    setUp(() {
      cubit = ${className}Cubit();
    });

    tearDown(() {
      cubit.close();
    });

    test('initial state should be initial', () {
      expect(cubit.state, const ${className}State.initial());
    });

    blocTest<${className}Cubit, ${className}State>(
      'emits [loading, loaded] when fetchData is called',
      build: () => ${className}Cubit(),
      act: (cubit) => cubit.fetchData(),
      expect: () => [
        const ${className}State.loading(),
        const ${className}State.loaded('Data loaded successfully'),
      ],
    );

    blocTest<${className}Cubit, ${className}State>(
      'emits [loading, error] when fetchData fails',
      build: () => ${className}Cubit(),
      act: (cubit) => cubit.fetchData(),
      expect: () => [
        const ${className}State.loading(),
        const ${className}State.error('Error occurred'),
      ],
    );
  });
}
''';