From a7a4ff0cf2e9462fdf305bb5ec5c009754f6b13f Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Wed, 25 Dec 2024 23:54:58 +0100 Subject: [PATCH] Fixing RBA dbInstances tests --- testdata/ruby/dbInstanceTest.rb | 240 +++++++++++++++++--------------- 1 file changed, 128 insertions(+), 112 deletions(-) diff --git a/testdata/ruby/dbInstanceTest.rb b/testdata/ruby/dbInstanceTest.rb index 9e2cf3e45..7c195c5e9 100644 --- a/testdata/ruby/dbInstanceTest.rb +++ b/testdata/ruby/dbInstanceTest.rb @@ -31,6 +31,12 @@ class DBInstance_TestClass < TestBase # this only works in editable mode ly = RBA::Layout::new(true) + pid4 = ly.properties_id( { "id" => 4 } ) + pid5 = ly.properties_id( { "id" => 5 } ) + pid7 = ly.properties_id( { "id" => 7 } ) + pid14 = ly.properties_id( { "id" => 14 } ) + pid15 = ly.properties_id( { "id" => 15 } ) + ci1 = ly.add_cell( "c1" ) ci2 = ly.add_cell( "c2" ) ci3 = ly.add_cell( "c3" ) @@ -76,35 +82,35 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) - inst_ref = c2.replace_prop_id( inst_ref, 5 ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=5" ) + inst_ref = c2.replace_prop_id( inst_ref, pid5 ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>5}" ) inst_ref = c2.replace( inst_ref, RBA::CellInstArray::new( c3.cell_index, tr ) ) - assert_equal( inst_ref.to_s, "cell_index=2 r90 100,-50 prop_id=5" ) + assert_equal( inst_ref.to_s, "cell_index=2 r90 100,-50 props={id=>5}" ) - inst_ref = c2.replace( inst_ref, RBA::CellInstArray::new( c1.cell_index, tr ), 7 ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=7" ) + inst_ref = c2.replace( inst_ref, RBA::CellInstArray::new( c1.cell_index, tr ), pid7 ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>7}" ) inst_ref = c2.transform( inst_ref, RBA::Trans::new( 3, false, 100, 200 ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r0 50,100 prop_id=7" ) + assert_equal( inst_ref.to_s, "cell_index=0 r0 50,100 props={id=>7}" ) inst_ref = c2.transform( inst_ref, RBA::ICplxTrans::new( 0.5, 45.0, false, RBA::Point::new ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r45 *0.5 -18,53 prop_id=7" ) + assert_equal( inst_ref.to_s, "cell_index=0 r45 *0.5 -18,53 props={id=>7}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 prop_id=7" ] ) + assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 props={id=>7}" ] ) arr = [] c2.each_touching_inst(RBA::Box::new(-30, 50, -28, 80)) { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 prop_id=7" ] ) + assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 props={id=>7}" ] ) arr = [] c2.each_touching_inst(RBA::Box::new(-30, 50, -29, 80)) { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 prop_id=7" ] ) + assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 props={id=>7}" ] ) arr = [] c2.each_touching_inst(RBA::Box::new(-31, 50, -30, 80)) { |i| arr.push( i.to_s ) } @@ -112,7 +118,7 @@ class DBInstance_TestClass < TestBase arr = [] c2.each_overlapping_inst(RBA::Box::new(-30, 50, -28, 80)) { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 prop_id=7" ] ) + assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 props={id=>7}" ] ) arr = [] c2.each_overlapping_inst(RBA::Box::new(-30, 50, -29, 80)) { |i| arr.push( i.to_s ) } @@ -122,12 +128,12 @@ class DBInstance_TestClass < TestBase c2.each_overlapping_inst(RBA::Box::new(-31, 50, -30, 80)) { |i| arr.push( i.to_s ) } assert_equal( arr, [ ] ) - inst_ref2 = c2.insert( RBA::CellInstArray::new( c3.cell_index, tr ), 14 ) + inst_ref2 = c2.insert( RBA::CellInstArray::new( c3.cell_index, tr ), pid14 ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 prop_id=7", - "cell_index=2 r90 100,-50 prop_id=14" ] ) + assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 props={id=>7}", + "cell_index=2 r90 100,-50 props={id=>14}" ] ) assert_equal( inst_ref.is_valid?, true ) assert_equal( c2.is_valid?(inst_ref), true ) @@ -139,7 +145,7 @@ class DBInstance_TestClass < TestBase arr = [] c2.each_inst { |i| arr.push( i.to_s ) } assert_equal( arr, [ "cell_index=2 r90 100,-50", - "cell_index=2 r90 100,-50 prop_id=14" ] ) + "cell_index=2 r90 100,-50 props={id=>14}" ] ) c2.erase( inst_ref2 ) c2.erase( inst_ref3 ) @@ -148,20 +154,20 @@ class DBInstance_TestClass < TestBase c2.each_inst { |i| arr.push( i.to_s ) } assert_equal( arr, [ ] ) - inst_ref2 = c2.insert( RBA::CellInstArray::new( c3.cell_index, tr ), 14 ) - inst_ref = c2.insert( RBA::CellInstArray::new( c3.cell_index, tr ), 15 ) + inst_ref2 = c2.insert( RBA::CellInstArray::new( c3.cell_index, tr ), pid14 ) + inst_ref = c2.insert( RBA::CellInstArray::new( c3.cell_index, tr ), pid15 ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14", "cell_index=2 r90 100,-50 prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}", "cell_index=2 r90 100,-50 props={id=>15}" ] ) inst_ref.delete arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}" ] ) - inst_ref = c2.insert( RBA::CellInstArray::new( c3.cell_index, tr ), 15 ) + inst_ref = c2.insert( RBA::CellInstArray::new( c3.cell_index, tr ), pid15 ) assert_equal( inst_ref.is_regular_array?, false ) inst_ref.na = 2 assert_equal( inst_ref.is_regular_array?, true ) @@ -176,19 +182,19 @@ class DBInstance_TestClass < TestBase arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14", "cell_index=2 r90 100,-50 array=(1,2,10,20 2x21) prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}", "cell_index=2 r90 100,-50 array=(1,2,10,20 2x21) props={id=>15}" ] ) inst_ref.cplx_trans = RBA::ICplxTrans::new(2.5) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14", "cell_index=2 r0 *2.5 0,0 array=(1,2,10,20 2x21) prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}", "cell_index=2 r0 *2.5 0,0 array=(1,2,10,20 2x21) props={id=>15}" ] ) inst_ref.transform( RBA::ICplxTrans::new(2.0) ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14", "cell_index=2 r0 *5 0,0 array=(2,4,20,40 2x21) prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}", "cell_index=2 r0 *5 0,0 array=(2,4,20,40 2x21) props={id=>15}" ] ) inst_ref.transform( RBA::ICplxTrans::new(0.5) ) assert_equal( inst_ref.cplx_trans.to_s, "r0 *2.5 0,0" ) @@ -197,7 +203,7 @@ class DBInstance_TestClass < TestBase arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14", "cell_index=2 m135 0,0 array=(1,2,10,20 2x21) prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}", "cell_index=2 m135 0,0 array=(1,2,10,20 2x21) props={id=>15}" ] ) inst_ref.transform( RBA::Trans::new(3) ) assert_equal( inst_ref.cplx_trans.to_s, "m90 *1 0,0" ) @@ -207,14 +213,14 @@ class DBInstance_TestClass < TestBase arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 m90 0,0 array=(2,-1,20,-10 2x3) prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 m90 0,0 array=(2,-1,20,-10 2x3) props={id=>15}" ] ) inst_ref.explode - assert_equal( inst_ref.to_s, "cell_index=2 m90 0,0 prop_id=15" ); + assert_equal( inst_ref.to_s, "cell_index=2 m90 0,0 props={id=>15}" ); arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 m90 2,-1 prop_id=15", "cell_index=2 m90 0,0 prop_id=15", "cell_index=2 m90 20,-10 prop_id=15", "cell_index=2 m90 22,-11 prop_id=15", "cell_index=2 m90 40,-20 prop_id=15", "cell_index=2 m90 42,-21 prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 m90 2,-1 props={id=>15}", "cell_index=2 m90 0,0 props={id=>15}", "cell_index=2 m90 20,-10 props={id=>15}", "cell_index=2 m90 22,-11 props={id=>15}", "cell_index=2 m90 40,-20 props={id=>15}", "cell_index=2 m90 42,-21 props={id=>15}" ] ) end @@ -224,6 +230,8 @@ class DBInstance_TestClass < TestBase # this only works in editable mode ly = RBA::Layout::new(true) + pid4 = ly.properties_id( { "id" => 4 } ) + ci1 = ly.add_cell( "c1" ) ci2 = ly.add_cell( "c2" ) ci3 = ly.add_cell( "c3" ) @@ -256,21 +264,21 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) inst_ref = c2.transform_into( inst_ref, RBA::Trans::new( 3, false, 100, 200 ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 props={id=>4}" ) inst_ref = c2.transform_into( inst_ref, RBA::ICplxTrans::new( 0.5, 45.0, false, RBA::Point::new ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 props={id=>4}" ) inst_ref = c2.transform_into( inst_ref, RBA::ICplxTrans::new( 0.5, 45.0, false, RBA::Point::new ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 0,62 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 0,62 props={id=>4}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r90 0,62 prop_id=4" ] ) + assert_equal( arr, [ "cell_index=0 r90 0,62 props={id=>4}" ] ) c2.clear tr = RBA::Trans::new( RBA::Trans::R90, RBA::Point::new( 101, -51 ) ) @@ -284,21 +292,21 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) inst_ref.transform_into( RBA::Trans::new( 3, false, 100, 200 ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 props={id=>4}" ) inst_ref.transform_into( RBA::ICplxTrans::new( 0.5, 45.0, false, RBA::Point::new ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 props={id=>4}" ) inst_ref.transform_into( RBA::ICplxTrans::new( 0.5, 45.0, false, RBA::Point::new ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 0,62 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 0,62 props={id=>4}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r90 0,62 prop_id=4" ] ) + assert_equal( arr, [ "cell_index=0 r90 0,62 props={id=>4}" ] ) c2.clear tr = RBA::Trans::new( RBA::Trans::R90, RBA::Point::new( 101, -51 ) ) @@ -312,22 +320,22 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) c2.transform_into( RBA::Trans::new( 3, false, 100, 200 ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 props={id=>4}" ) c2.transform_into( RBA::ICplxTrans::new( 0.5, 45.0, false, RBA::Point::new ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 props={id=>4}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r90 88,88 prop_id=4" ] ) + assert_equal( arr, [ "cell_index=0 r90 88,88 props={id=>4}" ] ) c2.clear tr = RBA::Trans::new( RBA::Trans::R90, RBA::Point::new( 101, -51 ) ) @@ -341,22 +349,22 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) c2.transform_into( RBA::Trans::new( 3, false, 100, 200 ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 props={id=>4}" ) c2.transform_into( RBA::ICplxTrans::new( 0.5, 45.0, false, RBA::Point::new ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 props={id=>4}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r90 88,88 prop_id=4" ] ) + assert_equal( arr, [ "cell_index=0 r90 88,88 props={id=>4}" ] ) c2.clear tr = RBA::Trans::new( RBA::Trans::R90, RBA::Point::new( 101, -51 ) ) @@ -370,22 +378,22 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) c2.layout.transform( RBA::Trans::new( 3, false, 100, 200 ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 props={id=>4}" ) c2.layout.transform( RBA::ICplxTrans::new( 0.5, 45.0, false, RBA::Point::new ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 props={id=>4}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r90 88,88 prop_id=4" ] ) + assert_equal( arr, [ "cell_index=0 r90 88,88 props={id=>4}" ] ) end @@ -494,6 +502,12 @@ class DBInstance_TestClass < TestBase # this only works in editable mode ly = RBA::Layout::new(true) + pid4 = ly.properties_id( { "id" => 4 } ) + pid5 = ly.properties_id( { "id" => 5 } ) + pid7 = ly.properties_id( { "id" => 7 } ) + pid14 = ly.properties_id( { "id" => 14 } ) + pid15 = ly.properties_id( { "id" => 15 } ) + ci1 = ly.add_cell( "c1" ) ci2 = ly.add_cell( "c2" ) ci3 = ly.add_cell( "c3" ) @@ -539,35 +553,35 @@ class DBInstance_TestClass < TestBase inst_ref.dcell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) - inst_ref = c2.replace_prop_id( inst_ref, 5 ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=5" ) + inst_ref = c2.replace_prop_id( inst_ref, pid5 ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>5}" ) inst_ref = c2.replace( inst_ref, RBA::DCellInstArray::new( c3.cell_index, tr ) ) - assert_equal( inst_ref.to_s, "cell_index=2 r90 100,-50 prop_id=5" ) + assert_equal( inst_ref.to_s, "cell_index=2 r90 100,-50 props={id=>5}" ) - inst_ref = c2.replace( inst_ref, RBA::DCellInstArray::new( c1.cell_index, tr ), 7 ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=7" ) + inst_ref = c2.replace( inst_ref, RBA::DCellInstArray::new( c1.cell_index, tr ), pid7 ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>7}" ) inst_ref = c2.transform( inst_ref, RBA::DTrans::new( 3, false, 0.1, 0.2 ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r0 50,100 prop_id=7" ) + assert_equal( inst_ref.to_s, "cell_index=0 r0 50,100 props={id=>7}" ) inst_ref = c2.transform( inst_ref, RBA::DCplxTrans::new( 0.5, 45.0, false, RBA::DPoint::new ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r45 *0.5 -18,53 prop_id=7" ) + assert_equal( inst_ref.to_s, "cell_index=0 r45 *0.5 -18,53 props={id=>7}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 prop_id=7" ] ) + assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 props={id=>7}" ] ) arr = [] c2.each_touching_inst(RBA::DBox::new(-0.030, 0.050, -0.028, 0.080)) { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 prop_id=7" ] ) + assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 props={id=>7}" ] ) arr = [] c2.each_touching_inst(RBA::DBox::new(-0.030, 0.050, -0.029, 0.080)) { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 prop_id=7" ] ) + assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 props={id=>7}" ] ) arr = [] c2.each_touching_inst(RBA::DBox::new(-0.031, 0.050, -0.030, 0.080)) { |i| arr.push( i.to_s ) } @@ -575,7 +589,7 @@ class DBInstance_TestClass < TestBase arr = [] c2.each_overlapping_inst(RBA::DBox::new(-0.030, 0.050, -0.028, 0.080)) { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 prop_id=7" ] ) + assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 props={id=>7}" ] ) arr = [] c2.each_overlapping_inst(RBA::DBox::new(-0.030, 0.050, -0.029, 0.080)) { |i| arr.push( i.to_s ) } @@ -585,12 +599,12 @@ class DBInstance_TestClass < TestBase c2.each_overlapping_inst(RBA::DBox::new(-0.031, 0.050, -0.030, 0.080)) { |i| arr.push( i.to_s ) } assert_equal( arr, [ ] ) - inst_ref2 = c2.insert( RBA::DCellInstArray::new( c3.cell_index, tr ), 14 ) + inst_ref2 = c2.insert( RBA::DCellInstArray::new( c3.cell_index, tr ), pid14 ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 prop_id=7", - "cell_index=2 r90 100,-50 prop_id=14" ] ) + assert_equal( arr, [ "cell_index=0 r45 *0.5 -18,53 props={id=>7}", + "cell_index=2 r90 100,-50 props={id=>14}" ] ) assert_equal( inst_ref.is_valid?, true ) assert_equal( c2.is_valid?(inst_ref), true ) @@ -602,7 +616,7 @@ class DBInstance_TestClass < TestBase arr = [] c2.each_inst { |i| arr.push( i.to_s ) } assert_equal( arr, [ "cell_index=2 r90 100,-50", - "cell_index=2 r90 100,-50 prop_id=14" ] ) + "cell_index=2 r90 100,-50 props={id=>14}" ] ) c2.erase( inst_ref2 ) c2.erase( inst_ref3 ) @@ -611,20 +625,20 @@ class DBInstance_TestClass < TestBase c2.each_inst { |i| arr.push( i.to_s ) } assert_equal( arr, [ ] ) - inst_ref2 = c2.insert( RBA::DCellInstArray::new( c3.cell_index, tr ), 14 ) - inst_ref = c2.insert( RBA::DCellInstArray::new( c3.cell_index, tr ), 15 ) + inst_ref2 = c2.insert( RBA::DCellInstArray::new( c3.cell_index, tr ), pid14 ) + inst_ref = c2.insert( RBA::DCellInstArray::new( c3.cell_index, tr ), pid15 ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14", "cell_index=2 r90 100,-50 prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}", "cell_index=2 r90 100,-50 props={id=>15}" ] ) inst_ref.delete arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}" ] ) - inst_ref = c2.insert( RBA::DCellInstArray::new( c3.cell_index, tr ), 15 ) + inst_ref = c2.insert( RBA::DCellInstArray::new( c3.cell_index, tr ), pid15 ) assert_equal( inst_ref.is_regular_array?, false ) inst_ref.na = 2 assert_equal( inst_ref.is_regular_array?, true ) @@ -639,19 +653,19 @@ class DBInstance_TestClass < TestBase arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14", "cell_index=2 r90 100,-50 array=(1,2,10,20 2x21) prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}", "cell_index=2 r90 100,-50 array=(1,2,10,20 2x21) props={id=>15}" ] ) inst_ref.dcplx_trans = RBA::DCplxTrans::new(2.5) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14", "cell_index=2 r0 *2.5 0,0 array=(1,2,10,20 2x21) prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}", "cell_index=2 r0 *2.5 0,0 array=(1,2,10,20 2x21) props={id=>15}" ] ) inst_ref.transform( RBA::DCplxTrans::new(2.0) ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14", "cell_index=2 r0 *5 0,0 array=(2,4,20,40 2x21) prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}", "cell_index=2 r0 *5 0,0 array=(2,4,20,40 2x21) props={id=>15}" ] ) inst_ref.transform( RBA::DCplxTrans::new(0.5) ) assert_equal( inst_ref.cplx_trans.to_s, "r0 *2.5 0,0" ) @@ -660,7 +674,7 @@ class DBInstance_TestClass < TestBase arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 r90 100,-50 prop_id=14", "cell_index=2 m135 0,0 array=(1,2,10,20 2x21) prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 r90 100,-50 props={id=>14}", "cell_index=2 m135 0,0 array=(1,2,10,20 2x21) props={id=>15}" ] ) inst_ref.transform( RBA::DTrans::new(3) ) assert_equal( inst_ref.cplx_trans.to_s, "m90 *1 0,0" ) @@ -670,14 +684,14 @@ class DBInstance_TestClass < TestBase arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 m90 0,0 array=(2,-1,20,-10 2x3) prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 m90 0,0 array=(2,-1,20,-10 2x3) props={id=>15}" ] ) inst_ref.explode - assert_equal( inst_ref.to_s, "cell_index=2 m90 0,0 prop_id=15" ); + assert_equal( inst_ref.to_s, "cell_index=2 m90 0,0 props={id=>15}" ); arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=2 m90 2,-1 prop_id=15", "cell_index=2 m90 0,0 prop_id=15", "cell_index=2 m90 20,-10 prop_id=15", "cell_index=2 m90 22,-11 prop_id=15", "cell_index=2 m90 40,-20 prop_id=15", "cell_index=2 m90 42,-21 prop_id=15" ] ) + assert_equal( arr, [ "cell_index=2 m90 2,-1 props={id=>15}", "cell_index=2 m90 0,0 props={id=>15}", "cell_index=2 m90 20,-10 props={id=>15}", "cell_index=2 m90 22,-11 props={id=>15}", "cell_index=2 m90 40,-20 props={id=>15}", "cell_index=2 m90 42,-21 props={id=>15}" ] ) end @@ -687,6 +701,8 @@ class DBInstance_TestClass < TestBase # this only works in editable mode ly = RBA::Layout::new(true) + pid4 = ly.properties_id( { "id" => 4 } ) + ci1 = ly.add_cell( "c1" ) ci2 = ly.add_cell( "c2" ) ci3 = ly.add_cell( "c3" ) @@ -719,21 +735,21 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) inst_ref = c2.transform_into( inst_ref, RBA::DTrans::new( 3, false, 0.100, 0.200 ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 props={id=>4}" ) inst_ref = c2.transform_into( inst_ref, RBA::DCplxTrans::new( 0.5, 45.0, false, RBA::DPoint::new(0.001, 0.002) ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 91,89 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 91,89 props={id=>4}" ) inst_ref = c2.transform_into( inst_ref, RBA::DCplxTrans::new( 0.5, 45.0, false, RBA::DPoint::new ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 1,64 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 1,64 props={id=>4}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r90 1,64 prop_id=4" ] ) + assert_equal( arr, [ "cell_index=0 r90 1,64 props={id=>4}" ] ) c2.clear tr = RBA::DTrans::new( RBA::DTrans::R90, RBA::DPoint::new( 0.101, -0.051 ) ) @@ -747,21 +763,21 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) inst_ref.transform_into( RBA::DTrans::new( 3, false, 0.100, 0.200 ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 props={id=>4}" ) inst_ref.transform_into( RBA::DCplxTrans::new( 0.5, 45.0, false, RBA::DPoint::new ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 props={id=>4}" ) inst_ref.transform_into( RBA::DCplxTrans::new( 0.5, 45.0, false, RBA::DPoint::new ) ) - assert_equal( inst_ref.to_s, "cell_index=0 r90 0,62 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 0,62 props={id=>4}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r90 0,62 prop_id=4" ] ) + assert_equal( arr, [ "cell_index=0 r90 0,62 props={id=>4}" ] ) c2.clear tr = RBA::DTrans::new( RBA::DTrans::R90, RBA::DPoint::new( 0.101, -0.051 ) ) @@ -775,22 +791,22 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) c2.transform_into( RBA::DTrans::new( 3, false, 0.100, 0.200 ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 props={id=>4}" ) c2.transform_into( RBA::DCplxTrans::new( 0.5, 45.0, false, RBA::DPoint::new(0.001, -0.001) ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 88,86 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 88,86 props={id=>4}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r90 88,86 prop_id=4" ] ) + assert_equal( arr, [ "cell_index=0 r90 88,86 props={id=>4}" ] ) c2.clear tr = RBA::DTrans::new( RBA::DTrans::R90, RBA::DPoint::new( 0.101, -0.051 ) ) @@ -804,22 +820,22 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) c2.transform_into( RBA::DTrans::new( 3, false, 0.100, 0.200 ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 props={id=>4}" ) c2.transform_into( RBA::DCplxTrans::new( 0.5, 45.0, false, RBA::DPoint::new ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 88,88 props={id=>4}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r90 88,88 prop_id=4" ] ) + assert_equal( arr, [ "cell_index=0 r90 88,88 props={id=>4}" ] ) c2.clear tr = RBA::DTrans::new( RBA::DTrans::R90, RBA::DPoint::new( 0.101, -0.051 ) ) @@ -833,22 +849,22 @@ class DBInstance_TestClass < TestBase inst_ref.cell_inst = inst assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50" ) - inst_ref.prop_id = 4 - assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 prop_id=4" ) + inst_ref.prop_id = pid4 + assert_equal( inst_ref.to_s, "cell_index=0 r90 100,-50 props={id=>4}" ) c2.layout.transform( RBA::DTrans::new( 3, false, 0.100, 0.200 ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 250,0 props={id=>4}" ) c2.layout.transform( RBA::DCplxTrans::new( 0.5, 45.0, false, RBA::DPoint::new(0.001, 0.001) ) ) inst_ref = nil c2.each_inst { |i| inst_ref = i } - assert_equal( inst_ref.to_s, "cell_index=0 r90 90,88 prop_id=4" ) + assert_equal( inst_ref.to_s, "cell_index=0 r90 90,88 props={id=>4}" ) arr = [] c2.each_inst { |i| arr.push( i.to_s ) } - assert_equal( arr, [ "cell_index=0 r90 90,88 prop_id=4" ] ) + assert_equal( arr, [ "cell_index=0 r90 90,88 props={id=>4}" ] ) end