Sha256: e739e077645dc93abf323738659e361897fffbb81248c6038bd02d8fad36b201
Contents?: true
Size: 1.55 KB
Versions: 3
Compression:
Stored size: 1.55 KB
Contents
require 'spec_helper' describe "Mutations::BooleanFilter" do it "allows booleans" do f = Mutations::BooleanFilter.new filtered, errors = f.filter(true) assert_equal true, filtered assert_equal nil, errors filtered, errors = f.filter(false) assert_equal false, filtered assert_equal nil, errors end it "considers non-booleans to be invalid" do f = Mutations::BooleanFilter.new [[true], {:a => "1"}, Object.new].each do |thing| filtered, errors = f.filter(thing) assert_equal :boolean, errors end end it "considers nil to be invalid" do f = Mutations::BooleanFilter.new(:nils => false) filtered, errors = f.filter(nil) assert_equal nil, filtered assert_equal :nils, errors end it "considers nil to be valid" do f = Mutations::BooleanFilter.new(:nils => true) filtered, errors = f.filter(nil) assert_equal nil, filtered assert_equal nil, errors end it "considers certain strings to be valid booleans" do f = Mutations::BooleanFilter.new [["true", true], ["TRUE", true], ["TrUe", true], ["1", true], ["false", false], ["FALSE", false], ["FalSe", false], ["0", false], [0, false], [1, true]].each do |(str, v)| filtered, errors = f.filter(str) assert_equal v, filtered assert_equal nil, errors end end it "considers other string to be invalid" do f = Mutations::BooleanFilter.new ["", "truely", "2"].each do |str| filtered, errors = f.filter(str) assert_equal str, filtered assert_equal :boolean, errors end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
mutations-0.7.1 | spec/boolean_filter_spec.rb |
mutations-0.7.0 | spec/boolean_filter_spec.rb |
mutations-0.6.0 | spec/boolean_filter_spec.rb |