agentsclimarketplace

Rspec

Skill G1Joshi/Agent-Skills/skills/testing/rspec

RSpec Ruby testing framework. Use for Ruby testing.From its SKILL.md

Install
npx -y skills add G1Joshi/Agent-Skills --skill rspec

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 12 stars12 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

1.5 KB, 380 tokens by cl100k_base, as published. Nobody here has run it

RSpec

RSpec is the primary testing tool for Ruby (especially Rails). It focuses on "Behavior Driven Development" (BDD), making tests read like documentation specifications.

When to Use

  • Ruby/Rails Projects: The community standard (over Minitest) for complex apps.
  • Documentation: You want tests that generate readable specs.

Quick Start

# user_spec.rb
RSpec.describe User, type: :model do
  context "when newly created" do
    it "has no name" do
      user = User.new
      expect(user.name).to be_nil
    end
  end
end

Core Concepts

describe vs context

  • describe: Describes the thing being tested (Class, Method).
  • context: Describes the condition ("when user is logged in").

Let and Let!

Lazy-loaded variables.

  • let(:user) { User.create }: Created only when referenced.
  • let!(:user) { User.create }: Created before each test (eager).

Matchers

expect(x).to eq(y), be_valid, change { User.count }.by(1).

Best Practices (2025)

Do:

  • Use subject: Define the subject of the test explicitly.
  • Keep it blocks short: One expectation per block ideally.
  • Use FactoryBot: Don't use Fixtures (YAML). Use Factories to build test data.

Don't:

  • Don't overuse before(:all): It introduces shared state between examples. Use before(:each) (default).
  • Don't put logic in specs: Specs should verify behavior, not calculate it.

References

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.