检查测试ID是否已在测试流程中使用的方法?

时间:2017-12-31 17:52:53

标签: origen-sdk

在查看test program flow creation guide时,我想知道是否有方法来确定是否已使用测试ID。我在我的流程中使用了很多枚举器,并在存在重复ID时出现此错误:

[ERROR]      71.979[0.000]   || Test ID scan_delay_testmode1_nclk_1cyc_pmax is defined more than once in flow scan_flow:

能够通过某种方法捕捉到这一点会很好。

THX

1 个答案:

答案 0 :(得分:1)

它有点拗口,但你可以通过以下方式获取使用的ID:

ATP::AST::Extractor.new.process(flow.atp.raw, [:id]).map { |node| node.to_a[0] }

接受PR以揭露更优雅的东西:

flow.atp.ids  # => [:id1, :id2]

ids方法只包含上述内容,可以添加到此处:https://github.com/Origen-SDK/atp/blob/master/lib/atp/flow.rb

更新

截至此PR https://github.com/Origen-SDK/atp/pull/9,您现在可以致电:

flow.ids      # => [:id1 ,:id2]