| // Copyright 2023 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef ASH_GLANCEABLES_CLASSROOM_FAKE_GLANCEABLES_CLASSROOM_CLIENT_H_ |
| #define ASH_GLANCEABLES_CLASSROOM_FAKE_GLANCEABLES_CLASSROOM_CLIENT_H_ |
| |
| #include "ash/glanceables/classroom/glanceables_classroom_client.h" |
| |
| namespace ash { |
| |
| namespace { |
| |
| inline constexpr size_t kDefaultAssignmentsCount = 3; |
| |
| } // namespace |
| |
| class FakeGlanceablesClassroomClient : public GlanceablesClassroomClient { |
| public: |
| FakeGlanceablesClassroomClient(); |
| FakeGlanceablesClassroomClient(const FakeGlanceablesClassroomClient&) = |
| delete; |
| FakeGlanceablesClassroomClient& operator=( |
| const FakeGlanceablesClassroomClient&) = delete; |
| ~FakeGlanceablesClassroomClient() override; |
| |
| void SetAssignmentsCount(size_t assignments_count); |
| |
| // GlanceablesClassroomClient: |
| bool IsDisabledByAdmin() const override; |
| void IsStudentRoleActive(IsRoleEnabledCallback callback) override; |
| void GetCompletedStudentAssignments(GetAssignmentsCallback callback) override; |
| void GetStudentAssignmentsWithApproachingDueDate( |
| GetAssignmentsCallback callback) override; |
| void GetStudentAssignmentsWithMissedDueDate( |
| GetAssignmentsCallback callback) override; |
| void GetStudentAssignmentsWithoutDueDate( |
| GetAssignmentsCallback callback) override; |
| void OnGlanceablesBubbleClosed() override; |
| |
| void set_is_disabled_by_admin(bool is_disabled_by_admin) { |
| is_disabled_by_admin_ = is_disabled_by_admin; |
| } |
| |
| private: |
| size_t assignments_count_ = kDefaultAssignmentsCount; |
| |
| bool is_disabled_by_admin_ = false; |
| }; |
| |
| } // namespace ash |
| |
| #endif // ASH_GLANCEABLES_CLASSROOM_FAKE_GLANCEABLES_CLASSROOM_CLIENT_H_ |