Add parallelization#31
Conversation
| end | ||
|
|
||
| def run | ||
| def run(parallel = false, opts = []) |
There was a problem hiding this comment.
[reek] reported by reviewdog 🐶
BooleanParameter: Utilities#run has boolean parameter 'parallel' [https://github.com/troessner/reek/blob/v6.1.1/docs/Boolean-Parameter.md]
| end | ||
|
|
||
| def run | ||
| def run(parallel = false, opts = []) |
There was a problem hiding this comment.
[reek] reported by reviewdog 🐶
UnusedParameters: Utilities#run has unused parameter 'opts' [https://github.com/troessner/reek/blob/v6.1.1/docs/Unused-Parameters.md]
| end | ||
|
|
||
| def run | ||
| def run(parallel = false, opts = []) |
There was a problem hiding this comment.
[reek] reported by reviewdog 🐶
UnusedParameters: Utilities#run has unused parameter 'parallel' [https://github.com/troessner/reek/blob/v6.1.1/docs/Unused-Parameters.md]
| end | ||
|
|
||
| def run | ||
| def run(parallel = false, opts = []) |
There was a problem hiding this comment.
[rubocop] <Lint/UnusedMethodArgument> reported by reviewdog 🐶
Unused method argument - parallel. If it's necessary, use _ or _parallel as an argument name to indicate that it won't be used. You can also write as run(*) if you want the method to accept any arguments but don't care about them.
| def run(parallel = false, opts = []) | |
| def run(_parallel = false, opts = []) |
| end | ||
|
|
||
| def run | ||
| def run(parallel = false, opts = []) |
There was a problem hiding this comment.
[rubocop] <Style/OptionalBooleanParameter> reported by reviewdog 🐶
Prefer keyword arguments for arguments with a boolean default value; use parallel: false instead of parallel = false.
| end | ||
|
|
||
| def run | ||
| def run(parallel = false, opts = []) |
There was a problem hiding this comment.
[rubocop] <Lint/UnusedMethodArgument> reported by reviewdog 🐶
Unused method argument - opts. If it's necessary, use _ or _opts as an argument name to indicate that it won't be used. You can also write as run(*) if you want the method to accept any arguments but don't care about them.
| def run(parallel = false, opts = []) | |
| def run(parallel = false, _opts = []) |
| system 'cucumber features' | ||
| end | ||
| def run(opts = nil) | ||
| command = File.directory? 'spec' ? 'rspec spec/' : 'cucumber features' |
There was a problem hiding this comment.
[rubocop] <Lint/LiteralAsCondition> reported by reviewdog 🐶
Literal 'spec' appeared as a condition.
| end | ||
|
|
||
| def parallel_run(opts = nil) | ||
| command = File.directory? 'spec' ? 'parallel_rspec spec/' : 'parallel_cucumber features' |
There was a problem hiding this comment.
[rubocop] <Lint/LiteralAsCondition> reported by reviewdog 🐶
Literal 'spec' appeared as a condition.
| def raid | ||
| Utilities.new.run | ||
| if options[:parallel] | ||
| Utilities.new.run(options[:opts]) |
There was a problem hiding this comment.
[reek] reported by reviewdog 🐶
DuplicateMethodCall: UtilityCommands#raid calls 'options[:opts]' 2 times [https://github.com/troessner/reek/blob/v6.1.1/docs/Duplicate-Method-Call.md]
* Add parallelization * start adding parallelization * Improve parallel running command * correct_rubocop_offenses Co-authored-by: aguspe <agustin.pe94@gmail.com>
* Fix spelling mistake * Add extra tasks * FInish scaffolding * Upgrade version * Update README.md * Expand existing tasks with Url,Path & browser * Fix lack of ruby raider on rspec * Upgrade to 0.2.7 * convert strings to symbols in new browser * Add command to run all the tests in a project * Upgrade version to 0.2.8 * Upgrade version to 0.2.9 * Add ability to pass the path to scaffolding commands * Add ability to delete page objects and aliases to options * Create CONTRIBUTING.md * Create CODE_OF_CONDUCT.md * Create LICENSE * Update issue templates * Add ability to delete pages, features and specs and aliases to options * Bump raider version * Update README.md * Update README.md * Update README.md * Update Readme * Add support for multiple paths on the config file and added tests for it * Update readme template * Correct typo * Remove extra link from readme files * Added support to generate helpers * Adds ReadMe for helpers * Update Readme * Add scaffold command * Run Rubocop autocorrect * Remove rubocop offenses * Add scaffolding support for rspec and cucumber * Upgrade version * Update readme * Update README.md * Update README.md * Update README.md * Make option to pass browser options available * Transforming helpers into normal modules * Add options to create config file * Finish passing browser options * Upgrade version * Hotfix for bug issue * Update version with hotfix * Create rubocop.yml * Update rubocop.yml * Update rubocop.yml * Update rubocop.yml * Update rubocop.yml * Update README.md * Update README.md * Add rspec workflow (#25) * Add rspec workflow * Add rspec workflow * Add rspec workflow * Test with working directory * Test with working directory * Testing * Testing * Testing * Testing * Add checkout Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md (#27) Some small textual corrections/adjustments. * Task/add workflow for rspec (#26) * Add rspec workflow * Add rspec workflow * Add rspec workflow * Test with working directory * Test with working directory * Testing * Testing * Testing * Testing * Add checkout * Add rubocop corrections * Ruby version specified * Fix rubocop issues * Fix allure source issue * Fix rubocop issues * Fix rubocop issues * Fix rubocop issues I still need to fix the inheritance issues * Fix all rspec tests * Get latest ruby version * Update ruby version on reek workflow * Update lib/commands/scaffolding_commands.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/commands/scaffolding_commands.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/commands/scaffolding_commands.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/commands/scaffolding_commands.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: aguspe <agustin.pe94@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * browser options working (#24) * browser options working * Update version and fix minor bugs Co-authored-by: aguspe <agustin.pe94@gmail.com> * Improve menu (#28) * New menu finished * Rebuild menu Co-authored-by: aguspe <agustin.pe94@gmail.com> * Fixed menu bug (#29) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update README.md (#30) * Update README.md Updated README.md with more information on how to use, and added some styling / layout * Update README.md * Update README.md Cleaned up the Markdown and html * Update README.md changed text to ruby for the help command list so highlighting works * Update README.md Changed the order of the readme, for better readability and added clear / more information to commands from the projects homepage * Add parallelization (#31) * Add parallelization * start adding parallelization * Improve parallel running command * correct_rubocop_offenses Co-authored-by: aguspe <agustin.pe94@gmail.com> * update version * change parallelization options and bump version * Add support for android (#33) * Add support for android * Android for both cucumber and rspec working * Refactor iOS to support the new app * Added tests * Bump version Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update README.md * Delete android_test directory * Refactor frameworks and fix smells (#34) * Start refactoring to have green pipelines * FIx most of the rubocop offenses * Added shared examples * Green pipeline, all tests working except scaffolding * Fix scaffolding tests * Fix small details and bump version Co-authored-by: aguspe <agustin.pe94@gmail.com> * Create x platform framework (#35) * Create x platform framework * Fixed configuration issue * Fixed issues with framework generation Co-authored-by: aguspe <agustin.pe94@gmail.com> * Improve formatting (#36) * Improve formatting * Remove extra opts Co-authored-by: aguspe <agustin.pe94@gmail.com> * Visual login (#37) * Visual login * Visual testing finished Co-authored-by: aguspe <agustin.pe94@gmail.com> * Change version command * Upgrade version * Upgrade version * Update README.md * Update README.md * Update README.md * Update README.md * Readme updated * Update README.md * Update README.md * Update README.md * Implementation of watir with visual testing (#39) * Implementation of watir with visual testing * Added tests * Fix small identation issues * Update read me and update version Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add open ai support (#40) * Add support for open ai * Finish adding initial support for open ai --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Simplify open_ai command * FIx order of gems * Add logger for the open ai functionality * Add file optimization (#41) * Add support for optimizing files using open ai * Fix mobile build download issue * Add extra cuke command * Split down command structure --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Correct typo * Up version * Require prompt * Update command name * Fix version print issue * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Create FUNDING.yml * Desktop app (#42) * All tests running green * Fix rubocop and add extra tests * Added the last tab on the runner screen and I'm working to divide it on components * finish runner desktop screen * Delete runner_screen.rb * fix raider open command issue * Fix lack of items * bump version * bump version * Remove the desktop app * Remove all desktop references --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Fix reek and rubocop issues (#45) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add auto assign issues * Fix reek issues for all web and mobile frameworks but not visual (#47) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add runner application (#48) * All tests running green * Fix rubocop and add extra tests * Added the last tab on the runner screen and I'm working to divide it on components * finish runner desktop screen * Add runner screen back * Refactored tests and prepare desktop app * Upgrade version and fix load issues * Fix cucumber bug * Update version * Update Read Me * Fix allure issue * Upgrade version * Fix version issue on the gemfile --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Improve cucumber web frameworks (#49) * Improve cucumber web frameworks * Rollback headless command --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Hotfix push for cucumber issues * Update version * Change visual testing app and add better support for selenium and wat… (#50) * Change visual testing app and add better support for selenium and watir visual testing * Update version * Update version * Update version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add support for cucumber with visual automation (#51) * Add support for cucumber with visual automation * Improve visual automation and tests setup * Improve support for cucumber and visual support, added helpers * Fix Reek issues and having the selenium cucumber implementation working * Update lib/generators/automation/automation_generator.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/generators/automation/automation_generator.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Improve alignment issues * Improve read me and identation * Upgrade version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Fix mobile issues and update version (#52) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove raider file (#56) * Initial removal of the raider file * All tests running green * All tests running green --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove desktop application (#57) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Improve module inclusion on frameworks (#58) * Improve module inclusion on frameworks * Upgrade versions and support visual testing better --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Upgrade mobile versions (#59) Co-authored-by: aguspe <agustin.pe94@gmail.com> * first sparkling upgrade (#60) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update README.md (#61) * Update read_me.tt (#62) * Add-logger (#44) * All tests running green * Fix rubocop and add extra tests * add logger, add logger to scaffolding so it is include in the raider module * expose default log level, remove set log level func - it is possible to use the def delegator level= instead * fix reek smells create by logger implementation * test push * add error * revert changes * Update logger PR * Remove duplicate logger --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> Co-authored-by: Niki Rasmussen <nikirasmussen@DK-43Y0H72.emea.media.global.loc> * Remove unnecesary warnings (#63) * Remove unnecesary warnings * Remove duplicated share example --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Fix appium cucumber (#64) * Add allure require * Update version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove selenium deprecation and webdriver dependency (#65) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add git ignore and web workflows (#66) * Add github actions and gitignore file * Update tests and version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update version and components (#67) * Update version and components * FIx tests --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add support for multiple browser options (#68) * Add support for multiple browser options * Add missing example on config for sparkling watir projects --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Use temporary directory for saving screenshots for allure (#69) * Add support for multiple browser options * Use Tmpdir to store screenshots and pass file object straight to Allure * Fix wrong indentation * Remove screenshot folder * Remove creation of screenshot folder in GH Actions * Use Tmpdir to store screenshots and pass file object straight to Allure --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Upgrade version * Add dynamic support for version and provide a parsed version (#70) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update Faraday Version * Faraday Version Update * Update README.md Update table view * Update mobile_steps.tt (#79) Commit was tested in all framework combinations * Update spec_helper.tt (#81) Initialised and assigned value to the variable screenshot. Tested on all combinations. Co-authored-by: Agustin Pequeno <33221555+aguspe@users.noreply.github.com> * Conditional path to Appium Helper (#80) * Conditional path to appium helper Path is created for cross platforms frameworks. Tested for all combinations. * Update spec.tt * Update README.md (#82) * Update README.md * Utility command for starting Appium server (#83) ReadMe File updated with a new command. * Update read_me.tt (#84) Updated with a missing appium command * Test files folder structure (#86) Aligned folder structure to Ruby on Rails convention. Added Rake task for running integration and system tests. * Integration pipeline (#88) * Update integration.yml * Update README.md * Update README.md * Create system.yml (#90) * Create system.yml * Update ruby_raider_spec.rb * Update ruby_raider_spec.rb * Update ruby_raider_spec.rb * Update ruby_raider_spec.rb * Update ruby_raider_spec.rb Indentations * Pipeline environment * Update ruby_raider_spec.rb Meet rubocop requirements * Update ruby_raider_spec.rb * Update system.yml Pipeline triggered on a push to master * Readme update (#91) * Update read_me.tt Deleted information about scaffolding commands * Update README.md * Update ruby_raider.gemspec (#92) 0.8.6 version * Rake task showing raider version (#93) * Rake task for generated projects * Added txt file for gem version Fixed raider version command and added rake task for generated projects * Deleted irrelevant rake tasks * Cleaned the syntax * Cleaned syntax to match Rubocop requirements * Fixed variables names and values * Scaffolding commands (#94) * Scaffolding commands refinement Debugged files generated with scaffolding commands, updated integration tests to match the refined files paths, updated Readme. Run integration and system tests locally. * Refined scaffolding commands Updated the generated files, added command for steps, updated readme. Run integration and system tests locally. Tested also web frameworks. * Created two separate methods for scaffolding Run integration and system test * Changes to pass reek review * Disabled reek condition * Update sponsors list (#96) * Axe implementation (#95) * IN PROGRESS: axe implementation I updated generators: menu, gemfile, driver_helper and spec.tt. The condition doesn't work though. * Update menu_generator.rb * Finish the axe framework generation --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> Co-authored-by: Agustin Pequeno <33221555+aguspe@users.noreply.github.com> * Configured trusted publisher (#97) * Add test workflow * Add github workflow * Update Rakefile --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove open ai (#98) * Remove open AI from raider * Update version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove faraday dependency (#99) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Test selenium workflow (#100) * Test selenium workflow * Update flow * Updare ruby raider * Retry flow * Retry flow * Retry flow * Add command to pass parameters * Update flow * Update tests * Update tests * Update tests * Update tests * Update tests * Update tests * Update version * Update lib/ruby_raider.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Correct rubocop and reek issues * Update rubocop * Fix rubocop --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Add watir flow (#101) * Add watir flow * Bug fix --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove dotenv uneeded dependency * Update appium setup capabilities (#103) * Update appium setup capabilities * Update appium setup capabilities --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove sparkling watir (#104) * Remove sparkling watir * Bump version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update menu generator (#105) * Simplify menu and code generation * Add axe cucumber * Fix cucumber appium --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update Readme * Add new flow names (#102) * Add new flow names * Remove system tests and update rspec watir flow * try without headless * remove bundle install * Update selenium tests * Update selenium tests * Try with pure github flows * Use browserstack again * Try only using github actions * Try again * Try again * Update pipelines * Fix and update integration tests * Try a different way * Try a different way * Update tests * Remove rubocop warning * Fix tests * Update README.md * Update README.md * Update README.md * Update README.md (#112) * Update README.md * Update README.md * Update README.md * Start adding dynamic plugin support (#111) * Start adding dynamic plugin support * Correct extra space * Update Gemfile Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Add and remove commands dynamically * Plugin working * Plugin command running * Fix tests * Fix plugins and update read_me * Update version --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update plugins and version * Improve error handling (#113) * Improbe error handling * update version * Improve error handling * Update gemfile version * Update README.md * Update README.md (#126) * Update gems, and remove extra templates (#127) * downgrade allure version (#128) * update version * Add browserstack support * Update README.md (#129) * Fix allure issue and update read me (#130) * Prepare for beta (#131) * Fix before beta (#132) * Prepare for beta * Update browser * Update README.md (#134) * Update README.md * Update README.md (#135) * Update read_me.tt (#136) * Update LICENSE to Apache (#137) * Update README.md (#138) * Fix minor bug on selenium builds (#140) * Update README.md (#141) * Add support in the menu for github (#143) * Add gitlab support (#144) * Update version * Fix integration pipeline (#145) * Update README.md * Update README.md * Update integration.yml * Update reek.yml * Update rubocop.yml * Update selenium.yml * Update watir.yml * Update push_gem.yml * Update README.md * Call template optimization (#146) * Refactor template system with caching, consolidation, and end-to-end testing ## Template System Refactoring ### Phase 1: Template Renderer Infrastructure - Add TemplateRenderer module with clean partial() API - Implement PartialCache with compiled ERB object caching (10x performance) - Add PartialResolver for context-aware path resolution - Create custom error classes with helpful messages - Mix TemplateRenderer into Generator base class ### Phase 2: Template Migration - Migrate 27 ERB.new() calls to partial() helper across 14 templates - Replace verbose File.read(File.expand_path(...)) with partial('name') - Eliminate ~2,430 characters of boilerplate code - Standardize whitespace handling (trim_mode, strip options) ### Phase 3: Template Consolidation - Delete 7 duplicate template files - Consolidate selenium_login/watir_login into unified login.tt - Consolidate selenium_account/watir_account into unified account.tt - Merge ios_caps/android_caps/cross_platform_caps into appium_caps.tt - Extract browserstack_config.tt (shared logic used 2x) - Refactor driver_and_options.tt: 115 lines → 7-line dispatcher - Split into focused partials: axe_driver, selenium_driver, appium_driver ### Phase 4: Testing & Documentation - Add comprehensive unit tests (spec/generators/template_renderer_spec.rb) - Create end-to-end test spec with actual test execution - Add docs/template_rendering.md (500+ lines usage guide) - Add docs/testing_strategy.md (comprehensive testing guide) ## End-to-End Testing Implementation - Add spec/integration/end_to_end_spec.rb - Tests now generate projects, install dependencies, and run tests - Integration tests fail if generated tests fail (full verification) - Cover 5 web frameworks with full execution - Structure validation for mobile/visual frameworks ## Bug Fixes - Fix PartialResolver to search subdirectories (templates/*/partials/) - Add proper timeout handling with Timeout module - Fix binding context resolution for Thor templates ## Metrics - Templates: 61 → 54 files (-11%) - ERB.new() calls: 27 → 0 (-100%) - driver_and_options.tt: 115 lines → 7 lines (-94%) - Template render (cached): 135ms → 13.5ms (10x faster) - Test coverage: 262 examples (unit + integration + e2e) ## Breaking Changes None - 100% backward compatible. All framework combinations tested and passing. * Add CLAUDE.md to .gitignore * Fix CI pipelines and remove docs - Update reek.yml: Change ruby-version from 'head' to '3.3' with bundler-cache - Update rubocop.yml: Change ruby-version from 'head' to '3.3' with bundler-cache - Remove docs/template_rendering.md - Remove docs/testing_strategy.md The 'head' ruby version was causing 404 errors in CI. Using stable 3.3 version instead. * Add fully automated release system - Add .github/workflows/release.yml * Triggers on version tags (v*.*.*) * Runs tests, builds gem, creates release * Automatically publishes to RubyGems * Generates changelog from commits * Creates GitHub Release with notes - Add bin/release script * One-command release: bin/release [major|minor|patch] * Validates tests, linters, and repo state * Updates lib/version automatically * Creates commit and tag * Pushes to GitHub (triggers workflow) - Add RELEASE.md (comprehensive documentation) * Complete release process guide * Semantic versioning guide * Troubleshooting section * Manual release backup method * Configuration details - Add RELEASE_QUICK_GUIDE.md (TL;DR version) * Quick reference for releases * One-command usage * First-time setup steps ## Usage Release a new version with a single command: ```bash bin/release patch # Bug fixes (1.1.4 -> 1.1.5) bin/release minor # New features (1.1.4 -> 1.2.0) bin/release major # Breaking changes (1.1.4 -> 2.0.0) ``` Everything else is automated via GitHub Actions. ## First-Time Setup Add RUBYGEMS_API_KEY secret to GitHub repository settings. * Fix RuboCop and Reek issues - Add RSpec configuration to .rubocop.yml for test-specific patterns - Exclude spec files from Metrics/BlockLength check - All 44 files pass with zero offenses - Reek passes with zero issues * Enhance release workflow with manual trigger and changelog Added manual trigger for release workflow with version input and improved changelog generation. * Change condition to check repository owner for release * Add manual release trigger and remove auto-publish to RubyGems (#147) Removes automatic RubyGems publishing to give maintainers control over when gems are published. Workflow now creates GitHub releases with gem files attached, allowing manual verification before publishing. * Update pipelines * pipeline fixed (#148) * simplify pipelines (#149) * Fix/allure loading error (#150) * simplify pipelines * fixed tests * Fix PR review comments: rubocop and reek warnings - Add RSpec/BeforeAfterAll inline disable comments to system specs - Extract SystemTestHelper module to fix DuplicateMethodCall and TooManyStatements - Add reek suppressions for UtilityFunction and ControlParameter - Fix capybara rack-test error with run_server = false - Add capybara minitest support in test_helper.tt - Add setup job to system_tests.yml to prevent cache conflicts --------- * Bump version to 2.0.0 * Use RELEASE_TOKEN to bypass branch protection in release workflow * Use GitHub App token for release workflow branch protection bypass * Fix infinite recursion in TemplateRenderError#to_s and re-raise TemplateError - Use super() instead of message in to_s to avoid infinite recursion - Re-raise TemplateError subclasses before generic StandardError rescue - Add test fixture templates for partial rendering tests * Add E2E, content validation, command routing, and menu tests (#151) * Ruby Raider v3.0.0 - Add Minitest and Capybara as first-class framework and automation types - Add optional web add-ons: accessibility (axe), visual regression (chunky_png), performance (Lighthouse) - Add LLM integration (OpenAI, Anthropic, Ollama) for AI-assisted scaffolding - Add adopt command for importing existing test projects - Add enhanced scaffolding: CRUD generation, URL analysis, components, from_url - Add video recording support for all framework combinations - Add CLI features: skip flags, reporter selection, retry, tags, destroy, template overrides - Add GitHub Actions and GitLab CI/CD pipeline generation - Add Steep type checking with RBS signatures - Add E2E tests, content validation, command routing, and menu tests - Add terminal logo display on project creation - Refactor Applitools to chunky_png for free local visual regression - Refactor axe from automation type to optional add-on - Update README with full feature documentation and new logo * fix comments * fix comments * fix comments * fixing rake pipeline * raider 3.0.0 * Update lib/generators/menu_generator.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Remove Sponsors section from README Removed the Sponsors section and BrowserStack testing note. * Change release information link in README Updated the link for more information and releases. * Change release information link format in README Updated the link format for the release information in the README. * Update website links in README.md * Update README.md * Correct link syntax for Ruby Raider website Fix link formatting in README for website reference. * Fix link formatting in README.md * fix_utilities (#152) * Bump version to 3.0.1 * Remove LLM, plugins, capybara, minitest, adopt, reporter selection, ruby version selection, gitlab CI, and skip_ci Simplify Ruby Raider by removing low-value features: - LLM integration and plugin system - Capybara and Minitest as framework options - Adopt project import feature - Reporter selection (allure is now always included) - Ruby version selection and .ruby-version generation - GitLab CI/CD option and CI platform selector (GitHub Actions is now default) - --skip_ci flag (CI is always generated) * Remove visual regression and Lighthouse performance addons Simplify addon options — only accessibility (axe) remains as an optional add-on. Removes visual_addon/chunky_png and lighthouse_addon/performance templates, generators, menu steps, CLI flags, and all related tests. * Remove CRUD scaffold, template overrides, selective scaffold, and spec-from-page Simplify scaffolding to basic commands only: page, spec, feature, steps, helper, component, and scaffold (generates page + test). Removes --crud, --with, --from options and interactive scaffold menu. * version bump * Fix broken tests after merge — delete stale files from removed features --------- Co-authored-by: Gert van der Spoel <github@3edge.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Jonas <jonasah97@gmail.com> Co-authored-by: nikipedersen <82040834+nikipedersen@users.noreply.github.com> Co-authored-by: Niki Rasmussen <nikirasmussen@DK-43Y0H72.emea.media.global.loc> Co-authored-by: Kasper Tonsgaard <kaspertonsgaard@gmail.com> Co-authored-by: natalia-ss <155972960+natalia-ss@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* FInish scaffolding * Upgrade version * Update README.md * Expand existing tasks with Url,Path & browser * Fix lack of ruby raider on rspec * Upgrade to 0.2.7 * convert strings to symbols in new browser * Add command to run all the tests in a project * Upgrade version to 0.2.8 * Upgrade version to 0.2.9 * Add ability to pass the path to scaffolding commands * Add ability to delete page objects and aliases to options * Create CONTRIBUTING.md * Create CODE_OF_CONDUCT.md * Create LICENSE * Update issue templates * Add ability to delete pages, features and specs and aliases to options * Bump raider version * Update README.md * Update README.md * Update README.md * Update Readme * Add support for multiple paths on the config file and added tests for it * Update readme template * Correct typo * Remove extra link from readme files * Added support to generate helpers * Adds ReadMe for helpers * Update Readme * Add scaffold command * Run Rubocop autocorrect * Remove rubocop offenses * Add scaffolding support for rspec and cucumber * Upgrade version * Update readme * Update README.md * Update README.md * Update README.md * Make option to pass browser options available * Transforming helpers into normal modules * Add options to create config file * Finish passing browser options * Upgrade version * Hotfix for bug issue * Update version with hotfix * Create rubocop.yml * Update rubocop.yml * Update rubocop.yml * Update rubocop.yml * Update rubocop.yml * Update README.md * Update README.md * Add rspec workflow (#25) * Add rspec workflow * Add rspec workflow * Add rspec workflow * Test with working directory * Test with working directory * Testing * Testing * Testing * Testing * Add checkout Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md (#27) Some small textual corrections/adjustments. * Task/add workflow for rspec (#26) * Add rspec workflow * Add rspec workflow * Add rspec workflow * Test with working directory * Test with working directory * Testing * Testing * Testing * Testing * Add checkout * Add rubocop corrections * Ruby version specified * Fix rubocop issues * Fix allure source issue * Fix rubocop issues * Fix rubocop issues * Fix rubocop issues I still need to fix the inheritance issues * Fix all rspec tests * Get latest ruby version * Update ruby version on reek workflow * Update lib/commands/scaffolding_commands.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/commands/scaffolding_commands.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/commands/scaffolding_commands.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/commands/scaffolding_commands.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: aguspe <agustin.pe94@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * browser options working (#24) * browser options working * Update version and fix minor bugs Co-authored-by: aguspe <agustin.pe94@gmail.com> * Improve menu (#28) * New menu finished * Rebuild menu Co-authored-by: aguspe <agustin.pe94@gmail.com> * Fixed menu bug (#29) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update README.md (#30) * Update README.md Updated README.md with more information on how to use, and added some styling / layout * Update README.md * Update README.md Cleaned up the Markdown and html * Update README.md changed text to ruby for the help command list so highlighting works * Update README.md Changed the order of the readme, for better readability and added clear / more information to commands from the projects homepage * Add parallelization (#31) * Add parallelization * start adding parallelization * Improve parallel running command * correct_rubocop_offenses Co-authored-by: aguspe <agustin.pe94@gmail.com> * update version * change parallelization options and bump version * Add support for android (#33) * Add support for android * Android for both cucumber and rspec working * Refactor iOS to support the new app * Added tests * Bump version Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update README.md * Delete android_test directory * Refactor frameworks and fix smells (#34) * Start refactoring to have green pipelines * FIx most of the rubocop offenses * Added shared examples * Green pipeline, all tests working except scaffolding * Fix scaffolding tests * Fix small details and bump version Co-authored-by: aguspe <agustin.pe94@gmail.com> * Create x platform framework (#35) * Create x platform framework * Fixed configuration issue * Fixed issues with framework generation Co-authored-by: aguspe <agustin.pe94@gmail.com> * Improve formatting (#36) * Improve formatting * Remove extra opts Co-authored-by: aguspe <agustin.pe94@gmail.com> * Visual login (#37) * Visual login * Visual testing finished Co-authored-by: aguspe <agustin.pe94@gmail.com> * Change version command * Upgrade version * Upgrade version * Update README.md * Update README.md * Update README.md * Update README.md * Readme updated * Update README.md * Update README.md * Update README.md * Implementation of watir with visual testing (#39) * Implementation of watir with visual testing * Added tests * Fix small identation issues * Update read me and update version Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add open ai support (#40) * Add support for open ai * Finish adding initial support for open ai --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Simplify open_ai command * FIx order of gems * Add logger for the open ai functionality * Add file optimization (#41) * Add support for optimizing files using open ai * Fix mobile build download issue * Add extra cuke command * Split down command structure --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Correct typo * Up version * Require prompt * Update command name * Fix version print issue * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Update README.md * Create FUNDING.yml * Desktop app (#42) * All tests running green * Fix rubocop and add extra tests * Added the last tab on the runner screen and I'm working to divide it on components * finish runner desktop screen * Delete runner_screen.rb * fix raider open command issue * Fix lack of items * bump version * bump version * Remove the desktop app * Remove all desktop references --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Fix reek and rubocop issues (#45) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add auto assign issues * Fix reek issues for all web and mobile frameworks but not visual (#47) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add runner application (#48) * All tests running green * Fix rubocop and add extra tests * Added the last tab on the runner screen and I'm working to divide it on components * finish runner desktop screen * Add runner screen back * Refactored tests and prepare desktop app * Upgrade version and fix load issues * Fix cucumber bug * Update version * Update Read Me * Fix allure issue * Upgrade version * Fix version issue on the gemfile --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Improve cucumber web frameworks (#49) * Improve cucumber web frameworks * Rollback headless command --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Hotfix push for cucumber issues * Update version * Change visual testing app and add better support for selenium and wat… (#50) * Change visual testing app and add better support for selenium and watir visual testing * Update version * Update version * Update version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add support for cucumber with visual automation (#51) * Add support for cucumber with visual automation * Improve visual automation and tests setup * Improve support for cucumber and visual support, added helpers * Fix Reek issues and having the selenium cucumber implementation working * Update lib/generators/automation/automation_generator.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update lib/generators/automation/automation_generator.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Improve alignment issues * Improve read me and identation * Upgrade version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Fix mobile issues and update version (#52) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove raider file (#56) * Initial removal of the raider file * All tests running green * All tests running green --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove desktop application (#57) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Improve module inclusion on frameworks (#58) * Improve module inclusion on frameworks * Upgrade versions and support visual testing better --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Upgrade mobile versions (#59) Co-authored-by: aguspe <agustin.pe94@gmail.com> * first sparkling upgrade (#60) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update README.md (#61) * Update read_me.tt (#62) * Add-logger (#44) * All tests running green * Fix rubocop and add extra tests * add logger, add logger to scaffolding so it is include in the raider module * expose default log level, remove set log level func - it is possible to use the def delegator level= instead * fix reek smells create by logger implementation * test push * add error * revert changes * Update logger PR * Remove duplicate logger --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> Co-authored-by: Niki Rasmussen <nikirasmussen@DK-43Y0H72.emea.media.global.loc> * Remove unnecesary warnings (#63) * Remove unnecesary warnings * Remove duplicated share example --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Fix appium cucumber (#64) * Add allure require * Update version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove selenium deprecation and webdriver dependency (#65) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add git ignore and web workflows (#66) * Add github actions and gitignore file * Update tests and version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update version and components (#67) * Update version and components * FIx tests --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Add support for multiple browser options (#68) * Add support for multiple browser options * Add missing example on config for sparkling watir projects --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Use temporary directory for saving screenshots for allure (#69) * Add support for multiple browser options * Use Tmpdir to store screenshots and pass file object straight to Allure * Fix wrong indentation * Remove screenshot folder * Remove creation of screenshot folder in GH Actions * Use Tmpdir to store screenshots and pass file object straight to Allure --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Upgrade version * Add dynamic support for version and provide a parsed version (#70) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update Faraday Version * Faraday Version Update * Update README.md Update table view * Update mobile_steps.tt (#79) Commit was tested in all framework combinations * Update spec_helper.tt (#81) Initialised and assigned value to the variable screenshot. Tested on all combinations. Co-authored-by: Agustin Pequeno <33221555+aguspe@users.noreply.github.com> * Conditional path to Appium Helper (#80) * Conditional path to appium helper Path is created for cross platforms frameworks. Tested for all combinations. * Update spec.tt * Update README.md (#82) * Update README.md * Utility command for starting Appium server (#83) ReadMe File updated with a new command. * Update read_me.tt (#84) Updated with a missing appium command * Test files folder structure (#86) Aligned folder structure to Ruby on Rails convention. Added Rake task for running integration and system tests. * Integration pipeline (#88) * Update integration.yml * Update README.md * Update README.md * Create system.yml (#90) * Create system.yml * Update ruby_raider_spec.rb * Update ruby_raider_spec.rb * Update ruby_raider_spec.rb * Update ruby_raider_spec.rb * Update ruby_raider_spec.rb Indentations * Pipeline environment * Update ruby_raider_spec.rb Meet rubocop requirements * Update ruby_raider_spec.rb * Update system.yml Pipeline triggered on a push to master * Readme update (#91) * Update read_me.tt Deleted information about scaffolding commands * Update README.md * Update ruby_raider.gemspec (#92) 0.8.6 version * Rake task showing raider version (#93) * Rake task for generated projects * Added txt file for gem version Fixed raider version command and added rake task for generated projects * Deleted irrelevant rake tasks * Cleaned the syntax * Cleaned syntax to match Rubocop requirements * Fixed variables names and values * Scaffolding commands (#94) * Scaffolding commands refinement Debugged files generated with scaffolding commands, updated integration tests to match the refined files paths, updated Readme. Run integration and system tests locally. * Refined scaffolding commands Updated the generated files, added command for steps, updated readme. Run integration and system tests locally. Tested also web frameworks. * Created two separate methods for scaffolding Run integration and system test * Changes to pass reek review * Disabled reek condition * Update sponsors list (#96) * Axe implementation (#95) * IN PROGRESS: axe implementation I updated generators: menu, gemfile, driver_helper and spec.tt. The condition doesn't work though. * Update menu_generator.rb * Finish the axe framework generation --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> Co-authored-by: Agustin Pequeno <33221555+aguspe@users.noreply.github.com> * Configured trusted publisher (#97) * Add test workflow * Add github workflow * Update Rakefile --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove open ai (#98) * Remove open AI from raider * Update version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove faraday dependency (#99) Co-authored-by: aguspe <agustin.pe94@gmail.com> * Test selenium workflow (#100) * Test selenium workflow * Update flow * Updare ruby raider * Retry flow * Retry flow * Retry flow * Add command to pass parameters * Update flow * Update tests * Update tests * Update tests * Update tests * Update tests * Update tests * Update version * Update lib/ruby_raider.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Correct rubocop and reek issues * Update rubocop * Fix rubocop --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Add watir flow (#101) * Add watir flow * Bug fix --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove dotenv uneeded dependency * Update appium setup capabilities (#103) * Update appium setup capabilities * Update appium setup capabilities --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Remove sparkling watir (#104) * Remove sparkling watir * Bump version --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update menu generator (#105) * Simplify menu and code generation * Add axe cucumber * Fix cucumber appium --------- Co-authored-by: aguspe <agustin.pe94@gmail.com> * Update Readme * Add new flow names (#102) * Add new flow names * Remove system tests and update rspec watir flow * try without headless * remove bundle install * Update selenium tests * Update selenium tests * Try with pure github flows * Use browserstack again * Try only using github actions * Try again * Try again * Update pipelines * Fix and update integration tests * Try a different way * Try a different way * Update tests * Remove rubocop warning * Fix tests * Update README.md * Update README.md * Update README.md * Update README.md (#112) * Update README.md * Update README.md * Update README.md * Start adding dynamic plugin support (#111) * Start adding dynamic plugin support * Correct extra space * Update Gemfile Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Add and remove commands dynamically * Plugin working * Plugin command running * Fix tests * Fix plugins and update read_me * Update version --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Update plugins and version * Improve error handling (#113) * Improbe error handling * update version * Improve error handling * Update gemfile version * Update README.md * Update README.md (#126) * Update gems, and remove extra templates (#127) * downgrade allure version (#128) * update version * Add browserstack support * Update README.md (#129) * Fix allure issue and update read me (#130) * Prepare for beta (#131) * Fix before beta (#132) * Prepare for beta * Update browser * Update README.md (#134) * Update README.md * Update README.md (#135) * Update read_me.tt (#136) * Update LICENSE to Apache (#137) * Update README.md (#138) * Fix minor bug on selenium builds (#140) * Update README.md (#141) * Add support in the menu for github (#143) * Add gitlab support (#144) * Update version * Fix integration pipeline (#145) * Update README.md * Update README.md * Update integration.yml * Update reek.yml * Update rubocop.yml * Update selenium.yml * Update watir.yml * Update push_gem.yml * Update README.md * Call template optimization (#146) * Refactor template system with caching, consolidation, and end-to-end testing ## Template System Refactoring ### Phase 1: Template Renderer Infrastructure - Add TemplateRenderer module with clean partial() API - Implement PartialCache with compiled ERB object caching (10x performance) - Add PartialResolver for context-aware path resolution - Create custom error classes with helpful messages - Mix TemplateRenderer into Generator base class ### Phase 2: Template Migration - Migrate 27 ERB.new() calls to partial() helper across 14 templates - Replace verbose File.read(File.expand_path(...)) with partial('name') - Eliminate ~2,430 characters of boilerplate code - Standardize whitespace handling (trim_mode, strip options) ### Phase 3: Template Consolidation - Delete 7 duplicate template files - Consolidate selenium_login/watir_login into unified login.tt - Consolidate selenium_account/watir_account into unified account.tt - Merge ios_caps/android_caps/cross_platform_caps into appium_caps.tt - Extract browserstack_config.tt (shared logic used 2x) - Refactor driver_and_options.tt: 115 lines → 7-line dispatcher - Split into focused partials: axe_driver, selenium_driver, appium_driver ### Phase 4: Testing & Documentation - Add comprehensive unit tests (spec/generators/template_renderer_spec.rb) - Create end-to-end test spec with actual test execution - Add docs/template_rendering.md (500+ lines usage guide) - Add docs/testing_strategy.md (comprehensive testing guide) ## End-to-End Testing Implementation - Add spec/integration/end_to_end_spec.rb - Tests now generate projects, install dependencies, and run tests - Integration tests fail if generated tests fail (full verification) - Cover 5 web frameworks with full execution - Structure validation for mobile/visual frameworks ## Bug Fixes - Fix PartialResolver to search subdirectories (templates/*/partials/) - Add proper timeout handling with Timeout module - Fix binding context resolution for Thor templates ## Metrics - Templates: 61 → 54 files (-11%) - ERB.new() calls: 27 → 0 (-100%) - driver_and_options.tt: 115 lines → 7 lines (-94%) - Template render (cached): 135ms → 13.5ms (10x faster) - Test coverage: 262 examples (unit + integration + e2e) ## Breaking Changes None - 100% backward compatible. All framework combinations tested and passing. * Add CLAUDE.md to .gitignore * Fix CI pipelines and remove docs - Update reek.yml: Change ruby-version from 'head' to '3.3' with bundler-cache - Update rubocop.yml: Change ruby-version from 'head' to '3.3' with bundler-cache - Remove docs/template_rendering.md - Remove docs/testing_strategy.md The 'head' ruby version was causing 404 errors in CI. Using stable 3.3 version instead. * Add fully automated release system - Add .github/workflows/release.yml * Triggers on version tags (v*.*.*) * Runs tests, builds gem, creates release * Automatically publishes to RubyGems * Generates changelog from commits * Creates GitHub Release with notes - Add bin/release script * One-command release: bin/release [major|minor|patch] * Validates tests, linters, and repo state * Updates lib/version automatically * Creates commit and tag * Pushes to GitHub (triggers workflow) - Add RELEASE.md (comprehensive documentation) * Complete release process guide * Semantic versioning guide * Troubleshooting section * Manual release backup method * Configuration details - Add RELEASE_QUICK_GUIDE.md (TL;DR version) * Quick reference for releases * One-command usage * First-time setup steps ## Usage Release a new version with a single command: ```bash bin/release patch # Bug fixes (1.1.4 -> 1.1.5) bin/release minor # New features (1.1.4 -> 1.2.0) bin/release major # Breaking changes (1.1.4 -> 2.0.0) ``` Everything else is automated via GitHub Actions. ## First-Time Setup Add RUBYGEMS_API_KEY secret to GitHub repository settings. * Fix RuboCop and Reek issues - Add RSpec configuration to .rubocop.yml for test-specific patterns - Exclude spec files from Metrics/BlockLength check - All 44 files pass with zero offenses - Reek passes with zero issues * Enhance release workflow with manual trigger and changelog Added manual trigger for release workflow with version input and improved changelog generation. * Change condition to check repository owner for release * Add manual release trigger and remove auto-publish to RubyGems (#147) Removes automatic RubyGems publishing to give maintainers control over when gems are published. Workflow now creates GitHub releases with gem files attached, allowing manual verification before publishing. Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com> * Update pipelines * pipeline fixed (#148) Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> * simplify pipelines (#149) Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> * Fix/allure loading error (#150) * simplify pipelines * fixed tests * Fix PR review comments: rubocop and reek warnings - Add RSpec/BeforeAfterAll inline disable comments to system specs - Extract SystemTestHelper module to fix DuplicateMethodCall and TooManyStatements - Add reek suppressions for UtilityFunction and ControlParameter - Fix capybara rack-test error with run_server = false - Add capybara minitest support in test_helper.tt - Add setup job to system_tests.yml to prevent cache conflicts --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> * Bump version to 2.0.0 * Use RELEASE_TOKEN to bypass branch protection in release workflow * Use GitHub App token for release workflow branch protection bypass * Fix infinite recursion in TemplateRenderError#to_s and re-raise TemplateError - Use super() instead of message in to_s to avoid infinite recursion - Re-raise TemplateError subclasses before generic StandardError rescue - Add test fixture templates for partial rendering tests * Add E2E, content validation, command routing, and menu tests (#151) * Ruby Raider v3.0.0 - Add Minitest and Capybara as first-class framework and automation types - Add optional web add-ons: accessibility (axe), visual regression (chunky_png), performance (Lighthouse) - Add LLM integration (OpenAI, Anthropic, Ollama) for AI-assisted scaffolding - Add adopt command for importing existing test projects - Add enhanced scaffolding: CRUD generation, URL analysis, components, from_url - Add video recording support for all framework combinations - Add CLI features: skip flags, reporter selection, retry, tags, destroy, template overrides - Add GitHub Actions and GitLab CI/CD pipeline generation - Add Steep type checking with RBS signatures - Add E2E tests, content validation, command routing, and menu tests - Add terminal logo display on project creation - Refactor Applitools to chunky_png for free local visual regression - Refactor axe from automation type to optional add-on - Update README with full feature documentation and new logo * fix comments * fix comments * fix comments * fixing rake pipeline * raider 3.0.0 * Update lib/generators/menu_generator.rb Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> * Remove Sponsors section from README Removed the Sponsors section and BrowserStack testing note. * Change release information link in README Updated the link for more information and releases. * Change release information link format in README Updated the link format for the release information in the README. * Update website links in README.md * Update README.md * Correct link syntax for Ruby Raider website Fix link formatting in README for website reference. * Fix link formatting in README.md * fix_utilities (#152) * Bump version to 3.0.1 * Remove LLM, plugins, capybara, minitest, adopt, reporter selection, ruby version selection, gitlab CI, and skip_ci Simplify Ruby Raider by removing low-value features: - LLM integration and plugin system - Capybara and Minitest as framework options - Adopt project import feature - Reporter selection (allure is now always included) - Ruby version selection and .ruby-version generation - GitLab CI/CD option and CI platform selector (GitHub Actions is now default) - --skip_ci flag (CI is always generated) * Remove visual regression and Lighthouse performance addons Simplify addon options — only accessibility (axe) remains as an optional add-on. Removes visual_addon/chunky_png and lighthouse_addon/performance templates, generators, menu steps, CLI flags, and all related tests. * Remove CRUD scaffold, template overrides, selective scaffold, and spec-from-page Simplify scaffolding to basic commands only: page, spec, feature, steps, helper, component, and scaffold (generates page + test). Removes --crud, --with, --from options and interactive scaffold menu. * Remove ruby version requirement * Restore required_ruby_version in gemspec * Remove debug capabilities * version bump --------- Co-authored-by: Gert van der Spoel <github@3edge.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Jonas <jonasah97@gmail.com> Co-authored-by: nikipedersen <82040834+nikipedersen@users.noreply.github.com> Co-authored-by: Niki Rasmussen <nikirasmussen@DK-43Y0H72.emea.media.global.loc> Co-authored-by: Kasper Tonsgaard <kaspertonsgaard@gmail.com> Co-authored-by: natalia-ss <155972960+natalia-ss@users.noreply.github.com> Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
This pr is to add support for https://github.com/grosser/parallel_tests to all the rspecs and cucumber solutions