shoes-core 4.0.0.pre7 → 4.0.0.pre8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/shoes/arc.rb +10 -13
- data/lib/shoes/arrow.rb +1 -11
- data/lib/shoes/background.rb +0 -3
- data/lib/shoes/border.rb +0 -3
- data/lib/shoes/button.rb +4 -1
- data/lib/shoes/check_button.rb +0 -1
- data/lib/shoes/common/art_element.rb +21 -0
- data/lib/shoes/common/background_element.rb +10 -0
- data/lib/shoes/common/clickable.rb +2 -0
- data/lib/shoes/common/rotate.rb +1 -2
- data/lib/shoes/common/ui_element.rb +10 -1
- data/lib/shoes/core/version.rb +1 -1
- data/lib/shoes/download.rb +47 -29
- data/lib/shoes/dsl.rb +99 -40
- data/lib/shoes/font.rb +0 -4
- data/lib/shoes/http_request.rb +91 -0
- data/lib/shoes/image.rb +0 -1
- data/lib/shoes/input_box.rb +0 -1
- data/lib/shoes/internal_app.rb +1 -1
- data/lib/shoes/line.rb +25 -11
- data/lib/shoes/link.rb +10 -4
- data/lib/shoes/list_box.rb +0 -1
- data/lib/shoes/mock/app.rb +6 -0
- data/lib/shoes/mock/clickable.rb +3 -0
- data/lib/shoes/mock/font.rb +0 -4
- data/lib/shoes/oval.rb +3 -13
- data/lib/shoes/progress.rb +0 -1
- data/lib/shoes/rect.rb +1 -11
- data/lib/shoes/shape.rb +16 -8
- data/lib/shoes/slot.rb +2 -1
- data/lib/shoes/star.rb +8 -11
- data/lib/shoes/text_block.rb +0 -1
- data/lib/shoes/ui/picker.rb +29 -8
- data/lib/shoes/version.rb +1 -1
- metadata +8 -231
- data/Guardfile +0 -5
- data/Rakefile +0 -1
- data/bin/shoes-stub +0 -62
- data/ext/install/Rakefile +0 -39
- data/ext/install/shoes.bat +0 -17
- data/lib/rubygems_plugin.rb +0 -24
- data/shoes-core.gemspec +0 -22
- data/spec/shoes/animation_spec.rb +0 -71
- data/spec/shoes/app_spec.rb +0 -454
- data/spec/shoes/arc_spec.rb +0 -52
- data/spec/shoes/arrow_spec.rb +0 -28
- data/spec/shoes/background_spec.rb +0 -47
- data/spec/shoes/border_spec.rb +0 -46
- data/spec/shoes/builtin_methods_spec.rb +0 -122
- data/spec/shoes/button_spec.rb +0 -55
- data/spec/shoes/check_spec.rb +0 -36
- data/spec/shoes/color_spec.rb +0 -429
- data/spec/shoes/common/attachable_spec.rb +0 -32
- data/spec/shoes/common/inspect_spec.rb +0 -26
- data/spec/shoes/common/remove_spec.rb +0 -37
- data/spec/shoes/common/rotate_spec.rb +0 -13
- data/spec/shoes/common/style_normalizer_spec.rb +0 -28
- data/spec/shoes/common/style_spec.rb +0 -197
- data/spec/shoes/common/translate_spec.rb +0 -27
- data/spec/shoes/configuration_spec.rb +0 -51
- data/spec/shoes/constants_spec.rb +0 -39
- data/spec/shoes/dialog_spec.rb +0 -169
- data/spec/shoes/dimension_spec.rb +0 -451
- data/spec/shoes/dimensions_spec.rb +0 -868
- data/spec/shoes/download_spec.rb +0 -198
- data/spec/shoes/flow_spec.rb +0 -132
- data/spec/shoes/font_spec.rb +0 -36
- data/spec/shoes/framework_learning_spec.rb +0 -31
- data/spec/shoes/gradient_spec.rb +0 -31
- data/spec/shoes/helpers/fake_absolute_element.rb +0 -31
- data/spec/shoes/helpers/fake_element.rb +0 -25
- data/spec/shoes/helpers/inspect_helpers.rb +0 -5
- data/spec/shoes/helpers/sample17_helper.rb +0 -65
- data/spec/shoes/image_spec.rb +0 -69
- data/spec/shoes/images/shoe.jpg +0 -0
- data/spec/shoes/input_box_spec.rb +0 -80
- data/spec/shoes/integration_spec.rb +0 -19
- data/spec/shoes/internal_app_spec.rb +0 -148
- data/spec/shoes/keypress_spec.rb +0 -11
- data/spec/shoes/keyrelease_spec.rb +0 -11
- data/spec/shoes/line_spec.rb +0 -120
- data/spec/shoes/link_spec.rb +0 -149
- data/spec/shoes/list_box_spec.rb +0 -87
- data/spec/shoes/logger/ruby_spec.rb +0 -8
- data/spec/shoes/logger_spec.rb +0 -45
- data/spec/shoes/oval_spec.rb +0 -25
- data/spec/shoes/packager_spec.rb +0 -25
- data/spec/shoes/point_spec.rb +0 -99
- data/spec/shoes/progress_spec.rb +0 -54
- data/spec/shoes/radio_spec.rb +0 -32
- data/spec/shoes/rect_spec.rb +0 -40
- data/spec/shoes/renamed_delegate_spec.rb +0 -69
- data/spec/shoes/shape_spec.rb +0 -119
- data/spec/shoes/shared_examples/button.rb +0 -6
- data/spec/shoes/shared_examples/changeable.rb +0 -26
- data/spec/shoes/shared_examples/clickable.rb +0 -5
- data/spec/shoes/shared_examples/common_methods.rb +0 -35
- data/spec/shoes/shared_examples/dimensions.rb +0 -32
- data/spec/shoes/shared_examples/dsl.rb +0 -44
- data/spec/shoes/shared_examples/dsl/animate.rb +0 -29
- data/spec/shoes/shared_examples/dsl/arc.rb +0 -45
- data/spec/shoes/shared_examples/dsl/background.rb +0 -26
- data/spec/shoes/shared_examples/dsl/border.rb +0 -10
- data/spec/shoes/shared_examples/dsl/button.rb +0 -5
- data/spec/shoes/shared_examples/dsl/cap.rb +0 -6
- data/spec/shoes/shared_examples/dsl/check.rb +0 -11
- data/spec/shoes/shared_examples/dsl/edit_box.rb +0 -8
- data/spec/shoes/shared_examples/dsl/edit_line.rb +0 -8
- data/spec/shoes/shared_examples/dsl/editable_element.rb +0 -29
- data/spec/shoes/shared_examples/dsl/fill.rb +0 -27
- data/spec/shoes/shared_examples/dsl/flow.rb +0 -15
- data/spec/shoes/shared_examples/dsl/gradient.rb +0 -62
- data/spec/shoes/shared_examples/dsl/image.rb +0 -21
- data/spec/shoes/shared_examples/dsl/line.rb +0 -9
- data/spec/shoes/shared_examples/dsl/nofill.rb +0 -6
- data/spec/shoes/shared_examples/dsl/nostroke.rb +0 -6
- data/spec/shoes/shared_examples/dsl/oval.rb +0 -88
- data/spec/shoes/shared_examples/dsl/pattern.rb +0 -34
- data/spec/shoes/shared_examples/dsl/progress.rb +0 -7
- data/spec/shoes/shared_examples/dsl/rect.rb +0 -92
- data/spec/shoes/shared_examples/dsl/rgb.rb +0 -28
- data/spec/shoes/shared_examples/dsl/shape.rb +0 -61
- data/spec/shoes/shared_examples/dsl/star.rb +0 -110
- data/spec/shoes/shared_examples/dsl/stroke.rb +0 -30
- data/spec/shoes/shared_examples/dsl/strokewidth.rb +0 -19
- data/spec/shoes/shared_examples/dsl/style.rb +0 -32
- data/spec/shoes/shared_examples/dsl/text_elements.rb +0 -84
- data/spec/shoes/shared_examples/dsl/video.rb +0 -5
- data/spec/shoes/shared_examples/dsl_app_context.rb +0 -11
- data/spec/shoes/shared_examples/hover.rb +0 -78
- data/spec/shoes/shared_examples/parent.rb +0 -6
- data/spec/shoes/shared_examples/scroll.rb +0 -41
- data/spec/shoes/shared_examples/shared_element_method.rb +0 -60
- data/spec/shoes/shared_examples/slot.rb +0 -441
- data/spec/shoes/shared_examples/state.rb +0 -26
- data/spec/shoes/shared_examples/style.rb +0 -77
- data/spec/shoes/slot_spec.rb +0 -176
- data/spec/shoes/sound_spec.rb +0 -16
- data/spec/shoes/span_spec.rb +0 -112
- data/spec/shoes/spec_helper.rb +0 -24
- data/spec/shoes/stack_spec.rb +0 -79
- data/spec/shoes/star_spec.rb +0 -49
- data/spec/shoes/text_block_dimensions_spec.rb +0 -77
- data/spec/shoes/text_block_spec.rb +0 -314
- data/spec/shoes/text_spec.rb +0 -22
- data/spec/shoes/ui/picker_spec.rb +0 -69
- data/spec/shoes/url_spec.rb +0 -67
- data/spec/shoes/widget_spec.rb +0 -78
- data/spec/shoes_spec.rb +0 -41
- data/spec/spec_helper.rb +0 -27
@@ -1,88 +0,0 @@
|
|
1
|
-
shared_examples_for "an oval/circle element" do
|
2
|
-
it "makes a Shoes::Oval" do
|
3
|
-
expect(oval).to be_instance_of(Shoes::Oval)
|
4
|
-
end
|
5
|
-
|
6
|
-
it "sets the proper dimensions" do
|
7
|
-
expect(oval.top).to eq(top)
|
8
|
-
expect(oval.left).to eq(left)
|
9
|
-
expect(oval.width).to eq(width)
|
10
|
-
expect(oval.height).to eq(height)
|
11
|
-
end
|
12
|
-
|
13
|
-
it "sets stroke" do
|
14
|
-
expect(oval.style[:stroke]).to eq(stroke)
|
15
|
-
end
|
16
|
-
|
17
|
-
it "sets fill" do
|
18
|
-
expect(oval.style[:fill]).to eq(fill)
|
19
|
-
end
|
20
|
-
end
|
21
|
-
|
22
|
-
shared_examples_for "oval DSL method" do
|
23
|
-
let(:left) { 20 }
|
24
|
-
let(:top) { 30 }
|
25
|
-
let(:width) { 100 }
|
26
|
-
let(:height) { 200 }
|
27
|
-
let(:stroke) { Shoes::COLORS[:black] }
|
28
|
-
let(:fill) { Shoes::COLORS[:black] }
|
29
|
-
|
30
|
-
describe "creating an oval" do
|
31
|
-
describe "with explicit arguments" do
|
32
|
-
let(:oval) { dsl.oval(left, top, width, height) }
|
33
|
-
it_behaves_like "an oval/circle element"
|
34
|
-
end
|
35
|
-
|
36
|
-
describe "with stroke and fill styles" do
|
37
|
-
let(:stroke) { Shoes::COLORS.fetch :orchid }
|
38
|
-
let(:fill) { Shoes::COLORS.fetch :lemonchiffon }
|
39
|
-
|
40
|
-
describe "as colors" do
|
41
|
-
let(:oval) { dsl.oval(left, top, width, height, stroke: stroke, fill: fill) }
|
42
|
-
it_behaves_like "an oval/circle element"
|
43
|
-
end
|
44
|
-
|
45
|
-
describe "as hex strings" do
|
46
|
-
let(:oval) { dsl.oval(left, top, width, height, stroke: stroke.hex, fill: fill.hex) }
|
47
|
-
it_behaves_like "an oval/circle element"
|
48
|
-
end
|
49
|
-
end
|
50
|
-
|
51
|
-
describe "with too few arguments" do
|
52
|
-
it "raises an ArgumentError" do
|
53
|
-
expect { dsl.oval(10) }.to raise_error(ArgumentError)
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
57
|
-
|
58
|
-
describe "creating a circle" do
|
59
|
-
let(:width) { height }
|
60
|
-
|
61
|
-
describe "with explicit arguments" do
|
62
|
-
let(:oval) { dsl.oval(left, top, width, height) }
|
63
|
-
it_behaves_like "an oval/circle element"
|
64
|
-
end
|
65
|
-
|
66
|
-
describe "with top, left, diameter" do
|
67
|
-
let(:oval) { dsl.oval(left, top, width) }
|
68
|
-
it_behaves_like "an oval/circle element"
|
69
|
-
end
|
70
|
-
|
71
|
-
describe "with a style hash" do
|
72
|
-
describe "containing left, top, height, width" do
|
73
|
-
let(:oval) { dsl.oval(left: left, top: top, width: width, height: height) }
|
74
|
-
it_behaves_like "an oval/circle element"
|
75
|
-
end
|
76
|
-
|
77
|
-
describe "containing left, top, height, width, center: false" do
|
78
|
-
let(:oval) { dsl.oval(left: left, top: top, width: width, height: height, center: false) }
|
79
|
-
it_behaves_like "an oval/circle element"
|
80
|
-
end
|
81
|
-
|
82
|
-
describe "containing left, top, diameter" do
|
83
|
-
let(:oval) { dsl.oval(left: left, top: top, diameter: width) }
|
84
|
-
it_behaves_like "an oval/circle element"
|
85
|
-
end
|
86
|
-
end
|
87
|
-
end
|
88
|
-
end
|
@@ -1,34 +0,0 @@
|
|
1
|
-
shared_examples_for "pattern DSL method" do
|
2
|
-
let(:honeydew) { Shoes::COLORS[:honeydew] }
|
3
|
-
let(:salmon) { Shoes::COLORS[:salmon] }
|
4
|
-
|
5
|
-
context "with single color" do
|
6
|
-
let(:pattern) { dsl.pattern honeydew }
|
7
|
-
it "returns the color" do
|
8
|
-
expect(pattern).to eq(honeydew)
|
9
|
-
end
|
10
|
-
end
|
11
|
-
|
12
|
-
context "with color range" do
|
13
|
-
let(:pattern) { dsl.pattern honeydew..salmon }
|
14
|
-
|
15
|
-
it "returns a gradient" do
|
16
|
-
expect(pattern).to eq(dsl.gradient(honeydew..salmon))
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
context "with single string" do
|
21
|
-
let(:pattern) { dsl.pattern honeydew.hex }
|
22
|
-
it "returns the color" do
|
23
|
-
expect(pattern).to eq(honeydew)
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
context "with string range" do
|
28
|
-
let(:pattern) { dsl.pattern honeydew.hex..salmon.hex }
|
29
|
-
|
30
|
-
it "returns a gradient" do
|
31
|
-
expect(pattern).to eq(dsl.gradient(honeydew..salmon))
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
@@ -1,92 +0,0 @@
|
|
1
|
-
shared_examples_for "rectangle dimensions" do
|
2
|
-
it "makes a Shoes::Rect" do
|
3
|
-
expect(rect).to be_an_instance_of(Shoes::Rect)
|
4
|
-
end
|
5
|
-
|
6
|
-
it "sets proper dimensions" do
|
7
|
-
expect(rect.left).to eq(left)
|
8
|
-
expect(rect.top).to eq(top)
|
9
|
-
expect(rect.width).to eq(width)
|
10
|
-
expect(rect.height).to eq(height)
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
shared_examples_for "rect DSL method" do
|
15
|
-
let(:left) { 40 }
|
16
|
-
let(:top) { 30 }
|
17
|
-
let(:curve) { 12 }
|
18
|
-
|
19
|
-
it "raises an ArgumentError" do
|
20
|
-
expect { dsl.rect(30) }.to raise_exception(ArgumentError)
|
21
|
-
end
|
22
|
-
|
23
|
-
context 'unequal sides' do
|
24
|
-
let(:width) { 200 }
|
25
|
-
let(:height) { 100 }
|
26
|
-
|
27
|
-
context "from explicit arguments" do
|
28
|
-
let(:rect) { dsl.rect left, top, width, height }
|
29
|
-
|
30
|
-
include_examples "rectangle dimensions"
|
31
|
-
|
32
|
-
it "defaults to corner radius of 0" do
|
33
|
-
expect(rect.curve).to eq(0)
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
context "round corners, from explicit arguments" do
|
38
|
-
let(:rect) { dsl.rect left, top, width, height, curve }
|
39
|
-
|
40
|
-
include_examples "rectangle dimensions"
|
41
|
-
|
42
|
-
it "sets corner radius" do
|
43
|
-
expect(rect.curve).to eq(curve)
|
44
|
-
end
|
45
|
-
end
|
46
|
-
|
47
|
-
context "from style hash" do
|
48
|
-
let(:rect) { dsl.rect left: left, top: top, width: width, height: height }
|
49
|
-
|
50
|
-
include_examples "rectangle dimensions"
|
51
|
-
|
52
|
-
it "defaults to corner radius of 0" do
|
53
|
-
expect(rect.curve).to eq(0)
|
54
|
-
end
|
55
|
-
end
|
56
|
-
|
57
|
-
context "rounded corners, from style hash" do
|
58
|
-
let(:rect) { dsl.rect left: left, top: top, width: width, height: height, curve: curve }
|
59
|
-
|
60
|
-
include_examples "rectangle dimensions"
|
61
|
-
|
62
|
-
it "sets corner radius" do
|
63
|
-
expect(rect.curve).to eq(curve)
|
64
|
-
end
|
65
|
-
end
|
66
|
-
end
|
67
|
-
|
68
|
-
context "square" do
|
69
|
-
let(:width) { 200 }
|
70
|
-
let(:height) { 200 }
|
71
|
-
|
72
|
-
context "from explicit arguments" do
|
73
|
-
let(:rect) { dsl.rect left, top, width }
|
74
|
-
|
75
|
-
include_examples "rectangle dimensions"
|
76
|
-
|
77
|
-
it "defaults to corner radius of 0" do
|
78
|
-
expect(rect.curve).to eq(0)
|
79
|
-
end
|
80
|
-
end
|
81
|
-
|
82
|
-
context "square, from style hash" do
|
83
|
-
let(:rect) { dsl.rect left: left, top: top, width: width }
|
84
|
-
|
85
|
-
include_examples "rectangle dimensions"
|
86
|
-
|
87
|
-
it "defaults to corner radius of 0" do
|
88
|
-
expect(rect.curve).to eq(0)
|
89
|
-
end
|
90
|
-
end
|
91
|
-
end
|
92
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
shared_examples_for "rgb DSL method" do
|
2
|
-
let(:red) { 100 }
|
3
|
-
let(:green) { 149 }
|
4
|
-
let(:blue) { 237 }
|
5
|
-
let(:alpha) { 133 } # cornflowerblue
|
6
|
-
|
7
|
-
it "sends args to Shoes::Color" do
|
8
|
-
allow(Shoes::Color).to receive(:new)
|
9
|
-
dsl.rgb(red, green, blue, alpha)
|
10
|
-
expect(Shoes::Color).to have_received(:new).with(red, green, blue, alpha)
|
11
|
-
end
|
12
|
-
|
13
|
-
it "defaults to opaque" do
|
14
|
-
allow(Shoes::Color).to receive(:new)
|
15
|
-
dsl.rgb(red, green, blue)
|
16
|
-
expect(Shoes::Color).to have_received(:new).with(red, green, blue, Shoes::Color::OPAQUE)
|
17
|
-
end
|
18
|
-
|
19
|
-
describe "named color method" do
|
20
|
-
it "produces correct color" do
|
21
|
-
expect(dsl.cornflowerblue).to eq(Shoes::Color.new(red, green, blue))
|
22
|
-
end
|
23
|
-
|
24
|
-
it "accepts alpha arg" do
|
25
|
-
expect(dsl.cornflowerblue(alpha)).to eq(Shoes::Color.new(red, green, blue, alpha))
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
@@ -1,61 +0,0 @@
|
|
1
|
-
shared_examples_for "shape DSL method" do
|
2
|
-
let(:shape) do
|
3
|
-
dsl.shape do
|
4
|
-
move_to 400, 300
|
5
|
-
line_to 400, 200
|
6
|
-
line_to 100, 100
|
7
|
-
line_to 400, 300
|
8
|
-
curve_to 100, 100, 20, 200, 120, 240
|
9
|
-
end
|
10
|
-
end
|
11
|
-
|
12
|
-
it "creates a Shoes::Shape" do
|
13
|
-
expect(shape).to be_an_instance_of(Shoes::Shape)
|
14
|
-
end
|
15
|
-
|
16
|
-
it "receives style from app" do
|
17
|
-
green = Shoes::COLORS.fetch :green
|
18
|
-
dsl.style[:stroke] = green
|
19
|
-
expect(shape.stroke).to eq(green)
|
20
|
-
end
|
21
|
-
|
22
|
-
describe "constructing" do
|
23
|
-
it "doesn't need any arguments" do
|
24
|
-
shape = dsl.shape
|
25
|
-
expect(shape.left).to eq(nil)
|
26
|
-
expect(shape.top).to eq(nil)
|
27
|
-
end
|
28
|
-
|
29
|
-
it "can accept some styles" do
|
30
|
-
white = Shoes::COLORS.fetch :white
|
31
|
-
shape = dsl.shape stroke: white
|
32
|
-
expect(shape.stroke).to eq(white)
|
33
|
-
end
|
34
|
-
|
35
|
-
it "can accept a left and top" do
|
36
|
-
left = 10
|
37
|
-
top = 20
|
38
|
-
shape = dsl.shape left, top
|
39
|
-
expect(shape.left).to eq(left)
|
40
|
-
expect(shape.top).to eq(top)
|
41
|
-
end
|
42
|
-
|
43
|
-
it "accepts left and top in styles" do
|
44
|
-
left = 10
|
45
|
-
top = 20
|
46
|
-
shape = dsl.shape left: left, top: top
|
47
|
-
expect(shape.left).to eq(left)
|
48
|
-
expect(shape.top).to eq(top)
|
49
|
-
end
|
50
|
-
|
51
|
-
it "can accept a left, top, and some styles" do
|
52
|
-
left = 10
|
53
|
-
top = 20
|
54
|
-
white = Shoes::COLORS.fetch(:white)
|
55
|
-
shape = dsl.shape left, top, stroke: white
|
56
|
-
expect(shape.left).to eq(left)
|
57
|
-
expect(shape.top).to eq(top)
|
58
|
-
expect(shape.stroke).to eq(white)
|
59
|
-
end
|
60
|
-
end
|
61
|
-
end
|
@@ -1,110 +0,0 @@
|
|
1
|
-
shared_examples_for "star DSL method" do
|
2
|
-
it "creates a Shoes::Star" do
|
3
|
-
expect(dsl.star(30, 20)).to be_an_instance_of(Shoes::Star)
|
4
|
-
end
|
5
|
-
|
6
|
-
it "raises an ArgumentError with just one argument" do
|
7
|
-
expect { dsl.star(30) }.to raise_error(ArgumentError)
|
8
|
-
end
|
9
|
-
|
10
|
-
describe 'instantiation' do
|
11
|
-
let(:left) { 10 }
|
12
|
-
let(:top) { 20 }
|
13
|
-
let(:points) { 15 }
|
14
|
-
let(:outer) { 27 }
|
15
|
-
let(:inner) { 33 }
|
16
|
-
let(:clickable) { proc {} }
|
17
|
-
|
18
|
-
DEFAULT_POINTS = 10
|
19
|
-
DEFAULT_OUTER = 100.0
|
20
|
-
DEFAULT_INNER = 50.0
|
21
|
-
|
22
|
-
describe '2 arguments' do
|
23
|
-
subject { dsl.star left, top }
|
24
|
-
its(:left) { should eq left }
|
25
|
-
its(:top) { should eq top }
|
26
|
-
its(:points) { should eq DEFAULT_POINTS }
|
27
|
-
its(:outer) { should eq DEFAULT_OUTER }
|
28
|
-
its(:inner) { should eq DEFAULT_INNER }
|
29
|
-
end
|
30
|
-
|
31
|
-
describe '2 arguments with hash' do
|
32
|
-
subject { dsl.star left, top, click: clickable }
|
33
|
-
its(:left) { should eq left }
|
34
|
-
its(:top) { should eq top }
|
35
|
-
its(:points) { should eq DEFAULT_POINTS }
|
36
|
-
its(:outer) { should eq DEFAULT_OUTER }
|
37
|
-
its(:inner) { should eq DEFAULT_INNER }
|
38
|
-
|
39
|
-
it "gets the click" do
|
40
|
-
expect(subject.style[:click]).to eq(clickable)
|
41
|
-
end
|
42
|
-
end
|
43
|
-
|
44
|
-
describe '3 arguments with hash' do
|
45
|
-
subject { dsl.star left, top, points, click: clickable }
|
46
|
-
its(:left) { should eq left }
|
47
|
-
its(:top) { should eq top }
|
48
|
-
its(:points) { should eq points }
|
49
|
-
its(:outer) { should eq DEFAULT_OUTER }
|
50
|
-
its(:inner) { should eq DEFAULT_INNER }
|
51
|
-
|
52
|
-
it "gets the click" do
|
53
|
-
expect(subject.style[:click]).to eq(clickable)
|
54
|
-
end
|
55
|
-
end
|
56
|
-
|
57
|
-
describe '4 arguments' do
|
58
|
-
subject { dsl.star left, top, points, outer }
|
59
|
-
its(:left) { should eq left }
|
60
|
-
its(:top) { should eq top }
|
61
|
-
its(:points) { should eq points }
|
62
|
-
its(:outer) { should eq outer }
|
63
|
-
its(:inner) { should eq DEFAULT_INNER }
|
64
|
-
end
|
65
|
-
|
66
|
-
describe '4 arguments with hash' do
|
67
|
-
subject { dsl.star left, top, points, outer, click: clickable }
|
68
|
-
its(:left) { should eq left }
|
69
|
-
its(:top) { should eq top }
|
70
|
-
its(:points) { should eq points }
|
71
|
-
its(:outer) { should eq outer }
|
72
|
-
its(:inner) { should eq DEFAULT_INNER }
|
73
|
-
|
74
|
-
it "gets the click" do
|
75
|
-
expect(subject.style[:click]).to eq(clickable)
|
76
|
-
end
|
77
|
-
end
|
78
|
-
|
79
|
-
describe '5 arguments' do
|
80
|
-
subject { dsl.star left, top, points, outer, inner }
|
81
|
-
its(:left) { should eq left }
|
82
|
-
its(:top) { should eq top }
|
83
|
-
its(:points) { should eq points }
|
84
|
-
its(:outer) { should eq outer }
|
85
|
-
its(:inner) { should eq inner }
|
86
|
-
end
|
87
|
-
|
88
|
-
describe '5 arguments with hash' do
|
89
|
-
subject { dsl.star left, top, points, outer, inner, click: clickable }
|
90
|
-
its(:left) { should eq left }
|
91
|
-
its(:top) { should eq top }
|
92
|
-
its(:points) { should eq points }
|
93
|
-
its(:outer) { should eq outer }
|
94
|
-
its(:inner) { should eq inner }
|
95
|
-
|
96
|
-
it "gets the click" do
|
97
|
-
expect(subject.style[:click]).to eq(clickable)
|
98
|
-
end
|
99
|
-
end
|
100
|
-
|
101
|
-
describe 'too many arguments' do
|
102
|
-
oops = 1000
|
103
|
-
subject { dsl.star left, top, points, outer, inner, oops }
|
104
|
-
|
105
|
-
it "raises on construction" do
|
106
|
-
expect { subject }.to raise_error(ArgumentError)
|
107
|
-
end
|
108
|
-
end
|
109
|
-
end
|
110
|
-
end
|