Transpec 是一种可通过静态和动态代码分析将你的规范转换为最新的 RSpec 语法的工具。使用 Transpec,可以立即将 RSpec 2 规格升级到 RSpec 3。它支持转换几乎所有的 RSpec 的三个变化。
这是一个示例规范:
describe Account do subject(:account) { Account.new(logger) } let(:logger) { mock('logger') } describe '#balance' do context 'initially' do it 'is zero' do account.balance.should == 0 end end end describe '#close' do it 'logs an account closed message' do logger.should_receive(:account_closed).with(account) account.close end end describe '#renew' do context 'when the account is not closed' do before do account.stub(:closed?).and_return(false) end it 'does not raise error' do lambda { account.renew }.should_not raise_error(Account::RenewalError) end end end end
Transpec 会将其转换为以下形式:
describe Account do subject(:account) { Account.new(logger) } let(:logger) { double('logger') } describe '#balance' do context 'initially' do it 'is zero' do expect(account.balance).to eq(0) end end end describe '#close' do it 'logs an account closed message' do expect(logger).to receive(:account_closed).with(account) account.close end end describe '#renew' do context 'when the account is not closed' do before do allow(account).to receive(:closed?).and_return(false) end it 'does not raise error' do expect { account.renew }.not_to raise_error end end end end
只需使用gem
命令安装transpec
:
$ gem install transpec
在转换您的规格之前:
rspec
gem 依赖项 2.14 或更高版本。如果没有,请更改你的Gemfile
或*.gemspec
rspec
并检查所有规格是否通过。然后,在项目根目录下运行transpec
:
$ cd some-project
$transspec
这将运行规范,转换它们,并覆盖spec
目录中的所有规范文件
转换后,rspec
再次运行,检查是否一切仍然是绿色的:
$ bundle exec rspec
如果它是绿色的,请使用自动生成的消息提交更改,该消息描述转换摘要并帮助您的团队成员理解新语法:
$ git commit -aeF .git/COMMIT_EDITMSG
问题内容: 我想转换以下查询: 它与Oracle连接语法等效。我的第一次尝试: 由于“ ORA-01417:一个表最多可以外部连接到另一个表”错误而无法正常工作。 我意识到Oracle建议使用ANSI方法,但是我受到以下Oracle错误的“折磨”: http://awads.net/wp/2007/06/14/when-ansi-sql-join-syntax-does-not-work-in-
问题内容: 我想使用PostgreSQL 9.3将计算出的值转换为data type 。 我的第一次尝试: 给我这个错误: 我的第二次尝试: 给我这个错误: 问题答案: 您需要使用以下语法:
我不知道我在这方面哪里出了问题,我正在尝试在recyclerView中列出食谱的成分,我只是无法让onBindViewHolder工作,不管我尝试了什么。下面是适配器代码以及xml配方。班本质上,我需要向recyclerView显示Recipe类的结果。 食谱班 适配器 完整logcat RecipeList模型公共类RecipeList{ 更新的错误 尝试在空对象引用上调用虚方法“空androi
我有三个表示cron数据的变量,例如: 这些值将用于调度运行脚本的cron作业。后来,我意识到需要进行REST调用并传递一个UTC格式的参数。 如何使用ruby将上述值转换为UTC格式的datetime值? 提前感谢!
类型转换用于将一种数据类型的变量转换为另外一种类型的变量。Go 语言类型转换基本格式如下: type_name(expression) type_name 为类型,expression 为表达式。 实例 以下实例中将整型转化为浮点型,并计算结果,将结果赋值给浮点型变量: package main import "fmt" func main() { var sum int = 17
我环顾四周,找不到一种自动完成这项工作的方法。所以: 我在vim中内置了一些语法高亮,我想转移到vscode。我至少有两个部分卡住了。 到目前为止,我的情况是这样的:我已经构建了一个vscode语言扩展——设置了一些基本的语法规则,并将其复制到vscode config文件夹中。 我遇到麻烦的部分-我可以在某些字段的含义中澄清一下-命名约定。 和语法的嵌套解析,这些东西只出现在其他元素中。 下面是
任何帮助都将不胜感激!
在Swift中,我使用kCFStringTransformToLatin将日语转换为Romaji,将汉语转换为拼音。在Java中有什么可以与Android相媲美的吗?或者我必须导入一些库(正如在这里的几篇文章中讨论的那样)。如果是,建议哪一个?