From 241093f3ea07255af6d36fa9e07c2a1ecb7c712f Mon Sep 17 00:00:00 2001 From: Tom Black Date: Wed, 12 Dec 2018 00:10:14 -0800 Subject: Make `contains?` inclusive (#137) If point is over the visual area, it's true. Also add default rectangle implementation to `renderable.rb`. --- test/line_spec.rb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'test/line_spec.rb') diff --git a/test/line_spec.rb b/test/line_spec.rb index ac6d005..2129073 100644 --- a/test/line_spec.rb +++ b/test/line_spec.rb @@ -3,15 +3,16 @@ require 'ruby2d' RSpec.describe Ruby2D::Line do describe "#contains?" do + line = Line.new(x1: 0, y1: 0, x2: 100, y2: 100) + it "returns true if point is inside the line" do - line = Line.new(x1: 0, y1: 0, x2: 100, y2: 100) - expect(line.contains?(25, 25)).to be true + expect(line.contains?( 0, 1)).to be true + expect(line.contains?(100, 100)).to be true end it "returns false if point is outside the line" do - line = Line.new(x1: 0, y1: 0, x2: 100, y2: 100) - expect(line.contains?(0, 10)).to be false - expect(line.contains?(10, 0)).to be false + expect(line.contains?( 0, 2)).to be false + expect(line.contains?(101, 0)).to be false end end -- cgit v1.2.3