小编Dav*_*uth的帖子

如何在RubyMine中保存时重新格式化代码?

当我在Mac RubyMine上全部保存(cmd + s)时,有没有办法自动重新格式化我的代码?

我试图将快捷方式CMD + S绑定到Save All和Reformat Code,但这并不能解决问题.

谢谢

rubymine

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

应该匹配的ActiveRecord匹配器是否违反了"测试行为不实施"规则?

例如,如果我should validate_presence_of在我的规范中使用,那只是测试我validate_presence_of在我的模型中有一段代码,那就是测试实现.更重要的是,测试真正的问题并不是那个规范完全没用,"如果我没有填写某个字段,模型是否会成功保存?"

tdd unit-testing ruby-on-rails shoulda rails-activerecord

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

如何修复版本2.99的RSpec语法?

我最近将我的Rails 4应用程序从RSpec 2.X升级到2.99,尽管已经运行了Transpec,但我的一些测试仍然失败.

require 'spec_helper'

describe Invoice, :type => :model do

  before :each do
    @user = FactoryGirl.create(:user)
    @invoice = FactoryGirl.create(:invoice, :user => @user)
  end

  it "is not open" do
    expect {
      FactoryGirl.create(:payment, :invoice => @invoice, :amount => 100)  
    }.to change{@invoice.reload.open?}.from(true).to(false)
  end

  it "is open" do
    expect {
      FactoryGirl.create(:payment, :invoice => @invoice, :amount => 99.99)  
    }.to_not change{@invoice.reload.open?}.to(false)
  end

end
Run Code Online (Sandbox Code Playgroud)

第一次测试就像RSpec升级之前一样.

但是,第二个测试会抛出错误:

Failure/Error: expect {
   `expect { }.not_to change { }.to()` is deprecated.
Run Code Online (Sandbox Code Playgroud)

我必须将语法更改为什么?

我已经尝试了几件事not_to,be_falsey等等.到目前为止,没有任何工作.

谢谢你的帮助.

ruby rspec ruby-on-rails rspec-rails rspec3

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

了解Capybara中的native和send_keys

我试图理解以下Capybara语法的含义.到底是native做什么的?什么send_keys用于?另外,我想了解这个特定块的作用.

within('#step-3') do
 recipe_name = first(:xpath, '//*[@id="recipe-name"]').native
 recipe_name.clear
 recipe_name.send_keys('Email recipe')
end
Run Code Online (Sandbox Code Playgroud)

cucumber capybara

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

解释这个关于依赖倒置原则的励志海报

这篇博文中,这个励志海报描述了依赖倒置原则:

海报

我不明白海报的意思:将灯直接焊接到墙上如何违反依赖倒置原则以及插头如何遵循依赖倒置原则。也许一些关于灯和电源插座的骨架 Java 或 C# 代码可能会有所帮助。

oop dependencies solid-principles dependency-inversion

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

如何获得为特定模型类定义的所有factory_girl工厂?

我在中定义了一个工厂<Rails-root>/spec/factories/models.rb

FactoryGirl.define do
  factory :model do
    id 1
    association :organization, factory: :aureso
    name "Default Model"

    factory :serie_1 do
      id 2
      name 'serie_1'
    end

    factory :serie_2 do
      id 3
      name 'serie_2'
    end

    factory :serie_3 do
      id 4
      name 'serie_3'
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

我想获得所有为Class定义的工厂Model

我可以使用来获得所有类的工厂定义FactoryGirl.factories,是的,我可以使用map / reduce实现上述目标。但是我想知道是否有任何辅助方法来获取模型类的所有定义。

ruby ruby-on-rails ruby-on-rails-4 rspec3 factory-bot

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

我应该在Gherkin/Specflow Given/When/Then语句中使用什么人和心情?

我对人们用Gherkin语言编写语句以描述为验收测试执行的各种操作的方式感到困惑.

在一些文章中,人们使用"我",在一些文章中人们使用"用户".

对于reaction(Then)语句也是如此:

Case 1 --> xyz page should be displayed
Case 2 --> xyz page is displayed

Ex 1:
Given statement abc
When user performs action A
Then screen xyz should be displayed

Ex 2:
Given statement abc
When I perform action A
Then screen xyz is displayed
Run Code Online (Sandbox Code Playgroud)

写"用户"或"我"是否更好,写"应该是"还是"是"更好,这样我的BDD场景是否符合标准?

对任何文章的引用也将是一个很大的帮助.提前致谢.

bdd acceptance-testing cucumber specflow gherkin

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

Outside-In TDD:我应该检查未通过的验收测试吗?

因此,您将从失败的验收测试开始,并使用单元测试构建该功能,直到验收测试通过.但是当你通过单元测试时,你应该检查源代码控制吗?如果这样做,你是否将接受测试标记为忽略(如果是,那么在代码中还是在构建服务器上)?这如何适合持续集成?

testing tdd unit-testing acceptance-testing

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

“对扩展开放,对修改封闭”的原则有意义吗?

在我看来,Bob Martin 需要一些以 O 开头的东西来制作 SOLID,并在一些旧书中找到了这个(可能没用的)开/闭原则。

开放/封闭如何与单一职责共存,即一个类应该有一个改变的原因?

如果我想在一个长期存在的系统中遵循 Open/Closed,我是否应该有几十个/几百个类的链,每个类都扩展前一个?

oop design-patterns open-closed-principle solid-principles

4
推荐指数
2
解决办法
2504
查看次数

Rails控制器中实例变量的范围是什么?

如果我在Rails控制器中创建一个实例变量,那么该实例变量的范围是什么?是否可用于所有Rails应用程序,或仅用于与该特定控制器关联的视图和模型?由于我是Rails的新手,我有点困惑.

ruby ruby-on-rails ruby-on-rails-4

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