2017-02-14 54 views
0

我已经安装了慢性宝石,虽然我使用慢性宝石

我能得到Chronic.parse(“周六需要验证过去的日期一些表,在过去的5个星期六从今天起,:上下文=> :过去)返回上周六的日期,但不

  1. '最后5个星期六' 返回 '零'

  2. 我想它在这个格式返回:strftime的“%M%d%Y% H%M“

  3. 我也不能标记任何方法,如.exists?或者应该== true,以便我可以用它来验证这些报告是否已运行

  4. 我只想验证一下02/11/2017 02/04/2017 01/28/2017 01/28/2017 01 /二千〇一十七分之二十一出现在页面上的文本,但由于他们每周都会改变,我需要逻辑将从现在

+0

对于第三点,你问的是如何在测试中写断言?这取决于你使用的断言库和页面的标记。 –

+0

感谢这就是它的RSpec这里非常有帮助的一个片段:需要 '日期' $时间= Time.now.strftime( “%M%d%Y%H%M”) CURRENT_DATE = Date.today \t \t如果ARG1 == “迄今为止” \t \t dailyops = CURRENT_DATE + 7 \t \t日期= dailyops.strftime( “%米/%d /%Y”)to_s \t \t @ browser.text_field(:姓名,“#{ obj_info [1] .to_s}“)。set”#{date}“ –

+0

对不起,我不确定那段代码试图说明什么。你能详细说明你仍然有问题的地方吗(例如你正在尝试的代码和你得到的意外结果)?请注意,您可以通过编辑来澄清问题。将代码放在评论中非常难以阅读/复制。 –

回答

0

使用“两周前”返回最后5个周六获得前一周的周六:

Chronic.parse('1 week ago Saturday') 
#=> "2017-02-11 12:00:00 -0500" 
Chronic.parse('2 weeks ago Saturday') 
#=> "2017-02-04 12:00:00 -0500" 
Chronic.parse('3 weeks ago Saturday') 
#=> "2017-01-28 12:00:00 -0500" 
Chronic.parse('4 weeks ago Saturday') 
#=> "2017-01-21 12:00:00 -0500" 
Chronic.parse('5 weeks ago Saturday') 
#=> "2017-01-14 12:00:00 -0500" 

可以格式化返回值使用#strftime

Chronic.parse('1 week ago Saturday').strftime("%m%d%Y%H%M") 
#=> "021120171200"