Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/samuelclay/NewsBlur
/ functions
Functions
5,735 in github.com/samuelclay/NewsBlur
⨍
Functions
5,735
◇
Types & classes
765
↳
Endpoints
185
Method
test_rename_tag_whitespace_only_fails
Validation: can't rename to whitespace-only string.
apps/reader/tests.py:214
Method
test_renders_posts_into_atom
(self)
apps/rss_feeds/test_reddit_fetcher.py:108
Method
test_repairs_missing_expiry
(self)
apps/rss_feeds/test_reddit_fetcher.py:179
Method
test_reserves_until_limit
(self)
apps/rss_feeds/test_reddit_fetcher.py:159
Method
test_resources_return_fastmcp_compatible_content
( self, monkeypatch, resource, args, expected_key )
newsblur_mcp/tests/test_resources.py:76
Method
test_retrieve_stripe_ids_ignores_deleted_user
(self, mock_customer_retrieve, mock_customer_list)
apps/profile/test_profile.py:520
Method
test_retry_appends_nudge
(self)
apps/webfeed/tests.py:277
Method
test_returns_cached_token_without_network
(self)
apps/rss_feeds/test_reddit_fetcher.py:289
Method
test_returns_children_on_200
(self, mock_get)
apps/rss_feeds/test_reddit_fetcher.py:203
Method
test_returns_story_hashes
Should return story hashes from ES results.
apps/search/tests.py:432
Method
test_rewrite_leaves_existing_feed_url_untouched
(self)
apps/rss_feeds/test_rss_feeds.py:1590
Method
test_rewrite_leaves_non_openrss_url_untouched
(self)
apps/rss_feeds/test_rss_feeds.py:1599
Method
test_rewrite_preview_url_preserves_query_string
(self)
apps/rss_feeds/test_rss_feeds.py:1578
Method
test_rewrite_preview_url_to_feed_path
(self)
apps/rss_feeds/test_rss_feeds.py:1568
Method
test_rewrite_scheme_less_preview_url
(self)
apps/rss_feeds/test_rss_feeds.py:1584
Method
test_river_stories__all_filter_marks_older_unread_on_later_page
All-story river pages should mark returned stories unread using the all-story page.
apps/reader/test_river_stories.py:348
Method
test_river_stories__free_user_first_page_is_capped_at_three_stories
Free users should only receive the first three river stories on page one.
apps/reader/test_river_stories.py:487
Method
test_river_stories__free_user_later_pages_return_empty_without_aggregation
Free users should be blocked before river aggregation on page two and beyond.
apps/reader/test_river_stories.py:529
Method
test_river_stories__newest_backfills_past_stale_redis_hashes
Newest river loads should skip stale Redis hashes that no longer exist in Mongo.
apps/reader/test_river_stories.py:299
Method
test_river_stories__normal_load
Test loading river stories normally with multiple feeds.
apps/reader/test_river_stories.py:182
Method
test_river_stories__over_page_limit_returns_404_without_aggregation
River pages past the reader safety limit should stop before aggregation.
apps/reader/test_river_stories.py:568
Method
test_river_stories__read_filter_adjustment
Test that read_filter correctly adjusts from 'unread' to 'all' when date filter extends beyond unread cutoff.
apps/reader/test_river_stories.py:889
Method
test_river_stories__specific_hashes_no_dashboard
Test loading specific story hashes without dashboard flag.
apps/reader/test_river_stories.py:653
Method
test_river_stories__specific_story_hashes
Test loading specific story hashes - THIS IS THE BUG WE FIXED. When loading specific story hashes, we should NOT run expensive ZUNIO
apps/reader/test_river_stories.py:588
Method
test_river_stories__with_date_filter
Test loading river stories with date filters.
apps/reader/test_river_stories.py:685
Method
test_rss_url_is_feed
(self)
apps/webfeed/tests.py:415
Method
test_run_isolates_per_user_errors
(self, mock_switch)
apps/profile/test_profile.py:1167
Method
test_run_skips_when_lock_held
(self, mock_lock, mock_switch)
apps/profile/test_profile.py:1126
Method
test_safe_requests_get__rejects_private_redirect
(self, mock_getaddrinfo, mock_request)
apps/rss_feeds/test_rss_feeds.py:563
Method
test_same_feed_not_clustered
Stories from the same feed should NOT form a cluster.
apps/clustering/tests.py:130
Method
test_save__force_update_without_pk
save(force_update=True) with no pk should not raise ValueError.
apps/rss_feeds/test_rss_feeds.py:579
Method
test_save_android_receipt_passes_product_id
(self)
apps/profile/test_profile.py:585
Method
test_save_bypasses_cached_favicon_for_declared_icon
(self)
apps/rss_feeds/test_rss_feeds.py:1420
Method
test_save_classifier_author_regex_endpoint
Test saving a regex author classifier via the API endpoint
apps/analyzer/tests.py:1014
Method
test_save_classifier_author_regex_invalid_pattern_rejected
Invalid regex patterns should not be saved.
apps/analyzer/tests.py:1032
Method
test_save_classifier_dislike_text_endpoint
(self)
apps/analyzer/tests.py:536
Method
test_save_classifier_dislike_url_endpoint
Test saving a dislike URL classifier via the API endpoint
apps/analyzer/tests.py:818
Method
test_save_classifier_marks_subscription_trained
(self)
apps/analyzer/tests.py:575
Method
test_save_classifier_remove_text_endpoint
(self)
apps/analyzer/tests.py:551
Method
test_save_classifier_super_dislike
API endpoint accepts super_dislike_title and saves score=-2.
apps/analyzer/tests.py:1537
Method
test_save_classifier_text_endpoint
(self)
apps/analyzer/tests.py:521
Method
test_save_classifier_title_endpoint
(self)
apps/analyzer/tests.py:507
Method
test_save_classifier_url_exact_endpoint
Test saving an exact URL classifier via the API endpoint
apps/analyzer/tests.py:784
Method
test_save_classifier_url_regex_endpoint
Test saving a regex URL classifier via the API endpoint
apps/analyzer/tests.py:801
Method
test_save_does_not_refetch_failed_declared_icon
(self)
apps/rss_feeds/test_rss_feeds.py:1444
Method
test_save_feed_chooser
Test save_feed_chooser endpoint handles parameters correctly.
apps/reader/test_reader.py:240
Method
test_save_feed_chooser_approve_all
Test save_feed_chooser with approve_all parameter.
apps/reader/test_reader.py:253
Method
test_save_global_classifier_does_not_affect_feed_classifiers
Saving a single classifier with scope=global should NOT promote other feed-level classifiers to global scope. This reproduces the bug
apps/analyzer/tests.py:1148
Method
test_save_prefers_declared_icon_over_site_favicon
(self)
apps/rss_feeds/test_rss_feeds.py:1384
Method
test_score_story_super_downvote_returns_negative_bucket
UserSubscription.score_story() puts super-downvoted stories in negative bucket.
apps/analyzer/tests.py:1531
Method
test_search_archives_returns_results
search_archives should return matching archives via execute_tool.
apps/archive_assistant/tests.py:53
Method
test_search_archives_tool_defined
search_archives tool should be defined.
apps/archive_assistant/tests.py:29
Method
test_select_basic_sorted_by_score
(self, mock_redis_cls, mock_trending, mock_feed_trending)
apps/briefing/tests.py:950
Method
test_select_category_long_read
(self, mock_redis_cls, mock_trending, mock_feed_trending)
apps/briefing/tests.py:1083
Method
test_select_category_top_stories
(self, mock_redis_cls, mock_trending, mock_feed_trending)
apps/briefing/tests.py:1107
Method
test_select_empty_no_candidates
(self, mock_redis_cls, mock_trending, mock_feed_trending)
apps/briefing/tests.py:935
Method
test_select_empty_no_subs
(self, mock_redis_cls)
apps/briefing/tests.py:924
Method
test_select_excludes_super_disliked_title
Stories matching a super-disliked title classifier (score <= -2) must be excluded from the briefing even when their trending signals are high.
apps/briefing/tests.py:1166
Method
test_select_fallback_to_read
(self, mock_redis_cls, mock_trending, mock_feed_trending)
apps/briefing/tests.py:1057
Method
test_select_focus_mode
(self, mock_redis_cls, mock_trending, mock_feed_trending)
apps/briefing/tests.py:1130
Method
test_select_keeps_dislike_with_strong_signals
Regular dislikes (score == -1) penalize but should not hard-exclude when other signals are very strong — only super-dislikes hard-exclude.
apps/briefing/tests.py:1219
Method
test_select_max_per_feed
(self, mock_redis_cls, mock_trending, mock_feed_trending)
apps/briefing/tests.py:1000
Method
test_select_max_stories_limit
(self, mock_redis_cls, mock_trending, mock_feed_trending)
apps/briefing/tests.py:978
Method
test_select_unread_preferred
(self, mock_redis_cls, mock_trending, mock_feed_trending)
apps/briefing/tests.py:1031
Method
test_semantic_thresholds_reflect_real_world
Pairwise overlap coefficients for the reported cluster should all fall below SEMANTIC_MIN_OVERLAP_COEF. This pins the constant to the
apps/clustering/tests.py:376
Method
test_sender_fallback_extracts_embedded_original_sender_for_any_domain
(self)
apps/newsletters/tests.py:123
Method
test_sender_fallback_strips_plus_addressing_for_direct_senders
(self)
apps/newsletters/tests.py:148
Method
test_sets_expiry_on_first_request_of_window
(self)
apps/rss_feeds/test_reddit_fetcher.py:171
Method
test_sets_needs_unread_recalc
(self, mock_redis_cls, mock_notif, mock_queue)
apps/briefing/tests.py:1578
Method
test_setup_feed_for_premium_defaults_resync_false
setup_feed_for_premium_subscribers should default allow_skip_resync=False.
apps/rss_feeds/test_rss_feeds.py:641
Method
test_setup_feed_for_premium_passes_allow_skip_resync_to_sync_redis
setup_feed_for_premium_subscribers should pass allow_skip_resync to sync_redis.
apps/rss_feeds/test_rss_feeds.py:629
Method
test_setup_feeds_defaults_allow_skip_resync_false
setup_feeds_for_premium_subscribers should default allow_skip_resync to False.
apps/rss_feeds/test_rss_feeds.py:605
Method
test_setup_feeds_passes_allow_skip_resync_true
setup_feeds_for_premium_subscribers should pass allow_skip_resync to each feed.
apps/rss_feeds/test_rss_feeds.py:598
Method
test_short_acronyms_included
(self)
apps/clustering/tests.py:60
Method
test_short_generic_title_does_not_cluster_unrelated
Rolling Out Our New A.I. Tools' should not cluster with 'New font-rendering trick hides malicious commands from AI tools' — they share
apps/clustering/tests.py:581
Method
test_short_text_not_truncated
(self)
newsblur_mcp/tests/test_transforms.py:36
Method
test_short_word_preserved
(self)
apps/clustering/tests.py:46
Method
test_single_feed__normal_load
Test loading a single feed.
apps/reader/test_river_stories.py:718
Method
test_single_feed__with_date_filter
Test loading a single feed with date filters.
apps/reader/test_river_stories.py:737
Method
test_single_feed_unread_paging_extends_page_cache_from_existing_unread_cache
Page 2 should extend the single-feed page cache from the existing zU key. Opening page 1 marks the subscription dirty at the end of
apps/reader/test_river_stories.py:1566
Method
test_single_feed_unread_paging_handles_decoded_page_cache_hashes
Staging Redis can return decoded strings for cached hashes. Keep membership checks type-normalized so page 2 does not collapse to 1 s
apps/reader/test_river_stories.py:1646
Method
test_single_feed_unread_paging_stable_after_mark_read_cache_rebuild
Single-feed unread pagination should not skip stories when read marks make the unread cache dirty between page loads.
apps/reader/test_river_stories.py:1493
Method
test_skips_more_stubs
(self)
apps/rss_feeds/test_reddit_fetcher.py:368
Method
test_skips_stickied_posts
(self)
apps/rss_feeds/test_reddit_fetcher.py:134
Method
test_slash_splits_words
(self)
apps/clustering/tests.py:32
Method
test_smbc_falsely_clustered_without_feed_title_map
Without feed_title_map, SMBC stories WOULD fuzzy-match (demonstrating the bug).
apps/clustering/tests.py:480
Method
test_smbc_not_clustered_with_feed_title_map
SMBC-style stories should NOT fuzzy-match when feed title is stripped.
apps/clustering/tests.py:463
Method
test_soft_delete_sets_flags
soft_delete should set deleted flag and date.
apps/archive_extension/tests.py:591
Method
test_solo_youtube_feed_of_mega_subscriber_is_capped
(self)
apps/rss_feeds/test_rss_feeds.py:1130
Method
test_stable_order_for_ties
(self)
apps/webfeed/tests.py:238
Method
test_staff_would_cancel_email_renders
(self)
apps/profile/test_profile.py:890
Method
test_staleness_any_is_a_no_op
(self)
apps/discover/tests.py:83
Method
test_staleness_month_hides_stale_feed
(self)
apps/discover/tests.py:78
Method
test_staleness_year_hides_stale_feed
(self)
apps/discover/tests.py:73
Method
test_standard_comments_rss
(self)
apps/rss_feeds/test_reddit_fetcher.py:301
Method
test_starred_stories__normal_load
Test loading starred stories.
apps/reader/test_river_stories.py:765
Method
test_starred_stories__with_date_filter
Test loading starred stories with date filters.
apps/reader/test_river_stories.py:783
Method
test_starred_stories__with_highlights
Test loading starred stories with highlights.
apps/reader/test_river_stories.py:827
Method
test_starred_stories__with_tag
Test loading starred stories filtered by tag.
apps/reader/test_river_stories.py:810
Method
test_stats_excludes_deleted
Stats should not count deleted archives.
apps/archive_extension/tests.py:1242
← previous
next →
5,401–5,500 of 5,735, ranked by callers