def test_to_dict(self): incomplete_exp_ids = ['0'] incomplete_coll_ids = ['1'] completed_exp_ids = ['2'] completed_coll_ids = ['3'] exploration_playlist_ids = ['4'] collection_playlist_ids = ['5'] observed_activity_ids_in_learner_dashboard = ( learner_progress_domain.ActivityIdsInLearnerDashboard( completed_exp_ids, completed_coll_ids, incomplete_exp_ids, incomplete_coll_ids, exploration_playlist_ids, collection_playlist_ids)) to_dict_result = observed_activity_ids_in_learner_dashboard.to_dict() self.assertEqual(to_dict_result['completed_exploration_ids'], completed_exp_ids) self.assertEqual(to_dict_result['completed_collection_ids'], completed_coll_ids) self.assertEqual(to_dict_result['incomplete_exploration_ids'], incomplete_exp_ids) self.assertEqual(to_dict_result['incomplete_collection_ids'], incomplete_coll_ids) self.assertEqual(to_dict_result['exploration_playlist_ids'], exploration_playlist_ids) self.assertEqual(to_dict_result['collection_playlist_ids'], collection_playlist_ids)
def get_learner_dashboard_activities(user_id): """Returns the ids of each of the activities that are present in the various sections of the learner dashboard, namely the completed section, the incomplete section and the playlist section. Args: user_id: str. The id of the learner. Returns: ActivityIdsInLearnerDashboard. The domain object containing the ids of all activities in the learner dashboard. """ learner_progress_models = ( datastore_services.fetch_multiple_entities_by_ids_and_models( [ ('CompletedActivitiesModel', [user_id]), ('IncompleteActivitiesModel', [user_id]), ('LearnerPlaylistModel', [user_id]) ])) # If completed model is present. if learner_progress_models[0][0]: activities_completed = _get_completed_activities_from_model( learner_progress_models[0][0]) completed_exploration_ids = activities_completed.exploration_ids completed_collection_ids = activities_completed.collection_ids else: completed_collection_ids = [] completed_exploration_ids = [] # If incomplete model is present. if learner_progress_models[1][0]: incomplete_activities = _get_incomplete_activities_from_model( learner_progress_models[1][0]) incomplete_exploration_ids = incomplete_activities.exploration_ids incomplete_collection_ids = incomplete_activities.collection_ids else: incomplete_exploration_ids = [] incomplete_collection_ids = [] # If learner playlist model is present. if learner_progress_models[2][0]: learner_playlist = ( learner_playlist_services.get_learner_playlist_from_model( learner_progress_models[2][0])) exploration_playlist_ids = learner_playlist.exploration_ids collection_playlist_ids = learner_playlist.collection_ids else: exploration_playlist_ids = [] collection_playlist_ids = [] activity_ids = learner_progress_domain.ActivityIdsInLearnerDashboard( completed_exploration_ids, completed_collection_ids, incomplete_exploration_ids, incomplete_collection_ids, exploration_playlist_ids, collection_playlist_ids) return activity_ids
def test_to_dict(self): incomplete_exp_ids = ['0'] incomplete_coll_ids = ['1'] partially_learnt_topic_ids = ['3'] completed_exp_ids = ['4'] completed_coll_ids = ['5'] completed_story_ids = ['6'] learnt_topic_ids = ['7'] topic_ids_to_learn = ['8'] all_topic_ids = ['9'] untracked_topic_ids = ['10'] exploration_playlist_ids = ['11'] collection_playlist_ids = ['12'] observed_activity_ids_in_learner_dashboard = ( learner_progress_domain.ActivityIdsInLearnerDashboard( completed_exp_ids, completed_coll_ids, completed_story_ids, learnt_topic_ids, incomplete_exp_ids, incomplete_coll_ids, partially_learnt_topic_ids, topic_ids_to_learn, all_topic_ids, untracked_topic_ids, exploration_playlist_ids, collection_playlist_ids)) to_dict_result = observed_activity_ids_in_learner_dashboard.to_dict() self.assertEqual( to_dict_result['completed_exploration_ids'], completed_exp_ids) self.assertEqual( to_dict_result['completed_collection_ids'], completed_coll_ids) self.assertEqual( to_dict_result['completed_story_ids'], completed_story_ids) self.assertEqual( to_dict_result['learnt_topic_ids'], learnt_topic_ids) self.assertEqual( to_dict_result['incomplete_exploration_ids'], incomplete_exp_ids) self.assertEqual( to_dict_result['incomplete_collection_ids'], incomplete_coll_ids) self.assertEqual( to_dict_result['partially_learnt_topic_ids'], partially_learnt_topic_ids) self.assertEqual( to_dict_result['topic_ids_to_learn'], topic_ids_to_learn) self.assertEqual( to_dict_result['all_topic_ids'], all_topic_ids) self.assertEqual( to_dict_result['untracked_topic_ids'], untracked_topic_ids) self.assertEqual( to_dict_result['exploration_playlist_ids'], exploration_playlist_ids) self.assertEqual( to_dict_result['collection_playlist_ids'], collection_playlist_ids)