def test_get_published_blog_post_summaries_by_user_id(self) -> None: self.assertEqual( len( blog_services.get_published_blog_post_summaries_by_user_id( self.user_id_a, 20)), 0) blog_services.update_blog_post(self.blog_post_a_id, self.change_dict_two) blog_services.publish_blog_post(self.blog_post_a_id) no_of_published_blog_post = ( blog_services.get_published_blog_post_summaries_by_user_id( self.user_id_a, 20)) self.assertEqual(len(no_of_published_blog_post), 1)
def get(self, blog_post_url): """Handles GET requests.""" blog_post = blog_services.get_blog_post_by_url_fragment(blog_post_url) if not blog_post: raise self.PageNotFoundException( Exception( 'The blog post page with the given url doesn\'t exist.')) user_settings = user_services.get_user_settings(blog_post.author_id) blog_post_dict = ( blog_services.get_blog_post_from_model(blog_post).to_dict()) blog_post_dict['author_name'] = user_settings.username del blog_post_dict['author_id'] blog_post_summaries = ( blog_services.get_published_blog_post_summaries_by_user_id( blog_post.author_id, feconf.MAX_POSTS_TO_RECOMMEND_AT_END_OF_BLOG_POST)) blog_post_summary_dicts = ( _get_blog_card_summary_dicts_for_homepage(blog_post_summaries)) self.values.update({ 'profile_picture_data_url': user_settings.profile_picture_data_url, 'blog_post_dict': blog_post_dict, 'summary_dicts': blog_post_summary_dicts }) self.render_json(self.values)
def get(self, author_username): """Handles GET requests.""" user_settings = ( user_services.get_user_settings_from_username(author_username)) if user_settings is None: raise self.PageNotFoundException( Exception('User with given username does not exist')) if not any(role in user_settings.roles for role in [BLOG_ADMIN, BLOG_POST_EDITOR]): raise self.PageNotFoundException( Exception('The given user is not a blog post author.')) blog_post_summaries = ( blog_services.get_published_blog_post_summaries_by_user_id( user_settings.user_id, feconf.MAX_NUM_CARDS_TO_DISPLAY_ON_AUTHOR_SPECIFIC_BLOG_POST_PAGE)) #pylint: disable=line-too-long blog_post_summary_dicts = [] if blog_post_summaries: blog_post_summary_dicts = ( _get_blog_card_summary_dicts_for_homepage(blog_post_summaries)) self.values.update({ 'author_name': author_username, 'profile_picture_data_url': (user_settings.profile_picture_data_url), 'author_bio': user_settings.user_bio, 'summary_dicts': blog_post_summary_dicts }) self.render_json(self.values)