Sha256: 991aaca3b7fcf3332bd38a5cd426a77e048e897c5186062be8bdb1d2eb04cd83

Contents?: true

Size: 729 Bytes

Versions: 1

Compression:

Stored size: 729 Bytes

Contents

shared_examples_for "stroke DSL method" do
  let(:color) { Shoes::COLORS.fetch :tomato }

  it "returns a color" do
    dsl.stroke(color).class.should eq(Shoes::Color)
  end

  # This works differently on a container than on a normal element
  it "sets on receiver" do
    dsl.stroke color
    dsl.style[:stroke].should eq(color)
  end

  it "applies to subsequently created objects" do
    dsl.stroke color
    Shoes::Oval.should_receive(:new).with do |*args|
      style = args.pop
      style[:stroke].should eq(color)
    end
    dsl.oval(10, 10, 100, 100)
  end

  context "with hex string" do
    let(:color) { "#fff" }

    it "sets the color" do
      dsl.stroke(color).should eq(Shoes::COLORS[:white])
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
shoes-4.0.0.pre1 spec/shoes/shared_examples/dsl/stroke.rb