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

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

import 'package:mockito/mockito.dart' as _i1;
import 'package:unionflow_mobile_apps/features/admin/data/models/admin_user_model.dart'
    as _i4;
import 'package:unionflow_mobile_apps/features/admin/data/repositories/admin_user_repository.dart'
    as _i2;

// 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 _FakeAdminUserSearchResult_0 extends _i1.SmartFake
    implements _i2.AdminUserSearchResult {
  _FakeAdminUserSearchResult_0(Object parent, Invocation parentInvocation)
    : super(parent, parentInvocation);
}

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

  @override
  _i3.Future<_i2.AdminUserSearchResult> search({
    int? page = 0,
    int? size = 20,
    String? search,
  }) =>
      (super.noSuchMethod(
            Invocation.method(#search, [], {
              #page: page,
              #size: size,
              #search: search,
            }),
            returnValue: _i3.Future<_i2.AdminUserSearchResult>.value(
              _FakeAdminUserSearchResult_0(
                this,
                Invocation.method(#search, [], {
                  #page: page,
                  #size: size,
                  #search: search,
                }),
              ),
            ),
          )
          as _i3.Future<_i2.AdminUserSearchResult>);

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

  @override
  _i3.Future<List<_i4.AdminRoleModel>> getRealmRoles() =>
      (super.noSuchMethod(
            Invocation.method(#getRealmRoles, []),
            returnValue: _i3.Future<List<_i4.AdminRoleModel>>.value(
              <_i4.AdminRoleModel>[],
            ),
          )
          as _i3.Future<List<_i4.AdminRoleModel>>);

  @override
  _i3.Future<List<_i4.AdminRoleModel>> getUserRoles(String? userId) =>
      (super.noSuchMethod(
            Invocation.method(#getUserRoles, [userId]),
            returnValue: _i3.Future<List<_i4.AdminRoleModel>>.value(
              <_i4.AdminRoleModel>[],
            ),
          )
          as _i3.Future<List<_i4.AdminRoleModel>>);

  @override
  _i3.Future<void> setUserRoles(String? userId, List<String>? roleNames) =>
      (super.noSuchMethod(
            Invocation.method(#setUserRoles, [userId, roleNames]),
            returnValue: _i3.Future<void>.value(),
            returnValueForMissingStub: _i3.Future<void>.value(),
          )
          as _i3.Future<void>);

  @override
  _i3.Future<void> associerOrganisation({
    required String? email,
    required String? organisationId,
  }) =>
      (super.noSuchMethod(
            Invocation.method(#associerOrganisation, [], {
              #email: email,
              #organisationId: organisationId,
            }),
            returnValue: _i3.Future<void>.value(),
            returnValueForMissingStub: _i3.Future<void>.value(),
          )
          as _i3.Future<void>);
}
