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_generate_dispatches_task
(self, mock_task, mock_feed)
apps/briefing/tests.py:1917
Method
test_generate_enables_briefing
(self, mock_task, mock_feed)
apps/briefing/tests.py:1889
Method
test_generate_enables_reader_preference
(self, mock_task, mock_feed)
apps/briefing/tests.py:1899
Method
test_generate_requires_post
(self, mock_task, mock_feed)
apps/briefing/tests.py:1882
Method
test_generate_returns_feed_id
(self, mock_task, mock_feed)
apps/briefing/tests.py:1926
Method
test_generates_http_https_variants
Should generate variants with both http and https.
apps/archive_extension/tests.py:206
Method
test_generates_trailing_slash_variants
Should generate variants with and without trailing slash.
apps/archive_extension/tests.py:196
Method
test_generates_www_removal_variant
Should generate variant without www when original has it.
apps/archive_extension/tests.py:186
Method
test_generates_www_variants
Should generate variants with and without www.
apps/archive_extension/tests.py:176
Method
test_get_archive_content_handles_not_found
get_archive_content should handle archive not found.
apps/archive_assistant/tests.py:85
Method
test_get_archive_content_returns_content
get_archive_content should return archive content via execute_tool.
apps/archive_assistant/tests.py:70
Method
test_get_archive_content_tool_defined
get_archive_content tool should be defined.
apps/archive_assistant/tests.py:34
Method
test_get_archive_summary_tool_defined
get_archive_summary tool should be defined.
apps/archive_assistant/tests.py:39
Method
test_get_blocklist_returns_custom
Get blocklist should return custom user settings.
apps/archive_extension/tests.py:1368
Method
test_get_blocklist_returns_defaults
Get blocklist should return default lists.
apps/archive_extension/tests.py:1358
Method
test_get_classifiers_filters_by_folder_feed_ids
When folder_feed_ids is passed to get_classifiers_for_user, folder-scoped classifiers that don't apply to the current feed should be
apps/analyzer/tests.py:1288
Method
test_get_classifiers_for_user
(self)
apps/analyzer/tests.py:409
Method
test_get_classifiers_includes_author_regex
Test that get_classifiers_for_user splits authors and author_regex
apps/analyzer/tests.py:1072
Method
test_get_classifiers_includes_urls
Test that get_classifiers_for_user includes URL classifiers
apps/analyzer/tests.py:861
Method
test_get_feed_from_url__invalid_schema
InvalidSchema (WhatsApp link etc.) should not crash.
apps/rss_feeds/test_rss_feeds.py:492
Method
test_get_feed_from_url__missing_schema
MissingSchema (user passes search query instead of URL) should not crash.
apps/rss_feeds/test_rss_feeds.py:478
Method
test_get_feed_from_url__no_content_type_header
When response has no Content-Type header, should not raise TypeError.
apps/rss_feeds/test_rss_feeds.py:448
Method
test_get_feed_from_url__read_timeout
ReadTimeout on JSON feed check should not crash.
apps/rss_feeds/test_rss_feeds.py:464
Method
test_get_feed_from_url__rejects_loopback_ip
(self, mock_forman, mock_pilgrim, mock_requests_get)
apps/rss_feeds/test_rss_feeds.py:532
Method
test_get_feed_from_url_does_not_rewrite_proxied_youtube_url
A proxied openrss URL must resolve to the proxy feed, never a rewritten gdata feed.
apps/rss_feeds/test_rss_feeds.py:1524
Method
test_get_feed_from_url_resolves_preview_to_feed_address
Adding an openrss preview URL must resolve to the /feed/ feed, not the preview.
apps/rss_feeds/test_rss_feeds.py:1603
Method
test_get_feed_from_url_reuses_legacy_preview_feed
Subscribing via a preview URL reuses an existing legacy feed, not a duplicate.
apps/rss_feeds/test_rss_feeds.py:1665
Method
test_get_or_create_existing
(self)
apps/briefing/tests.py:1470
Method
test_get_or_create_existing_user
get_or_create should return existing settings.
apps/archive_extension/tests.py:624
Method
test_get_or_create_new
(self)
apps/briefing/tests.py:1465
Method
test_get_or_create_new_user
get_or_create should create settings for new user.
apps/archive_extension/tests.py:614
Method
test_get_returns_defaults
(self)
apps/briefing/tests.py:1726
Method
test_get_stories_accepts_singular_feed_id
(self, monkeypatch)
newsblur_mcp/tests/test_stories.py:22
Method
test_get_suggested_questions_returns_list
get_suggested_questions should return a list.
apps/archive_assistant/tests.py:123
Method
test_global_classifier_applies_to_all_feeds
Globally scoped classifiers match regardless of feed.
apps/analyzer/tests.py:1642
Method
test_global_query_phrase_search
Global query should also support phrase search.
apps/search/tests.py:275
Method
test_guid_from_permalink
(self)
apps/webfeed/tests.py:285
Method
test_guid_from_permalink_normalized
(self)
apps/webfeed/tests.py:295
Method
test_guid_from_title_fallback
(self)
apps/webfeed/tests.py:305
Method
test_guid_length
(self)
apps/webfeed/tests.py:315
Method
test_handles_empty_url
Empty URL should return empty string.
apps/archive_extension/tests.py:144
Method
test_handles_invalid_url
Invalid URLs should be handled gracefully.
apps/archive_extension/tests.py:149
Method
test_hashes_basic
(self)
apps/briefing/tests.py:367
Method
test_hashes_empty
(self)
apps/briefing/tests.py:376
Method
test_hashes_no_links
(self)
apps/briefing/tests.py:382
Method
test_hashes_none
(self)
apps/briefing/tests.py:379
Method
test_home_is_not_comments
(self)
apps/rss_feeds/test_reddit_fetcher.py:323
Method
test_home_page
(self)
apps/rss_feeds/test_reddit_fetcher.py:93
Method
test_honors_query_param
(self)
apps/rss_feeds/test_reddit_fetcher.py:334
Method
test_html_page_with_feed_link_is_not_feed
(self)
apps/webfeed/tests.py:423
Method
test_http_404_errors_return_tool_payload
(self, monkeypatch)
newsblur_mcp/tests/test_tool_errors.py:60
Method
test_http_500_errors_return_tool_payload
(self, monkeypatch)
newsblur_mcp/tests/test_tool_errors.py:72
Method
test_hyphen_splits_words
(self)
apps/clustering/tests.py:29
Method
test_hyphenated_words_split
(self)
apps/clustering/tests.py:78
Method
test_icon_importer_skips_existing_googleusercontent_avatar
Current yt3.googleusercontent.com avatars should not be treated as generic.
apps/rss_feeds/test_rss_feeds.py:864
Method
test_ignores_invalid_query
(self)
apps/rss_feeds/test_reddit_fetcher.py:337
Method
test_ignores_non_post_children
(self)
apps/rss_feeds/test_reddit_fetcher.py:145
Method
test_image_prompt_classifier_notification_matches_on_ai_score
Image classifier notifications match the same way as text prompts.
apps/notifications/tests.py:109
Method
test_image_url_without_post_hint
(self)
apps/rss_feeds/test_reddit_fetcher.py:453
Method
test_inactive_subscriptions_do_not_count_toward_mega_status
Muted feeds don't count against the Premium limit, so they don't make a user mega.
apps/rss_feeds/test_rss_feeds.py:1139
Method
test_includes_date_range_filter
Verify the query includes a date range filter.
apps/search/tests.py:369
Method
test_includes_preferences_when_not_enabled
(self, mock_redis_cls)
apps/briefing/tests.py:1709
Method
test_index_rss_suffix
(self)
apps/rss_feeds/test_reddit_fetcher.py:306
Method
test_index_xml_trailing_slash
(self)
apps/rss_feeds/test_reddit_fetcher.py:311
Method
test_ingest_blocked_url_returns_blocked
Blocked URL should return blocked response.
apps/archive_extension/tests.py:674
Method
test_ingest_creates_archive
Valid ingest should create archive.
apps/archive_extension/tests.py:685
Method
test_ingest_delete_then_list
Deleted archive should not appear in default list.
apps/archive_extension/tests.py:1563
Method
test_ingest_duplicate_url_updates
Ingesting same URL twice should update, not create.
apps/archive_extension/tests.py:764
Method
test_ingest_missing_title_returns_error
Missing title should return error.
apps/archive_extension/tests.py:664
Method
test_ingest_missing_url_returns_error
Missing URL should return error.
apps/archive_extension/tests.py:654
Method
test_ingest_requires_authentication
Ingest endpoint should require authentication.
apps/archive_extension/tests.py:644
Method
test_ingest_returns_archive_id
Ingest response should include archive_id.
apps/archive_extension/tests.py:699
Method
test_ingest_then_export_csv
Archives should be exportable as CSV.
apps/archive_extension/tests.py:1605
Method
test_ingest_then_export_json
Archives should be exportable as JSON.
apps/archive_extension/tests.py:1585
Method
test_ingest_then_list
Archive created via ingest should appear in list.
apps/archive_extension/tests.py:1479
Method
test_ingest_then_retrieve_content
Content ingested should be retrievable.
apps/archive_extension/tests.py:1497
Method
test_ingest_update_then_list
Revisiting URL should update archive fields.
apps/archive_extension/tests.py:1516
Method
test_ingest_updates_user_stats
Ingest should increment total_archived.
apps/archive_extension/tests.py:712
Method
test_ingest_with_all_optional_fields
All optional fields should be stored.
apps/archive_extension/tests.py:792
Method
test_ingest_with_content
Content should be stored when provided.
apps/archive_extension/tests.py:731
Method
test_ingest_without_content
Archive should be created without content.
apps/archive_extension/tests.py:749
Method
test_invalid_feed_id_ignored
Invalid feed IDs don't crash or pollute data.
apps/statistics/tests.py:208
Method
test_invalid_input_ignored
Invalid story hashes and short reads don't crash or pollute data.
apps/statistics/tests.py:108
Method
test_invalid_json_returns_none
(self)
apps/webfeed/tests.py:211
Method
test_is_image_url
(self)
apps/rss_feeds/test_reddit_fetcher.py:504
Method
test_is_openrss_feed_address__genuine_hosts
(self)
apps/rss_feeds/test_rss_feeds.py:1549
Method
test_is_openrss_feed_address__lookalike_hosts
(self)
apps/rss_feeds/test_rss_feeds.py:1558
Method
test_is_reddit_internal_url
(self)
apps/rss_feeds/test_reddit_fetcher.py:509
Method
test_is_youtube_feed_address__genuine_youtube_hosts
(self)
apps/rss_feeds/test_rss_feeds.py:1490
Method
test_is_youtube_feed_address__proxied_and_lookalike_hosts
(self)
apps/rss_feeds/test_rss_feeds.py:1501
Method
test_json_feed_url_is_feed
(self)
apps/webfeed/tests.py:419
Method
test_keeps_first_when_it_has_more
(self)
apps/webfeed/tests.py:254
Method
test_latest_for_user
(self)
apps/briefing/tests.py:1429
Method
test_latest_for_user_empty
(self)
apps/briefing/tests.py:1440
Method
test_lazy_merge__no_zunionstore_in_river
Test that river loading does NOT use ZUNIONSTORE for aggregation. The lazy merge path should avoid the blocking ZUNIONSTORE entirely.
apps/reader/test_river_stories.py:1201
Method
test_lazy_merge__pagination_extends_cache
Test that lazy merge pagination works: page 2 extends the cache from page 1 rather than replacing it, so subsequent pages load correc
apps/reader/test_river_stories.py:1152
Method
test_lazy_merge__pagination_stable_after_mark_read
Test that marking stories as read between page loads doesn't cause stories to be skipped on subsequent pages (read_filter='unread').
apps/reader/test_river_stories.py:1239
Method
test_lazy_merge__pagination_stable_when_unread_feed_drops_out
A folder river's cache key must stay anchored to the validated requested feed set even when one feed reaches zero unread stories betw
apps/reader/test_river_stories.py:1342
Method
test_lazy_merge__returns_stories_sorted_newest_first
Test that lazy merge (k-way heap) returns stories in correct newest-first order. All river loads now use lazy merge instead of ZUNION
apps/reader/test_river_stories.py:1062
Method
test_lazy_merge__returns_stories_sorted_oldest_first
Test that lazy merge works with oldest-first ordering.
apps/reader/test_river_stories.py:1096
← previous
next →
5,101–5,200 of 5,735, ranked by callers