Error message seems to indicate improper config?
Closed this issue · 1 comments
info-rchitect commented
Hi,
Here is the error message I get
42: i = 0
43: until @pointer
44: v = @store[i]
45: if v
46: binding.pry
=> 47: if after == v || (v.is_a?(Range) && after >= v.min && after <= v.max)
48: @pointer = i
49: @next = after
50: elsif after < min_val(v)
51: @pointer = previous_pointer(i)
52: @next = min_val(v) - 1
[1] pry(#<TestIds::BinArray>)> after
=> {"include"=>{"<<"=>"5..16"}}
[2] pry(#<TestIds::BinArray>)> v
=> 5..16
[3] pry(#<TestIds::BinArray>)> after == v || (v.is_a?(Range) && after >= v.min && after <= v.max)
TypeError: no implicit conversion of Fixnum into Hash
from (pry):3:in `>='
Here is my config:
[1] pry(#<AmdTest::Interface>)> TestIds.current_configuration
=> #<TestIds::Configuration:0x002b9698480210
@allocator=#<TestIds::Allocator:0x002b96984801e8 @config=#<TestIds::Configuration:0x002b9698480210 ...>>,
@bins=
#<TestIds::Configuration::Item:0x002b96984801c0
@exclude=#<TestIds::BinArray:0x002b9698480148 @store=[]>,
@include=#<TestIds::BinArray:0x002b9698480198 @store=[5..16]>,
@size=1>,
@id=:ws1,
@numbers=
#<TestIds::Configuration::Item:0x002b9698480008 @exclude=#<TestIds::BinArray:0x002b9698477e58 @store=[]>, @include=#<TestIds::BinArray:0x002b9698477ea8 @store=[]>, @size=1>,
@send_to_ate=false,
@softbins=
#<TestIds::Configuration::Item:0x002b96984800d0
@algorithm="bbxxx",
@exclude=#<TestIds::BinArray:0x002b9698480058 @store=[]>,
@include=#<TestIds::BinArray:0x002b96984800a8 @store=[]>,
@size=1>,
@validated=true>
The error occurs on the last test in the flow where I am passing in :none
for the binning params:
:bin=>:none,
:softbin=>:none,
:number=>:none,
Any ideas?
info-rchitect commented
OK, I had been playing with my config so I decided to remove the test_ids dir in the imports and re-ran and no issue. I also figured out a workaround for having test metadata configure the hardbin. I set my hardbin config to a range that covers any hardbin I want to assign and then assigned at the test level.
scan test_type, ip: ip, cond: cond, bin: dut.scan.hbin(test_type, dut.current_test_insertion)
I will still pursue a longer term solution but this looks to get me going.