使用方法

时间:2016-02-22 00:05:55

标签: ruby-on-rails

我将弃用在方法上传递参数。我知道如何使用ActiveSupport::Deprecation作为方法,但该方法不会去任何地方。只是将参数传递给它就会消失。

这个特殊的方法在TON中用于测试,所以我绝对不希望每次都有警告!我已经从测试中删除了参数,因此在运行测试套件时我不应该看到任何警告,除非有人使用参数添加方法。我怎样才能做到这一点?

以下是不推荐使用(*args)的方法的伪造版本:

def assert_in_tests(*args)
  code_happens_here
end

该方法(一旦(*args)被弃用)将是以下(我不希望在使用它时发布弃用警告):

def assert_in_tests
  code_happens_here
end

1 个答案:

答案 0 :(得分:1)

  

方法不会去任何地方。只是将参数传递给它就会消失...所以当我运行测试套件时我不应该看到任何警告,除非有人用参数添加方法

一个简单的if语句就足够了吗?

def assert_in_tests(*args)
  ActiveSupport::Deprecation.warn("args to be deprecated ...") if args.present?
  code_happens_here
end