小编yan*_*han的帖子

捆绑宝石:rspec说'没有找到例子'

我正在将rails项目中ruby的一部分移植到gem中.我曾经用来bundle gem创建新的gem目录.对于libspec目录,gem的项目布局如下所示:

|- lib
|  |- mylib
|  |  |- MYCLASS.rb
|  |  |- version.rb
|  |
|  |- mylib.rb
|
|- spec
   |- spec_helper.rb
   |- mylib
      |- test_MYCLASS.rb
Run Code Online (Sandbox Code Playgroud)

内容spec/spec_helper.rb:

require "mylib"

RSpec.configure do |config|
end
Run Code Online (Sandbox Code Playgroud)

mylib.gemspecbundle gem命令生成的相关部分:

spec.files         = `git ls-files`.split($/)
spec.executables   = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
spec.test_files    = spec.files.grep(%r{^(test|spec|features)/})
spec.require_paths = ["lib"]
Run Code Online (Sandbox Code Playgroud)

当我跑步时bundle exec rspec spec,我明白了

No examples found.


Finished in 0.00004 seconds
0 …
Run Code Online (Sandbox Code Playgroud)

ruby rspec bundler

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

nginx反向代理到在localhost上运行的后端

编辑:事实证明,我的设置实际上是有效的.以前,我正在重定向到端口36000,但这是由于我的后端应用程序上的一些配置设置造成的.

我不完全确定,但我相信我可能想要使用nginx设置反向代理.

我在端口36000上的服务器上运行了一个应用程序.默认情况下,端口36000不可公开访问,我的目的是让nginx监听公共URL,将任何对url的请求指向运行在端口36000上的应用程序.在整个过程中,用户不应该知道他/她的请求被发送到在我的服务器端口36000上运行的应用程序.

换句话说,假设我的网址是http://domain.somehost.com/

在访问http://domain.somehost.com/时,nginx应该接收请求并将其重定向到端口36000上已在服务器上运行的应用程序,应用程序执行一些处理,然后传回响应.端口36000不可公开访问,不应显示为任何URL的一部分.

我尝试了一个看起来像这样的设置:

server {
    listen 80;
    server_name domain.somehost.com
    location / {
        proxy_pass http://127.0.0.1:36000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
Run Code Online (Sandbox Code Playgroud)

并包括我的主要nginx.conf中

但是,它要求我将端口36000公开访问,并且我试图避免这种情况.端口36000还显示为Web浏览器中转发URL的一部分.

有什么方法可以做同样的事情,但没有使端口36000可访问?

谢谢.

reverse-proxy nginx

15
推荐指数
1
解决办法
3万
查看次数

单声道 - Debug.Assert不起作用

我这个程序在这里:

namespace TodoPlus {
using System.Diagnostics;

    public class LameProg {
        public LameProg() {}
        public static void Main(string[] args) {
            int a = 2;
            int b = 3;
            Debug.Assert(a == b, "Bleh");
            System.Console.WriteLine("Haha it didn't work");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

不知何故,Debug.Assert无效.

我正在使用Mono 2.10.5,这是我用来编译和执行的:

$ dmcs LameProg.cs

$ mono ./LameProg.exe

我怎样才能做到这一点?我希望它与C中的断言宏具有相同的效果,也就是说它应该彻底崩溃程序.是否可以使用Debug.Assert执行此操作或是否有其他功能可以实现此目的?

谢谢.

c# mono

11
推荐指数
1
解决办法
2487
查看次数

reveal.js:如何在线编写Mathjax公式?

到目前为止,我在reveal.js中使用MathJax编写的每个数学公式都将它放在自己的行上.我希望能够在相同的行上编写它们,<p>标记中的文本以及公式的控制换行符.

dependencies传递给Reveal.initialize调用的对象数组中指定的MathJax依赖关系是:

{ src: '/plugin/math/math.js', async: true }
Run Code Online (Sandbox Code Playgroud)

这与reveal.js github文档中显示的内容相同.换句话说,我没有以任何其他方式配置MathJax.

谢谢!

mathjax reveal.js

7
推荐指数
1
解决办法
3758
查看次数

Haddock - 链接到外部模块中的功能(导入整个模块)

假设我有一个名为Haskell模块的MyModule导入外部模块,如下所示:

import ModuleA hiding (a, b, c)
Run Code Online (Sandbox Code Playgroud)

无法修改此import语句,因为该程序不完全是我的.

我希望链接到ModuleA.external_function文档中ModuleA,在上面的注释中调用一个函数my_function.所以代码看起来像这样:

-- | my_function makes use of 'ModuleA.external_function'
my_function :: Int -> Int
Run Code Online (Sandbox Code Playgroud)

使用haddock 2.10.0并运行cabal haddock,ModuleA.external_function生成的链接为dist/doc/html/MyModule/ModuleA.html#v:external_function.但是,问题是该dist/doc/html/MyModule/ModuleA.html文件不存在.

如何生成指向文档的链接ModuleA,例如module-A-package/docs/ModuleA.html#v:external_function.换句话说,类似于http://hackage.haskell.org/package/text-0.11.2.0/docs/Data-Text.html的链接到该String类型的东西(它们链接到http:// hackage. haskell.org/package/base-4.5.0.0/docs/Data-String.html#t:String)?请记住,我无法修改import声明.

谢谢.

haskell haddock

5
推荐指数
1
解决办法
621
查看次数

Redis - 可以查看单个键的击中/未命中?

是否有可能获得redis中各个键的命中/未命中数?虽然可以使用INFO命令redis-cli来获取keyspace_hitskeyspace_misses,但它们太通用了,对我没用.

谢谢!

redis

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

标签 统计

bundler ×1

c# ×1

haddock ×1

haskell ×1

mathjax ×1

mono ×1

nginx ×1

redis ×1

reveal.js ×1

reverse-proxy ×1

rspec ×1

ruby ×1