// Mocks generated by Mockito 5.4.6 from annotations
// in unionflow_mobile_apps/test/features/adhesions/bloc/adhesions_bloc_test.dart.
// Do not manually edit this file.

// ignore_for_file: no_leading_underscores_for_library_prefixes
import 'dart:async' as _i4;

import 'package:mockito/mockito.dart' as _i1;
import 'package:unionflow_mobile_apps/features/adhesions/data/models/adhesion_model.dart'
    as _i2;
import 'package:unionflow_mobile_apps/features/adhesions/data/repositories/adhesion_repository.dart'
    as _i3;

// ignore_for_file: type=lint
// ignore_for_file: avoid_redundant_argument_values
// ignore_for_file: avoid_setters_without_getters
// ignore_for_file: comment_references
// ignore_for_file: deprecated_member_use
// ignore_for_file: deprecated_member_use_from_same_package
// ignore_for_file: implementation_imports
// ignore_for_file: invalid_use_of_visible_for_testing_member
// ignore_for_file: must_be_immutable
// ignore_for_file: prefer_const_constructors
// ignore_for_file: unnecessary_parenthesis
// ignore_for_file: camel_case_types
// ignore_for_file: subtype_of_sealed_class
// ignore_for_file: invalid_use_of_internal_member

class _FakeAdhesionModel_0 extends _i1.SmartFake implements _i2.AdhesionModel {
  _FakeAdhesionModel_0(Object parent, Invocation parentInvocation)
    : super(parent, parentInvocation);
}

/// A class which mocks [AdhesionRepository].
///
/// See the documentation for Mockito's code generation for more information.
class MockAdhesionRepository extends _i1.Mock
    implements _i3.AdhesionRepository {
  MockAdhesionRepository() {
    _i1.throwOnMissingStub(this);
  }

  @override
  _i4.Future<List<_i2.AdhesionModel>> getAll({int? page = 0, int? size = 20}) =>
      (super.noSuchMethod(
            Invocation.method(#getAll, [], {#page: page, #size: size}),
            returnValue: _i4.Future<List<_i2.AdhesionModel>>.value(
              <_i2.AdhesionModel>[],
            ),
          )
          as _i4.Future<List<_i2.AdhesionModel>>);

  @override
  _i4.Future<_i2.AdhesionModel?> getById(String? id) =>
      (super.noSuchMethod(
            Invocation.method(#getById, [id]),
            returnValue: _i4.Future<_i2.AdhesionModel?>.value(),
          )
          as _i4.Future<_i2.AdhesionModel?>);

  @override
  _i4.Future<_i2.AdhesionModel> create(_i2.AdhesionModel? adhesion) =>
      (super.noSuchMethod(
            Invocation.method(#create, [adhesion]),
            returnValue: _i4.Future<_i2.AdhesionModel>.value(
              _FakeAdhesionModel_0(
                this,
                Invocation.method(#create, [adhesion]),
              ),
            ),
          )
          as _i4.Future<_i2.AdhesionModel>);

  @override
  _i4.Future<_i2.AdhesionModel> approuver(String? id, {String? approuvePar}) =>
      (super.noSuchMethod(
            Invocation.method(#approuver, [id], {#approuvePar: approuvePar}),
            returnValue: _i4.Future<_i2.AdhesionModel>.value(
              _FakeAdhesionModel_0(
                this,
                Invocation.method(
                  #approuver,
                  [id],
                  {#approuvePar: approuvePar},
                ),
              ),
            ),
          )
          as _i4.Future<_i2.AdhesionModel>);

  @override
  _i4.Future<_i2.AdhesionModel> rejeter(String? id, String? motifRejet) =>
      (super.noSuchMethod(
            Invocation.method(#rejeter, [id, motifRejet]),
            returnValue: _i4.Future<_i2.AdhesionModel>.value(
              _FakeAdhesionModel_0(
                this,
                Invocation.method(#rejeter, [id, motifRejet]),
              ),
            ),
          )
          as _i4.Future<_i2.AdhesionModel>);

  @override
  _i4.Future<_i2.AdhesionModel> enregistrerPaiement(
    String? id, {
    required double? montantPaye,
    String? methodePaiement,
    String? referencePaiement,
  }) =>
      (super.noSuchMethod(
            Invocation.method(
              #enregistrerPaiement,
              [id],
              {
                #montantPaye: montantPaye,
                #methodePaiement: methodePaiement,
                #referencePaiement: referencePaiement,
              },
            ),
            returnValue: _i4.Future<_i2.AdhesionModel>.value(
              _FakeAdhesionModel_0(
                this,
                Invocation.method(
                  #enregistrerPaiement,
                  [id],
                  {
                    #montantPaye: montantPaye,
                    #methodePaiement: methodePaiement,
                    #referencePaiement: referencePaiement,
                  },
                ),
              ),
            ),
          )
          as _i4.Future<_i2.AdhesionModel>);

  @override
  _i4.Future<List<_i2.AdhesionModel>> getByMembre(
    String? membreId, {
    int? page = 0,
    int? size = 20,
  }) =>
      (super.noSuchMethod(
            Invocation.method(
              #getByMembre,
              [membreId],
              {#page: page, #size: size},
            ),
            returnValue: _i4.Future<List<_i2.AdhesionModel>>.value(
              <_i2.AdhesionModel>[],
            ),
          )
          as _i4.Future<List<_i2.AdhesionModel>>);

  @override
  _i4.Future<List<_i2.AdhesionModel>> getByOrganisation(
    String? organisationId, {
    int? page = 0,
    int? size = 20,
  }) =>
      (super.noSuchMethod(
            Invocation.method(
              #getByOrganisation,
              [organisationId],
              {#page: page, #size: size},
            ),
            returnValue: _i4.Future<List<_i2.AdhesionModel>>.value(
              <_i2.AdhesionModel>[],
            ),
          )
          as _i4.Future<List<_i2.AdhesionModel>>);

  @override
  _i4.Future<List<_i2.AdhesionModel>> getByStatut(
    String? statut, {
    int? page = 0,
    int? size = 20,
  }) =>
      (super.noSuchMethod(
            Invocation.method(
              #getByStatut,
              [statut],
              {#page: page, #size: size},
            ),
            returnValue: _i4.Future<List<_i2.AdhesionModel>>.value(
              <_i2.AdhesionModel>[],
            ),
          )
          as _i4.Future<List<_i2.AdhesionModel>>);

  @override
  _i4.Future<List<_i2.AdhesionModel>> getEnAttente({
    int? page = 0,
    int? size = 20,
  }) =>
      (super.noSuchMethod(
            Invocation.method(#getEnAttente, [], {#page: page, #size: size}),
            returnValue: _i4.Future<List<_i2.AdhesionModel>>.value(
              <_i2.AdhesionModel>[],
            ),
          )
          as _i4.Future<List<_i2.AdhesionModel>>);

  @override
  _i4.Future<Map<String, dynamic>?> getStats() =>
      (super.noSuchMethod(
            Invocation.method(#getStats, []),
            returnValue: _i4.Future<Map<String, dynamic>?>.value(),
          )
          as _i4.Future<Map<String, dynamic>?>);
}
