From 0754f0719e8868143fcd36a7e1348c8372d188e9 Mon Sep 17 00:00:00 2001 From: Gil Desmarais Date: Wed, 10 Sep 2025 22:26:45 +0200 Subject: [PATCH 1/3] feat: setup dynamic rspec testing / good-bye manual test creation --- Makefile | 35 ++++++++++++++++++++++++++ README.md | 17 +++++++++++++ bin/rspec_changed_configs | 16 ++++++------ spec/html2rss/configs_dynamic_spec.rb | 36 +++++++++++++++++++++++++++ 4 files changed, 97 insertions(+), 7 deletions(-) create mode 100644 spec/html2rss/configs_dynamic_spec.rb diff --git a/Makefile b/Makefile index 24d4651..2e889ed 100644 --- a/Makefile +++ b/Makefile @@ -16,6 +16,41 @@ test-fetch-all-configs: test-all: test test-fetch-all-configs +# Dynamic test commands +test-config: + @if [ -z "$(CONFIG)" ]; then \ + echo "Usage: make test-config CONFIG=github.com/releases.yml"; \ + echo " make test-config CONFIG=github.com"; \ + exit 1; \ + fi + bundle exec rspec --example "$(CONFIG)" spec/html2rss/configs_dynamic_spec.rb + +test-domain: + @if [ -z "$(DOMAIN)" ]; then \ + echo "Usage: make test-domain DOMAIN=github.com"; \ + exit 1; \ + fi + bundle exec rspec --example "$(DOMAIN)" spec/html2rss/configs_dynamic_spec.rb + +test-debug: + @if [ -z "$(CONFIG)" ]; then \ + echo "Usage: make test-debug CONFIG=github.com/releases.yml"; \ + exit 1; \ + fi + DEBUG_CONFIG=$(CONFIG) bundle exec rspec spec/html2rss/configs_dynamic_spec.rb + +# Migration commands +migrate-tests: + bin/migrate_to_dynamic_tests + +restore-tests: + @if [ -d "spec/html2rss/configs_backup" ]; then \ + cp -r spec/html2rss/configs_backup/* spec/html2rss/configs/; \ + echo "✅ Restored tests from backup"; \ + else \ + echo "❌ No backup found"; \ + fi + lintfix: bundle exec rubocop -a npx prettier --write lib/**/*.yml .github/**/*.yml README.md diff --git a/README.md b/README.md index 1a06e17..faf5236 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,23 @@ channel: The `type` field specifies the parameter type (currently only `string` is supported), and `default` provides the default value when no parameter is explicitly provided. +## Testing + +Uses **dynamic test generation** - no individual spec files needed! + +```bash +# Test all configs +bundle exec rspec spec/html2rss/configs_dynamic_spec.rb + +# Test specific config +make test-config CONFIG=github.com/releases.yml + +# Test domain +make test-domain DOMAIN=github.com +``` + +**Adding new configs**: Just create the YAML file and run tests. No spec file needed. + ## Documentation - [Main Documentation](https://html2rss.github.io/html2rss-configs/) diff --git a/bin/rspec_changed_configs b/bin/rspec_changed_configs index 51b9b02..8a07861 100755 --- a/bin/rspec_changed_configs +++ b/bin/rspec_changed_configs @@ -3,14 +3,16 @@ changed_files = `git diff --name-only origin/master | grep 'lib/html2rss/configs/.*/.*.yml'`.split("\n") -specs_to_run = changed_files.filter_map do |file| - filepath = File.expand_path File.join(__dir__, '..', file) +if changed_files.count.positive? + # Use dynamic test file with environment variable to filter changed configs + config_names = changed_files.map { |file| file.sub('lib/html2rss/configs/', '') } - "#{file.gsub('lib/', 'spec/')}_spec.rb" if File.exist?(filepath) -end - -if specs_to_run.count.positive? - exec "bundle exec rspec --tag fetch #{specs_to_run.join(' ')}" + # Test each changed config individually + config_names.each do |config_name| + puts "Testing changed config: #{config_name}" + system("bundle exec rspec --example '#{config_name}' --tag fetch spec/html2rss/configs_dynamic_spec.rb") + end else + puts 'No changed config files found' exit 0 end diff --git a/spec/html2rss/configs_dynamic_spec.rb b/spec/html2rss/configs_dynamic_spec.rb new file mode 100644 index 0000000..914d9b1 --- /dev/null +++ b/spec/html2rss/configs_dynamic_spec.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +RSpec.describe Html2rss::Configs do + # Get all YAML config files + config_files = Dir.glob('lib/html2rss/configs/**/*.yml') + + # Filter by environment variable if specified + config_files = config_files.select { |f| f.include?(ENV['TEST_CONFIG']) } if ENV['TEST_CONFIG'] + + # Filter by RSpec example pattern if specified + if RSpec.configuration.filter_manager.inclusions.rules[:example] + pattern = RSpec.configuration.filter_manager.inclusions.rules[:example].first + config_files = config_files.select { |f| f.include?(pattern) } + end + + config_files.each do |config_file| + relative_path = config_file.sub('lib/html2rss/configs/', '') + config_name = relative_path.tr('/', '_').gsub('.yml', '') + domain = relative_path.split('/').first + + describe "#{relative_path} (#{config_name})", config: config_name, domain: domain do + it_behaves_like 'config.yml', relative_path + + # Add debugging hook for specific configs + if ENV['DEBUG_CONFIG'] == relative_path + it 'debugs the config' do + puts "Debugging config: #{relative_path}" + puts "File path: #{config_file}" + puts "Config name: #{config_name}" + puts "Domain: #{domain}" + expect(relative_path).to be_a(String) # Add meaningful expectation + end + end + end + end +end From 0624ea9b37ccaeb96a16f9f8e9a104f3a324cb44 Mon Sep 17 00:00:00 2001 From: Gil Desmarais Date: Wed, 10 Sep 2025 22:30:19 +0200 Subject: [PATCH 2/3] feat: remove test files / not-required any longer --- spec/html2rss/configs/adfc.de/pressemitteilungen.yml_spec.rb | 5 ----- spec/html2rss/configs/apnews.com/hub.yml_spec.rb | 5 ----- spec/html2rss/configs/avherald.com/index.yml_spec.rb | 5 ----- .../configs/bbc.co.uk/available_episodes.yml_spec.rb | 5 ----- spec/html2rss/configs/bbc.com/mundo.yml_spec.rb | 5 ----- spec/html2rss/configs/blog.mondediplo.net/feed.yml_spec.rb | 5 ----- spec/html2rss/configs/canarianweekly.com/front.yml_spec.rb | 5 ----- spec/html2rss/configs/cinemascore.com/index.yml_spec.rb | 5 ----- spec/html2rss/configs/cleanenergywire.org/news.yml_spec.rb | 5 ----- spec/html2rss/configs/cnet.com/section_sub.yml_spec.rb | 5 ----- .../configs/computerbase.de/meistgelesen.yml_spec.rb | 5 ----- spec/html2rss/configs/cutle.fish/index.yml_spec.rb | 5 ----- .../configs/deraktionaer.de/meistgelesen.yml_spec.rb | 5 ----- .../tutorials_data_documentation_technotes_json.yml_spec.rb | 5 ----- spec/html2rss/configs/dfs.de/pressemitteilungen.yml_spec.rb | 5 ----- spec/html2rss/configs/dsw-info.de/presse.yml_spec.rb | 5 ----- spec/html2rss/configs/espn.com/f1.yml_spec.rb | 5 ----- spec/html2rss/configs/fia.com/documents.yml_spec.rb | 5 ----- spec/html2rss/configs/formula1.com/latest.yml_spec.rb | 5 ----- spec/html2rss/configs/github.com/releases.yml_spec.rb | 5 ----- spec/html2rss/configs/iaapa.org/news.yml_spec.rb | 5 ----- spec/html2rss/configs/imdb.com/ratings.yml_spec.rb | 5 ----- .../karriere_arbeitsleben_heiko_mell.yml_spec.rb | 5 ----- spec/html2rss/configs/kinocheck.de/filmstarts.yml_spec.rb | 5 ----- spec/html2rss/configs/newyorker.com/magazine.yml_spec.rb | 5 ----- spec/html2rss/configs/nomanssky.com/news.yml_spec.rb | 5 ----- .../search.yml_spec.rb | 5 ----- spec/html2rss/configs/phys.org/weekly.yml_spec.rb | 5 ----- spec/html2rss/configs/rbb24.de/meistgeklickt.yml_spec.rb | 5 ----- spec/html2rss/configs/robinwood.de/aktuelles.yml_spec.rb | 5 ----- .../configs/s3.amazonaws.com/popular_movies.yml_spec.rb | 5 ----- spec/html2rss/configs/sebastianvettel.de/news.yml_spec.rb | 5 ----- .../configs/softwareleadweekly.com/issues.yml_spec.rb | 5 ----- spec/html2rss/configs/solarthermalworld.org/news.yml_spec.rb | 5 ----- spec/html2rss/configs/spektrum.de/meistgelesen.yml_spec.rb | 5 ----- spec/html2rss/configs/spiegel.de/impressum_autor.yml_spec.rb | 5 ----- .../stackoverflow.com/hot_network_questions.yml_spec.rb | 5 ----- spec/html2rss/configs/steuerzahler.de/news.yml_spec.rb | 5 ----- spec/html2rss/configs/stripes.com/index.yml_spec.rb | 5 ----- .../configs/support.apple.com/en_gb_ht201222.yml_spec.rb | 5 ----- .../configs/support.apple.com/exchange_repair.yml_spec.rb | 5 ----- spec/html2rss/configs/teneriffa-news.com/news.yml_spec.rb | 5 ----- spec/html2rss/configs/test.de/archiv.yml_spec.rb | 5 ----- .../theguardian.com/international_mostpopular.yml_spec.rb | 5 ----- spec/html2rss/configs/thoughtworks.com/insights.yml_spec.rb | 5 ----- .../aktuelle_nachrichten.yml_spec.rb | 5 ----- spec/html2rss/configs/webentwickler-jobs.de/in.yml_spec.rb | 5 ----- 47 files changed, 235 deletions(-) delete mode 100644 spec/html2rss/configs/adfc.de/pressemitteilungen.yml_spec.rb delete mode 100644 spec/html2rss/configs/apnews.com/hub.yml_spec.rb delete mode 100644 spec/html2rss/configs/avherald.com/index.yml_spec.rb delete mode 100644 spec/html2rss/configs/bbc.co.uk/available_episodes.yml_spec.rb delete mode 100644 spec/html2rss/configs/bbc.com/mundo.yml_spec.rb delete mode 100644 spec/html2rss/configs/blog.mondediplo.net/feed.yml_spec.rb delete mode 100644 spec/html2rss/configs/canarianweekly.com/front.yml_spec.rb delete mode 100644 spec/html2rss/configs/cinemascore.com/index.yml_spec.rb delete mode 100644 spec/html2rss/configs/cleanenergywire.org/news.yml_spec.rb delete mode 100644 spec/html2rss/configs/cnet.com/section_sub.yml_spec.rb delete mode 100644 spec/html2rss/configs/computerbase.de/meistgelesen.yml_spec.rb delete mode 100644 spec/html2rss/configs/cutle.fish/index.yml_spec.rb delete mode 100644 spec/html2rss/configs/deraktionaer.de/meistgelesen.yml_spec.rb delete mode 100644 spec/html2rss/configs/developer.apple.com/tutorials_data_documentation_technotes_json.yml_spec.rb delete mode 100644 spec/html2rss/configs/dfs.de/pressemitteilungen.yml_spec.rb delete mode 100644 spec/html2rss/configs/dsw-info.de/presse.yml_spec.rb delete mode 100644 spec/html2rss/configs/espn.com/f1.yml_spec.rb delete mode 100644 spec/html2rss/configs/fia.com/documents.yml_spec.rb delete mode 100644 spec/html2rss/configs/formula1.com/latest.yml_spec.rb delete mode 100644 spec/html2rss/configs/github.com/releases.yml_spec.rb delete mode 100644 spec/html2rss/configs/iaapa.org/news.yml_spec.rb delete mode 100644 spec/html2rss/configs/imdb.com/ratings.yml_spec.rb delete mode 100644 spec/html2rss/configs/ingenieur.de/karriere_arbeitsleben_heiko_mell.yml_spec.rb delete mode 100644 spec/html2rss/configs/kinocheck.de/filmstarts.yml_spec.rb delete mode 100644 spec/html2rss/configs/newyorker.com/magazine.yml_spec.rb delete mode 100644 spec/html2rss/configs/nomanssky.com/news.yml_spec.rb delete mode 100644 spec/html2rss/configs/pankow.lebensmittel-kontrollergebnisse.de/search.yml_spec.rb delete mode 100644 spec/html2rss/configs/phys.org/weekly.yml_spec.rb delete mode 100644 spec/html2rss/configs/rbb24.de/meistgeklickt.yml_spec.rb delete mode 100644 spec/html2rss/configs/robinwood.de/aktuelles.yml_spec.rb delete mode 100644 spec/html2rss/configs/s3.amazonaws.com/popular_movies.yml_spec.rb delete mode 100644 spec/html2rss/configs/sebastianvettel.de/news.yml_spec.rb delete mode 100644 spec/html2rss/configs/softwareleadweekly.com/issues.yml_spec.rb delete mode 100644 spec/html2rss/configs/solarthermalworld.org/news.yml_spec.rb delete mode 100644 spec/html2rss/configs/spektrum.de/meistgelesen.yml_spec.rb delete mode 100644 spec/html2rss/configs/spiegel.de/impressum_autor.yml_spec.rb delete mode 100644 spec/html2rss/configs/stackoverflow.com/hot_network_questions.yml_spec.rb delete mode 100644 spec/html2rss/configs/steuerzahler.de/news.yml_spec.rb delete mode 100644 spec/html2rss/configs/stripes.com/index.yml_spec.rb delete mode 100644 spec/html2rss/configs/support.apple.com/en_gb_ht201222.yml_spec.rb delete mode 100644 spec/html2rss/configs/support.apple.com/exchange_repair.yml_spec.rb delete mode 100644 spec/html2rss/configs/teneriffa-news.com/news.yml_spec.rb delete mode 100644 spec/html2rss/configs/test.de/archiv.yml_spec.rb delete mode 100644 spec/html2rss/configs/theguardian.com/international_mostpopular.yml_spec.rb delete mode 100644 spec/html2rss/configs/thoughtworks.com/insights.yml_spec.rb delete mode 100644 spec/html2rss/configs/tourismusnetzwerk-brandenburg.de/aktuelle_nachrichten.yml_spec.rb delete mode 100644 spec/html2rss/configs/webentwickler-jobs.de/in.yml_spec.rb diff --git a/spec/html2rss/configs/adfc.de/pressemitteilungen.yml_spec.rb b/spec/html2rss/configs/adfc.de/pressemitteilungen.yml_spec.rb deleted file mode 100644 index d315fcf..0000000 --- a/spec/html2rss/configs/adfc.de/pressemitteilungen.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'adfc.de/pressemitteilungen.yml' do - it_behaves_like 'config.yml', 'adfc.de/pressemitteilungen.yml' -end diff --git a/spec/html2rss/configs/apnews.com/hub.yml_spec.rb b/spec/html2rss/configs/apnews.com/hub.yml_spec.rb deleted file mode 100644 index 7550870..0000000 --- a/spec/html2rss/configs/apnews.com/hub.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'apnews.com/hub.yml' do - it_behaves_like 'config.yml', 'apnews.com/hub.yml' -end diff --git a/spec/html2rss/configs/avherald.com/index.yml_spec.rb b/spec/html2rss/configs/avherald.com/index.yml_spec.rb deleted file mode 100644 index 7312fc2..0000000 --- a/spec/html2rss/configs/avherald.com/index.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'avherald.com/index.yml' do - it_behaves_like 'config.yml', 'avherald.com/index.yml' -end diff --git a/spec/html2rss/configs/bbc.co.uk/available_episodes.yml_spec.rb b/spec/html2rss/configs/bbc.co.uk/available_episodes.yml_spec.rb deleted file mode 100644 index 00e89c0..0000000 --- a/spec/html2rss/configs/bbc.co.uk/available_episodes.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'bbc.co.uk/available-episodes.yml' do - it_behaves_like 'config.yml', 'bbc.co.uk/available_episodes.yml' -end diff --git a/spec/html2rss/configs/bbc.com/mundo.yml_spec.rb b/spec/html2rss/configs/bbc.com/mundo.yml_spec.rb deleted file mode 100644 index 757994f..0000000 --- a/spec/html2rss/configs/bbc.com/mundo.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'bbc.com/mundo.yml' do - it_behaves_like 'config.yml', 'bbc.com/mundo.yml' -end diff --git a/spec/html2rss/configs/blog.mondediplo.net/feed.yml_spec.rb b/spec/html2rss/configs/blog.mondediplo.net/feed.yml_spec.rb deleted file mode 100644 index ca1b274..0000000 --- a/spec/html2rss/configs/blog.mondediplo.net/feed.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'blog.mondediplo.net/feed.yml' do - it_behaves_like 'config.yml', 'blog.mondediplo.net/feed.yml' -end diff --git a/spec/html2rss/configs/canarianweekly.com/front.yml_spec.rb b/spec/html2rss/configs/canarianweekly.com/front.yml_spec.rb deleted file mode 100644 index ea2b915..0000000 --- a/spec/html2rss/configs/canarianweekly.com/front.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'canarianweekly.com/front.yml' do - it_behaves_like 'config.yml', 'canarianweekly.com/front.yml' -end diff --git a/spec/html2rss/configs/cinemascore.com/index.yml_spec.rb b/spec/html2rss/configs/cinemascore.com/index.yml_spec.rb deleted file mode 100644 index f4149b6..0000000 --- a/spec/html2rss/configs/cinemascore.com/index.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'cinemascore.com/index.yml' do - it_behaves_like 'config.yml', 'cinemascore.com/index.yml' -end diff --git a/spec/html2rss/configs/cleanenergywire.org/news.yml_spec.rb b/spec/html2rss/configs/cleanenergywire.org/news.yml_spec.rb deleted file mode 100644 index 313d0d5..0000000 --- a/spec/html2rss/configs/cleanenergywire.org/news.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'cleanenergywire.org/news.yml' do - it_behaves_like 'config.yml', 'cleanenergywire.org/news.yml' -end diff --git a/spec/html2rss/configs/cnet.com/section_sub.yml_spec.rb b/spec/html2rss/configs/cnet.com/section_sub.yml_spec.rb deleted file mode 100644 index 9bf7d68..0000000 --- a/spec/html2rss/configs/cnet.com/section_sub.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'cnet.com/section_sub.yml' do - it_behaves_like 'config.yml', 'cnet.com/section_sub.yml' -end diff --git a/spec/html2rss/configs/computerbase.de/meistgelesen.yml_spec.rb b/spec/html2rss/configs/computerbase.de/meistgelesen.yml_spec.rb deleted file mode 100644 index fb34173..0000000 --- a/spec/html2rss/configs/computerbase.de/meistgelesen.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'computerbase.de/meistgelesen.yml' do - it_behaves_like 'config.yml', 'computerbase.de/meistgelesen.yml' -end diff --git a/spec/html2rss/configs/cutle.fish/index.yml_spec.rb b/spec/html2rss/configs/cutle.fish/index.yml_spec.rb deleted file mode 100644 index d8f0aeb..0000000 --- a/spec/html2rss/configs/cutle.fish/index.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'cutle.fish/index.yml' do - it_behaves_like 'config.yml', 'cutle.fish/index.yml' -end diff --git a/spec/html2rss/configs/deraktionaer.de/meistgelesen.yml_spec.rb b/spec/html2rss/configs/deraktionaer.de/meistgelesen.yml_spec.rb deleted file mode 100644 index 695a082..0000000 --- a/spec/html2rss/configs/deraktionaer.de/meistgelesen.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'deraktionaer.de/meistgelesen.yml' do - it_behaves_like 'config.yml', 'deraktionaer.de/meistgelesen.yml' -end diff --git a/spec/html2rss/configs/developer.apple.com/tutorials_data_documentation_technotes_json.yml_spec.rb b/spec/html2rss/configs/developer.apple.com/tutorials_data_documentation_technotes_json.yml_spec.rb deleted file mode 100644 index ddeb4e1..0000000 --- a/spec/html2rss/configs/developer.apple.com/tutorials_data_documentation_technotes_json.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'developer.apple.com/tutorials_data_documentation_technotes_json.yml' do - it_behaves_like 'config.yml', 'developer.apple.com/tutorials_data_documentation_technotes_json.yml' -end diff --git a/spec/html2rss/configs/dfs.de/pressemitteilungen.yml_spec.rb b/spec/html2rss/configs/dfs.de/pressemitteilungen.yml_spec.rb deleted file mode 100644 index 750426e..0000000 --- a/spec/html2rss/configs/dfs.de/pressemitteilungen.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'dfs.de/pressemitteilungen.yml' do - it_behaves_like 'config.yml', 'dfs.de/pressemitteilungen.yml' -end diff --git a/spec/html2rss/configs/dsw-info.de/presse.yml_spec.rb b/spec/html2rss/configs/dsw-info.de/presse.yml_spec.rb deleted file mode 100644 index 99eb736..0000000 --- a/spec/html2rss/configs/dsw-info.de/presse.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'dsw-info.de/presse.yml' do - it_behaves_like 'config.yml', 'dsw-info.de/presse.yml' -end diff --git a/spec/html2rss/configs/espn.com/f1.yml_spec.rb b/spec/html2rss/configs/espn.com/f1.yml_spec.rb deleted file mode 100644 index 50ebed5..0000000 --- a/spec/html2rss/configs/espn.com/f1.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'espn.com/f1.yml' do - it_behaves_like 'config.yml', 'espn.com/f1.yml' -end diff --git a/spec/html2rss/configs/fia.com/documents.yml_spec.rb b/spec/html2rss/configs/fia.com/documents.yml_spec.rb deleted file mode 100644 index ae6ad64..0000000 --- a/spec/html2rss/configs/fia.com/documents.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'fia.com/documents.yml' do - it_behaves_like 'config.yml', 'fia.com/documents.yml' -end diff --git a/spec/html2rss/configs/formula1.com/latest.yml_spec.rb b/spec/html2rss/configs/formula1.com/latest.yml_spec.rb deleted file mode 100644 index 8841bd7..0000000 --- a/spec/html2rss/configs/formula1.com/latest.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'formula1.com/latest.yml' do - it_behaves_like 'config.yml', 'formula1.com/latest.yml' -end diff --git a/spec/html2rss/configs/github.com/releases.yml_spec.rb b/spec/html2rss/configs/github.com/releases.yml_spec.rb deleted file mode 100644 index 72042dc..0000000 --- a/spec/html2rss/configs/github.com/releases.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'github.com/releases.yml' do - it_behaves_like 'config.yml', 'github.com/releases.yml' -end diff --git a/spec/html2rss/configs/iaapa.org/news.yml_spec.rb b/spec/html2rss/configs/iaapa.org/news.yml_spec.rb deleted file mode 100644 index 0736743..0000000 --- a/spec/html2rss/configs/iaapa.org/news.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'iaapa.org/news.yml' do - it_behaves_like 'config.yml', 'iaapa.org/news.yml' -end diff --git a/spec/html2rss/configs/imdb.com/ratings.yml_spec.rb b/spec/html2rss/configs/imdb.com/ratings.yml_spec.rb deleted file mode 100644 index 964d7fa..0000000 --- a/spec/html2rss/configs/imdb.com/ratings.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'imdb.com/ratings.yml' do - it_behaves_like 'config.yml', 'imdb.com/ratings.yml' -end diff --git a/spec/html2rss/configs/ingenieur.de/karriere_arbeitsleben_heiko_mell.yml_spec.rb b/spec/html2rss/configs/ingenieur.de/karriere_arbeitsleben_heiko_mell.yml_spec.rb deleted file mode 100644 index 4a1ea47..0000000 --- a/spec/html2rss/configs/ingenieur.de/karriere_arbeitsleben_heiko_mell.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'ingenieur.de/karriere_arbeitsleben_heiko_mell.yml' do - it_behaves_like 'config.yml', 'ingenieur.de/karriere_arbeitsleben_heiko_mell.yml' -end diff --git a/spec/html2rss/configs/kinocheck.de/filmstarts.yml_spec.rb b/spec/html2rss/configs/kinocheck.de/filmstarts.yml_spec.rb deleted file mode 100644 index 24bec98..0000000 --- a/spec/html2rss/configs/kinocheck.de/filmstarts.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'kinocheck.de/filmstarts.yml' do - it_behaves_like 'config.yml', 'kinocheck.de/filmstarts.yml' -end diff --git a/spec/html2rss/configs/newyorker.com/magazine.yml_spec.rb b/spec/html2rss/configs/newyorker.com/magazine.yml_spec.rb deleted file mode 100644 index ddf84ba..0000000 --- a/spec/html2rss/configs/newyorker.com/magazine.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'newyorker.com/magazine.yml' do - it_behaves_like 'config.yml', 'newyorker.com/magazine.yml' -end diff --git a/spec/html2rss/configs/nomanssky.com/news.yml_spec.rb b/spec/html2rss/configs/nomanssky.com/news.yml_spec.rb deleted file mode 100644 index 260600b..0000000 --- a/spec/html2rss/configs/nomanssky.com/news.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'nomanssky.com/news.yml' do - it_behaves_like 'config.yml', 'nomanssky.com/news.yml' -end diff --git a/spec/html2rss/configs/pankow.lebensmittel-kontrollergebnisse.de/search.yml_spec.rb b/spec/html2rss/configs/pankow.lebensmittel-kontrollergebnisse.de/search.yml_spec.rb deleted file mode 100644 index 07eeb3c..0000000 --- a/spec/html2rss/configs/pankow.lebensmittel-kontrollergebnisse.de/search.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'pankow.lebensmittel-kontrollergebnisse.de/search.yml' do - it_behaves_like 'config.yml', 'pankow.lebensmittel-kontrollergebnisse.de/search.yml' -end diff --git a/spec/html2rss/configs/phys.org/weekly.yml_spec.rb b/spec/html2rss/configs/phys.org/weekly.yml_spec.rb deleted file mode 100644 index 6392571..0000000 --- a/spec/html2rss/configs/phys.org/weekly.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'phys.org/weekly.yml' do - it_behaves_like 'config.yml', 'phys.org/weekly.yml' -end diff --git a/spec/html2rss/configs/rbb24.de/meistgeklickt.yml_spec.rb b/spec/html2rss/configs/rbb24.de/meistgeklickt.yml_spec.rb deleted file mode 100644 index 2c3211d..0000000 --- a/spec/html2rss/configs/rbb24.de/meistgeklickt.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'rbb24.de/meistgeklickt.yml' do - it_behaves_like 'config.yml', 'rbb24.de/meistgeklickt.yml' -end diff --git a/spec/html2rss/configs/robinwood.de/aktuelles.yml_spec.rb b/spec/html2rss/configs/robinwood.de/aktuelles.yml_spec.rb deleted file mode 100644 index 86ae0e8..0000000 --- a/spec/html2rss/configs/robinwood.de/aktuelles.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'robinwood.de/aktuelles.yml' do - it_behaves_like 'config.yml', 'robinwood.de/aktuelles.yml' -end diff --git a/spec/html2rss/configs/s3.amazonaws.com/popular_movies.yml_spec.rb b/spec/html2rss/configs/s3.amazonaws.com/popular_movies.yml_spec.rb deleted file mode 100644 index 045b767..0000000 --- a/spec/html2rss/configs/s3.amazonaws.com/popular_movies.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 's3.amaoznaws.com/popular_movies.yml' do - it_behaves_like 'config.yml', 's3.amazonaws.com/popular_movies.yml' -end diff --git a/spec/html2rss/configs/sebastianvettel.de/news.yml_spec.rb b/spec/html2rss/configs/sebastianvettel.de/news.yml_spec.rb deleted file mode 100644 index 4faaafb..0000000 --- a/spec/html2rss/configs/sebastianvettel.de/news.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'sebastianvettel.de/news.yml' do - it_behaves_like 'config.yml', 'sebastianvettel.de/news.yml' -end diff --git a/spec/html2rss/configs/softwareleadweekly.com/issues.yml_spec.rb b/spec/html2rss/configs/softwareleadweekly.com/issues.yml_spec.rb deleted file mode 100644 index 59191df..0000000 --- a/spec/html2rss/configs/softwareleadweekly.com/issues.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'softwareleadweekly.com/issues.yml' do - it_behaves_like 'config.yml', 'softwareleadweekly.com/issues.yml' -end diff --git a/spec/html2rss/configs/solarthermalworld.org/news.yml_spec.rb b/spec/html2rss/configs/solarthermalworld.org/news.yml_spec.rb deleted file mode 100644 index 65e3df0..0000000 --- a/spec/html2rss/configs/solarthermalworld.org/news.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'solarthermalworld.org/news.yml' do - it_behaves_like 'config.yml', 'solarthermalworld.org/news.yml' -end diff --git a/spec/html2rss/configs/spektrum.de/meistgelesen.yml_spec.rb b/spec/html2rss/configs/spektrum.de/meistgelesen.yml_spec.rb deleted file mode 100644 index 7b963e4..0000000 --- a/spec/html2rss/configs/spektrum.de/meistgelesen.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'spektrum.de/meistgelesen.yml' do - it_behaves_like 'config.yml', 'spektrum.de/meistgelesen.yml' -end diff --git a/spec/html2rss/configs/spiegel.de/impressum_autor.yml_spec.rb b/spec/html2rss/configs/spiegel.de/impressum_autor.yml_spec.rb deleted file mode 100644 index 9c44d93..0000000 --- a/spec/html2rss/configs/spiegel.de/impressum_autor.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'spiegel.de/impressum_autor.yml' do - it_behaves_like 'config.yml', 'spiegel.de/impressum_autor.yml' -end diff --git a/spec/html2rss/configs/stackoverflow.com/hot_network_questions.yml_spec.rb b/spec/html2rss/configs/stackoverflow.com/hot_network_questions.yml_spec.rb deleted file mode 100644 index b705193..0000000 --- a/spec/html2rss/configs/stackoverflow.com/hot_network_questions.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'stackoverflow.com/hot_network_questions.yml' do - it_behaves_like 'config.yml', 'stackoverflow.com/hot_network_questions.yml' -end diff --git a/spec/html2rss/configs/steuerzahler.de/news.yml_spec.rb b/spec/html2rss/configs/steuerzahler.de/news.yml_spec.rb deleted file mode 100644 index b7400c8..0000000 --- a/spec/html2rss/configs/steuerzahler.de/news.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'steuerzahler.de/news.yml' do - it_behaves_like 'config.yml', 'steuerzahler.de/news.yml' -end diff --git a/spec/html2rss/configs/stripes.com/index.yml_spec.rb b/spec/html2rss/configs/stripes.com/index.yml_spec.rb deleted file mode 100644 index 281c8d5..0000000 --- a/spec/html2rss/configs/stripes.com/index.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'stripes.com/index.yml' do - it_behaves_like 'config.yml', 'stripes.com/index.yml' -end diff --git a/spec/html2rss/configs/support.apple.com/en_gb_ht201222.yml_spec.rb b/spec/html2rss/configs/support.apple.com/en_gb_ht201222.yml_spec.rb deleted file mode 100644 index a17f5ef..0000000 --- a/spec/html2rss/configs/support.apple.com/en_gb_ht201222.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'support.apple.com/en_gb_ht201222.yml' do - it_behaves_like 'config.yml', 'support.apple.com/en_gb_ht201222.yml' -end diff --git a/spec/html2rss/configs/support.apple.com/exchange_repair.yml_spec.rb b/spec/html2rss/configs/support.apple.com/exchange_repair.yml_spec.rb deleted file mode 100644 index 36a3f49..0000000 --- a/spec/html2rss/configs/support.apple.com/exchange_repair.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'support.apple.com/exchange_repair.yml' do - it_behaves_like 'config.yml', 'support.apple.com/exchange_repair.yml' -end diff --git a/spec/html2rss/configs/teneriffa-news.com/news.yml_spec.rb b/spec/html2rss/configs/teneriffa-news.com/news.yml_spec.rb deleted file mode 100644 index 5eeda50..0000000 --- a/spec/html2rss/configs/teneriffa-news.com/news.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'teneriffa-news.com/news.yml' do - it_behaves_like 'config.yml', 'teneriffa-news.com/news.yml' -end diff --git a/spec/html2rss/configs/test.de/archiv.yml_spec.rb b/spec/html2rss/configs/test.de/archiv.yml_spec.rb deleted file mode 100644 index 36847a8..0000000 --- a/spec/html2rss/configs/test.de/archiv.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'test.de/archiv.yml' do - it_behaves_like 'config.yml', 'test.de/archiv.yml' -end diff --git a/spec/html2rss/configs/theguardian.com/international_mostpopular.yml_spec.rb b/spec/html2rss/configs/theguardian.com/international_mostpopular.yml_spec.rb deleted file mode 100644 index d535a0e..0000000 --- a/spec/html2rss/configs/theguardian.com/international_mostpopular.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'theguardian.com/international_mostpopular.yml' do - it_behaves_like 'config.yml', 'theguardian.com/international_mostpopular.yml' -end diff --git a/spec/html2rss/configs/thoughtworks.com/insights.yml_spec.rb b/spec/html2rss/configs/thoughtworks.com/insights.yml_spec.rb deleted file mode 100644 index 9832aa5..0000000 --- a/spec/html2rss/configs/thoughtworks.com/insights.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'thoughtworks.com/insights.yml' do - it_behaves_like 'config.yml', 'thoughtworks.com/insights.yml' -end diff --git a/spec/html2rss/configs/tourismusnetzwerk-brandenburg.de/aktuelle_nachrichten.yml_spec.rb b/spec/html2rss/configs/tourismusnetzwerk-brandenburg.de/aktuelle_nachrichten.yml_spec.rb deleted file mode 100644 index 04ad77c..0000000 --- a/spec/html2rss/configs/tourismusnetzwerk-brandenburg.de/aktuelle_nachrichten.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'tourismusnetzwerk-brandenburg.de/aktuelle_nachrichten.yml' do - it_behaves_like 'config.yml', 'tourismusnetzwerk-brandenburg.de/aktuelle_nachrichten.yml' -end diff --git a/spec/html2rss/configs/webentwickler-jobs.de/in.yml_spec.rb b/spec/html2rss/configs/webentwickler-jobs.de/in.yml_spec.rb deleted file mode 100644 index 99a02bc..0000000 --- a/spec/html2rss/configs/webentwickler-jobs.de/in.yml_spec.rb +++ /dev/null @@ -1,5 +0,0 @@ -# frozen_string_literal: true - -RSpec.describe 'webentwickler-jobs.de/in.yml' do - it_behaves_like 'config.yml', 'webentwickler-jobs.de/in.yml' -end From 3583e68fad7cfafe7b93bc1bc218d98178fae25f Mon Sep 17 00:00:00 2001 From: Gil Desmarais Date: Wed, 10 Sep 2025 22:58:01 +0200 Subject: [PATCH 3/3] fix: add missing default param --- lib/html2rss/configs/apnews.com/hub.yml | 5 +++++ lib/html2rss/configs/cnet.com/section_sub.yml | 8 ++++++++ lib/html2rss/configs/webentwickler-jobs.de/in.yml | 5 +++++ 3 files changed, 18 insertions(+) diff --git a/lib/html2rss/configs/apnews.com/hub.yml b/lib/html2rss/configs/apnews.com/hub.yml index 07d3a66..6aef1ab 100644 --- a/lib/html2rss/configs/apnews.com/hub.yml +++ b/lib/html2rss/configs/apnews.com/hub.yml @@ -1,4 +1,9 @@ --- +parameters: + section: + type: string + default: "news" + channel: url: https://apnews.com/%
s language: en diff --git a/lib/html2rss/configs/cnet.com/section_sub.yml b/lib/html2rss/configs/cnet.com/section_sub.yml index 64d17e6..9f68ecf 100644 --- a/lib/html2rss/configs/cnet.com/section_sub.yml +++ b/lib/html2rss/configs/cnet.com/section_sub.yml @@ -1,4 +1,12 @@ --- +parameters: + section: + type: string + default: "news" + sub: + type: string + default: "tech" + channel: url: https://www.cnet.com/%
s/%s/ language: en diff --git a/lib/html2rss/configs/webentwickler-jobs.de/in.yml b/lib/html2rss/configs/webentwickler-jobs.de/in.yml index e37f19b..ca03f84 100644 --- a/lib/html2rss/configs/webentwickler-jobs.de/in.yml +++ b/lib/html2rss/configs/webentwickler-jobs.de/in.yml @@ -1,4 +1,9 @@ --- +parameters: + region: + type: string + default: "berlin" + channel: url: https://www.webentwickler-jobs.de/in/%s language: de