From 7a96ea1932a7d9a4dd4392bfad1f60c5beb06c33 Mon Sep 17 00:00:00 2001 From: Tom Black Date: Fri, 13 Nov 2015 00:26:17 -0500 Subject: Adding RSpec and some tests --- spec/color_spec.rb | 38 ++++++++++++++++++++++++++++++++++++++ spec/spec_helper.rb | 9 +++++++++ 2 files changed, 47 insertions(+) create mode 100644 spec/color_spec.rb create mode 100644 spec/spec_helper.rb (limited to 'spec') diff --git a/spec/color_spec.rb b/spec/color_spec.rb new file mode 100644 index 0000000..0b63d8d --- /dev/null +++ b/spec/color_spec.rb @@ -0,0 +1,38 @@ +require 'ruby2d' + + +RSpec.describe Ruby2D::Color do + + describe '#is_valid?' do + + it 'determines if a color string is valid' do + pending 'need hash of valid strings' + expect(Ruby2D::Color.is_valid? 'red').to be true + expect(Ruby2D::Color.is_valid? 'balloons').to be false + end + + it 'determines if an array is a valid color' do + expect(Ruby2D::Color.is_valid? [1.0, 0, 0, 1.0]).to be true + expect(Ruby2D::Color.is_valid? [1.0, 0, 0]).to be false + end + + it 'prevents allow color values out of range' do + expect(Ruby2D::Color.is_valid? [1.0, 0, 0.0, 255]).to be true + expect(Ruby2D::Color.is_valid? [1.2, 0, 0, 0]).to be false + expect(Ruby2D::Color.is_valid? [-0.1, 0, 0, 0]).to be false + expect(Ruby2D::Color.is_valid? [255, 255, 256, 255]).to be false + expect(Ruby2D::Color.is_valid? [-1, 0, 127, 255]).to be false + end + + end + + + describe '#new' do + + it 'raises error on bad color' do + expect { Ruby2D::Color.new 42 }.to raise_error Ruby2D::Error + end + + end + +end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb new file mode 100644 index 0000000..82b6100 --- /dev/null +++ b/spec/spec_helper.rb @@ -0,0 +1,9 @@ +RSpec.configure do |config| + config.expect_with :rspec do |expectations| + expectations.include_chain_clauses_in_custom_matcher_descriptions = true + end + + config.mock_with :rspec do |mocks| + mocks.verify_partial_doubles = true + end +end -- cgit v1.2.3