问题标签 [ruby-mocha]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - Konacha、Mocha、BackboneJS 和 Ruby on Rails 配置
我正在使用 Konacha 在我的 Ruby on Rails 应用程序中测试 BackboneJS 应用程序。我已经阅读了网络上的每个教程,它显示了设置和开始工作是多么容易。不幸的是,我没有达到这样的成功水平。这是我所拥有的:
应用程序/资产/javascripts/app_specific/itapp/models/post.js
规范/javascripts/app_specific/itapp/models/post_spec.js
规范/javascripts/spec_helper.js 文件:
我确实有一个 config/initializers/konacha.rb 文件:
我得到的错误:
错误:无法加载 app_specific/itapp/collections/posts_spec.js。也许它无法编译?检查 rake 输出是否有错误。
检查 rake 输出:
ActionView::Template::Error: 在我的 spec_helper.js 中找不到我需要的文件“应用程序”
因此,出于某种原因,即使在我的 spec_helper 中我试图为测试环境加载 BackboneJS 应用程序,它也无法找到它。
我应该尝试让这种沟通/工作的任何想法/想法?
——迈克·莱利
ruby-on-rails - 用于功能测试的存根 MailChimp api 调用
我正在尝试测试特定列表的 MailChimp 订阅:
测试/功能/some_controller_test.rb
控制器/some_controller.rb
但我认为我在这里遗漏了一些东西,因为测试正在通过,但他们正在调用 API,因为当我使用我的电子邮件进行测试时,我每次运行时都会收到来自 MailChimp 的电子邮件确认:
如果我尝试运行:
或者
我收到以下错误:
编辑我
我能够使用 any_instance 方法执行此操作:
但仍在调用 API。
ruby - 如何使用 ParameterMatchers 验证数组的元素数量和内容?
我正在使用 Mocha 和 MiniTest 使用 TDD 学习 Ruby。我有一个类有一个公共方法和许多私有方法,所以我的测试要测试的唯一方法是公共方法。
这个公共方法做一些处理并创建一个发送给另一个对象的数组:
伟大的。为了测试它,我想模拟该OutputGenerator.write_to_file(path, pairs)
方法并验证参数。我可以成功实施的第一个测试:
现在我想和一对参与者一起测试。我正在尝试这个
问题是 equals 只会匹配 obj 引用,而不是内容。
有什么方法可以验证数组的内容吗?验证数组中元素的数量也非常有用。
ps:如果代码不符合ruby标准,我很抱歉,我正在做这个项目来学习语言。
ruby-on-rails - mocha gem 中的 rr gem assert_received 等价物
现在我使用rr gem 来存根项目模型的计数方法,然后我复制索引操作来检查计数方法是否被调用。我打算使用 mocha gem,但我不知道mochaassert_received
gem 中方法的等价物是什么。以下代码是我的测试示例之一。
ruby-on-rails - mocha gem 存根方法和分配响应
在此示例中,我使用rr gem,并在此处存根对象方法 obj.project ,并在从任何其他方法或类调用该方法时将返回值分配给任何变量(在本例中为 project_data )。
当我调用任何使用 obj 调用 project 方法的方法时,project_data将由 obj.project 方法的返回值分配。有没有办法用mocha gem 来实现这种技术?我用谷歌搜索了可能的解决方案,但我找不到任何解决方案
ruby-on-rails - RSpec、Mocha 和 Rubymine - 未定义的方法“mocha_setup”
我在一个文件夹中有两种风格的规范,其中一种使用全脂 rails 环境,使用 rspec,另一种是轻量级助手,需要单独使用 gem。
最近我在 Rubymine 中同时运行这些文件时遇到了一些问题。
右键单击任一样式的单个文件运行良好。右键单击文件夹并选择“运行>文件夹中的所有规范”已为每个规范返回此错误:
直到最近,这一直很好地结合在一起。
我可以从命令行运行所有规范,没有任何问题:
这似乎是在 Rubymine 中运行此文件夹的特定内容。我已尝试使缓存无效并重新启动 IDE。我尝试删除运行该文件夹的配置。
有谁知道这可能是什么原因造成的?
更新:从那以后,我发现通过命令行调用它时似乎偶尔会发生这种情况。
node.js - 如何在 Travis CI 的一个项目中运行 Node.js 和 Ruby 测试
我有一个包含多个组件的存储库,其中大部分是用 JavaScript (Node.js) 编写的,一个是用 Ruby (Ruby on Rails) 编写的。我想要一个 .travis.yml 文件来触发一个构建,该构建运行每个组件的所有测试。根据这个 Travis CI Google Group thread,目前没有官方支持。
我的目录结构如下所示:
.
├── buildserver
├── core
├── extensions
├── webapp
├── Vagrantfile
├── package.json
├── .travis.yml
└── Makefile
我希望能够运行特定版本的 Ruby (2.2.2) 和 Node.js (0.12.2)。我已经有一个make
目标,所以make test
在每个子目录中运行适当的测试套件。
ruby-on-rails - Ruby Mocha 如何存根嵌套哈希?
我在这里有一个需要使用 Mocha 模拟的方法,但目前我不知道如何在这里模拟嵌套哈希。
Products.new(:A => "aa", :B => "bb").containers['container_A'].elements['element_b']
到目前为止,我知道如何存根Products.new(:A => "aa", :B => "bb")
,但不知道它后面的哈希部分。
提前致谢。
ruby-on-rails - 如何存根也是红宝石中哈希名称的方法?
我是 ruby mocha 的新手,需要模拟一个也是哈希的方法。目前该方法做了两件事:
我所做的是
我不确定这是否是正确的方法,但它通过了编译器。
ruby-on-rails - 在 Rails 中使用 Mocha 在 File.open 中存根写入方法
我的 spec_helper.rb 具有以下配置:
我想测试以下代码:
所以这是我的规格:
但是输出显示没有调用write
方法。
这是输出:
那么我是否write
以正确的方式存根该方法?如果没有,是否有任何其他方法可以在块内编写方法调用规范do |obj| ..end
?