2011-01-09 19:21:30 +09:00
|
|
|
#!/usr/bin/env ruby
|
2013-03-03 06:08:54 +09:00
|
|
|
# -*- mode: ruby; coding: utf-8 -*-
|
2011-01-09 19:21:30 +09:00
|
|
|
require 'test/unit'
|
|
|
|
require 'opencv'
|
|
|
|
require File.expand_path(File.dirname(__FILE__)) + '/helper'
|
|
|
|
|
|
|
|
include OpenCV
|
|
|
|
|
|
|
|
# Tests for OpenCV::CvSize
|
|
|
|
class TestCvSize < OpenCVTestCase
|
|
|
|
class MySize; end
|
|
|
|
|
|
|
|
def test_width
|
|
|
|
size = CvSize.new
|
|
|
|
size.width = 100
|
|
|
|
assert_equal(100, size.width)
|
|
|
|
size.width = 200
|
|
|
|
assert_equal(200, size.width)
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_height
|
|
|
|
size = CvSize.new
|
|
|
|
size.height = 100
|
|
|
|
assert_equal(100, size.height)
|
|
|
|
size.height = 200
|
|
|
|
assert_equal(200, size.height)
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_compatible
|
|
|
|
assert(!(CvSize.compatible? MySize.new))
|
|
|
|
MySize.class_eval { def width; end }
|
|
|
|
assert(!(CvSize.compatible? MySize.new))
|
|
|
|
MySize.class_eval { def height; end }
|
|
|
|
assert(CvSize.compatible? MySize.new)
|
|
|
|
assert(CvSize.compatible? CvSize.new)
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_initialize
|
|
|
|
size = CvSize.new
|
|
|
|
assert_equal(0, size.width)
|
|
|
|
assert_equal(0, size.height)
|
|
|
|
|
|
|
|
size = CvSize.new(10, 20)
|
|
|
|
assert_equal(10, size.width)
|
|
|
|
assert_equal(20, size.height)
|
|
|
|
|
|
|
|
size = CvSize.new(CvSize.new(10, 20))
|
|
|
|
assert_equal(10, size.width)
|
|
|
|
assert_equal(20, size.height)
|
|
|
|
|
2011-07-23 19:51:58 +09:00
|
|
|
assert_raise(TypeError) {
|
|
|
|
CvSize.new(DUMMY_OBJ)
|
2011-01-09 19:21:30 +09:00
|
|
|
}
|
|
|
|
assert_raise(ArgumentError) {
|
|
|
|
CvSize.new(1, 2, 3)
|
|
|
|
}
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_to_s
|
|
|
|
size = CvSize.new(10, 20)
|
|
|
|
assert_equal('<OpenCV::CvSize:10x20>', size.to_s)
|
|
|
|
end
|
|
|
|
|
|
|
|
def test_to_ary
|
|
|
|
a = CvSize.new(10, 20).to_ary
|
|
|
|
assert_equal(10, a[0])
|
|
|
|
assert_equal(20, a[1])
|
implemented to_a to CvCircle32f, CvPoint, CvPoint2D32f, CvPoint3D32f, CvScalar, CvSize, CvSize2D32f, CvTermCriteria, CvTwoPoints, CvVector, and added tests for them
2011-01-10 01:18:11 +09:00
|
|
|
|
|
|
|
# Alias
|
|
|
|
a = CvSize.new(10, 20).to_a
|
|
|
|
assert_equal(10, a[0])
|
|
|
|
assert_equal(20, a[1])
|
2011-01-09 19:21:30 +09:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|