CtrlK
BlogDocsLog inGet started
Tessl Logo

igmarin/rails-agent-skills

Curated library of 39 AI agent skills for Ruby on Rails development. Organized by category: planning, testing, code-quality, ddd, engines, infrastructure, api, patterns, context, orchestration, and workflows. Includes 5 callable workflow skills (rails-tdd-loop, rails-review-flow, rails-setup-flow, rails-quality-flow, rails-engines-flow) for complete development cycles. Covers code review, architecture, security, testing (RSpec), engines, service objects, DDD patterns, and TDD automation.

95

1.20x
Quality

98%

Does it follow best practices?

Impact

95%

1.20x

Average score across 35 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

spec_examples.mdskills/testing/rspec-service-testing/assets/

RSpec Service Testing Examples

Service object testing patterns for rspec-service-testing skill.

  1. Unit test for service object

frozen_string_literal: true

RSpec.describe Users::SyncService, type: :unit do describe '.call' do it 'returns success and creates records' do user = build(:user) result = Users::SyncService.call(user: user) expect(result[:success]).to be true expect(result[:response]).to include(:synced_count) end end end

  1. Error handling spec

RSpec.describe Users::SyncService, type: :unit do it 'returns error shape when external API fails' do allow(ExternalApi).to receive(:push).and_raise(Net::OpenTimeout) result = Users::SyncService.call(user: create(:user)) expect(result[:success]).to be false expect(result[:response][:error]).to match(/timeout/i) end end

  1. Integration-style spec using perform_enqueued_jobs for background jobs

RSpec.describe 'Sync integration', type: :integration do it 'enqueues and performs SyncUserJob' do user = create(:user) expect { SyncUserJob.perform_later(user.id) }.to have_enqueued_job(SyncUserJob) perform_enqueued_jobs # assert side effects end end

skills

README.md

tile.json