我会尽力回答你的问题。我第一次在stackoverflow,希望它有意义。如果您有更多问题,请随时给我发电子邮件。
@rchitect-of-info 是的,你可以。test_ids 插件需要进行少量更改才能满足您的需求。
请看这里test_ids插件中的分配方法:
https ://github.com/Origen-SDK/test_ids/blob/master/lib/test_ids/allocator.rb#L115
我们需要将流中的选项传递给 allocate_number 方法。
number['number'] ||= allocate_number(bin: bin['number'], softbin: softbin['number'], size: number_size, options: options)
number['size'] ||= number_size
然后,请查看 test_ids 插件中的 allocate_number 方法:
https://github.com/Origen-SDK/test_ids/blob/master/lib/test_ids/allocator.rb#L547
这些回调选项是传递给 config.numbers 的。
要访问您的元数据,您只需在此处传递选项以及 bin 和 softbin:
https://github.com/Origen-SDK/test_ids/blob/master/lib/test_ids/allocator.rb#L548
所以新的回调将是
elsif callback = config.numbers.callback
callback.call(bin, softbin, options)
然后您就可以将 TestIds 配置为
TestIds.configure :final_test do |config|
config.numbers do |bin, softbin, options|
case options[:mode]
when :chain
(softbin * 10) + bin
when :jtag
(softbin * 20) + bin
else
(softbin * 30) + bin
end
end
end
我正在对 test_ids 进行类似的更新,希望很快可以进行审查。我的分支目前正在https://github.com/priyavadan/test_ids/commits/change_config