0

我有一个带有开始日期和结束日期的 RESERVATION 实体。我正在使用 benerator 生成测试数据。我想要的是使用 thestart date + 1 day作为结束日期的最小值。事实证明,如何实现这一目标是困难的。这是生成标签的一部分,它使 benerator 抱怨。

<attribute name="START_DATE" type="date" min="2013-03-24" max="2013-03-30"    
     nullable="false"/>
<attribute name="END_DATE" type = "date" min="this.START_DATE + 1" max="2013-04-13" 
     nullable="false"/>

那么如何使用生成的开始日期作为要生成的结束日期的最小值呢?

4

1 回答 1

0

Databene benerator 的作者 Volker bergmann 在我通过电子邮件向他发送问题时给了我一个答案。只需使用TimeUtil类和一些像这样的变量......

<attribute name="START_DATE" type="date" script="TimeUtil.today()" nullable="false"/>
<variable name="for_endDate" type="int" min="1" max="10" />
<attribute name="END_DATE" type = "date" script="TimeUtil.addDays(this.START_DATE,   
      for_endDate)"  nullable="false"/>

并且您必须TimeUtil在 setup 标记之后的 xml 开头导入类

<import class="org.databene.commons.TimeUtil"/>
于 2013-04-06T14:43:37.450 回答