@Ghazascanner
_2019runbot
Ghazascanner File Manager
server :Linux phosweb011 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64
Current Path :
/
usr
/
local
/
lib
/
ruby
/
gems
/
2.4.0
/
gems
/
typelib-0.1.0
/
test
/
Path :
Upload File :
New :
File
Dir
//usr/local/lib/ruby/gems/2.4.0/gems/typelib-0.1.0/test/test_01_basic.rb
require 'rubygems' gem 'test-unit' require 'test/unit' $:.unshift 'lib' require 'typelib' class TestBasic < Test::Unit::TestCase def test_01_classes assert(TypeLib) assert(TypeLib::FilterList) assert(TypeLib::Filter) end def test_02_object_properties filters = TypeLib::FilterList.new assert_respond_to(filters, :[]) assert_respond_to(filters, :<<) assert_respond_to(filters, :execute) check = proc { } convert = proc { } filter = TypeLib::Filter.new(check, convert) assert_respond_to(filter, :check_proc) assert_respond_to(filter, :convert_proc) assert_respond_to(filter, :filters) assert_respond_to(filter, :check) assert_respond_to(filter, :convert) assert_kind_of(Proc, filter.check_proc) assert_kind_of(Proc, filter.convert_proc) assert_kind_of(TypeLib::FilterList, filter.filters) end def test_03_basic_conversions filters = TypeLib::FilterList.new check = proc { |obj| obj.kind_of?(Integer) } convert = proc { |obj| obj } check2 = proc { |obj| obj.kind_of?(String) and obj =~ /^\d+$/ } convert2 = proc { |obj| Integer(obj) } filters << TypeLib::Filter.new(check, convert) filters << TypeLib::Filter.new(check2, convert2) assert_equal(2, filters.count) assert_equal(1, filters.execute(1)) assert_equal(1, filters.execute("1")) 10.times do x = rand(250000).to_i assert_equal(x, filters.execute(x)) assert_equal(x, filters.execute(x.to_s)) end assert_equal("1.25", filters.execute("1.25")) filters << TypeLib::Filter.new(proc { true }, proc { |obj| Integer(obj) }) assert_raises(ArgumentError) { filters.execute("1.25") } end def test_05_chains filters = TypeLib::FilterList.new check = proc { |obj| obj.kind_of?(Integer) } convert = proc { |obj| obj.to_s } check2 = proc { |obj| obj.kind_of?(String) and obj =~ /^\d+$/ } convert2 = proc { |obj| obj.to_f } filters << TypeLib::Filter.new(check, convert, TypeLib::FilterList.new([TypeLib::Filter.new(check2, convert2)])) filters << TypeLib::Filter.new(check2, convert2) assert_equal(1.0, filters.execute(1)) assert_kind_of(Float, filters.execute(1)) assert_equal(1.0, filters.execute("1")) end end