小编edu*_*ris的帖子

使用Capybara检查隐藏的复选框

我有一个我想检查的复选框.这个按钮有一个confirm alert相关的和其他一些东西.

在此输入图像描述

<label>
  <div class="check label-checked">
    <span>Confirm</span>
    <i class="fa fa-square-o"></i>
    <input class="confirm-reservation-js" hidden="" name="actions_to[56]" type="checkbox" value="confirm">
  </div>
</label>
Run Code Online (Sandbox Code Playgroud)

# js.erb

$(__s.bookings + ".confirm-reservation-js").click(function() {
    var input, form;
    if (confirm( "<%= I18n.t('.reservations.alert.action') %>" )) {
      form  = $(__s.bookings + '[id^=edit_booking_]');
      input = $("<input>")
                .attr("type", "hidden")
                .attr("name", "confirm").val("true");
      form.append($(input));
      form.submit();
    }
  });
Run Code Online (Sandbox Code Playgroud)

我不能用Capybara检查这个按钮.我正在尝试:

1- find(locator, visible: false).click

2- find(locator).trigger('click')

locator我输入的路径在哪里.

额外

# Gemfile
gem 'capybara', '2.0.2'
gem 'capybara-webkit', '~> 1.1.0'

# Test file
it "..." , js: true do …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails capybara capybara-webkit

5
推荐指数
1
解决办法
2261
查看次数

将haml代码保存在变量中然后使用它

我想做这样的事情,我不知道是否有可能.我也知道这不是一个好习惯,但我处于截止日期.

在我的_buttons.html.haml中

- buttons = case params[:action]
- when 'edit'
  %a.property-save{ href: "#" }
    %i.icon-save.icon-2x
    = t('.property_save')
  ...
- when 'show'
  ...
- else
  %a.property-save{ href: "#" }
    %i.icon-open.icon-2x
    = t('.property_open')

.my-butons
  = buttons
Run Code Online (Sandbox Code Playgroud)

问题是html代码被渲染,我不知道我如何在buttons变量中放置这些代码.谢谢你的建议.

haml ruby-on-rails

4
推荐指数
1
解决办法
1471
查看次数

标签 统计

ruby-on-rails ×2

capybara ×1

capybara-webkit ×1

haml ×1