小编Joh*_*y C的帖子

rspec not_to从不按预期行为改变

我在rspec和rspec-rails 2.11.0中遇到了一些令人困惑的行为.我已经在同事的应用程序上运行了2.7.1(在ruby 1.9.3上)

这些测试按预期工作(失败):

it "should not change i" do
    i = 0
    expect {
      i = 2
    }.not_to change { i }
end

it "should not change i" do
    i = 0
    expect {
      i = 2
    }.not_to change { i }.from( 0 )
end
Run Code Online (Sandbox Code Playgroud)

在两种情况下,失败消息都是"结果不应该改变,但确实从0变为2"

将期望中的"from"更改为不同的值莫名其妙地使其通过,而不是失败,无论在expect块中i的值发生了什么:

it "should not change i" do
    i = 0
    expect {
        i = 2
    }.not_to change { i }.from( 1 )
end
Run Code Online (Sandbox Code Playgroud)

我最近才升级到1.9.3,我可以肯定地说,如果我遇到它,我会注意到这种行为.谁能解释这个和/或我做错了什么?

ruby-on-rails rspec2 rspec-rails

10
推荐指数
1
解决办法
2万
查看次数

当组件设备可能包含ext2文件系统时脚本化mdadm

我想使用mdadm编写m1.large EC2实例上的两个短暂存储设备的条带化脚本(显然amis并不总是包含设备信息,所以我不能在数组启动后创建一个新的ami).

问题是,EC2实例上的临时存储通常预先格式化了文件系统,导致mdadm说:

mdadm: /dev/sdb appears to contain an ext2fs file system
    size=440366080K  mtime=Mon Jan  2 20:32:06 2012
mdadm: /dev/sdc appears to contain an ext2fs file system
    size=440366080K  mtime=Wed Dec 31 19:00:00 1969
Continue creating array? 
Run Code Online (Sandbox Code Playgroud)

等待输入.对于非交互式情况(例如fsck -y),我确定有一种方法可以自动为mdadm中的这些类型的提示回答"是",但我似乎无法弄明白(它不是--force).我知道我可以使用dd将设备清零,但这似乎是一个相当大锤的解决方案,我确信很容易完成.

linux scripting raid amazon-ec2

6
推荐指数
1
解决办法
5185
查看次数

仅在使用自动链接时忽略用于 android 的本机库

0.62.2 中的 React Native 自动链接添加了来自node_modulesios 和 android 的所有 React Native 项目,通过:

apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
Run Code Online (Sandbox Code Playgroud)

但是有一个项目我只想在 iphone 应用程序中使用,但不清楚如何告诉 build.gradle 从 android 中排除此依赖项。即使 react native 自动链接器不直接支持这一点,也应该有一种方法来以编程方式迭代给定变体的“实现”依赖项并删除 build.gradle 中的依赖项?

android gradle autolink react-native-android

2
推荐指数
1
解决办法
1040
查看次数