小编Gre*_*con的帖子

为什么一个Jasmine间谍认为它没有被召唤,即使它返回了andReturn值?

我正在尝试调试没有触发的jQuery.post上的间谍,所以作为一个完整性检查,我试过

spyOn(this.viewModel.requests, 'submitRequest').andReturn('fooz');

var ret = this.viewModel.requests.submitRequest();
expect(ret).toEqual('foo');

expect(this.viewModel.requests.submitRequest).toHaveBeenCalled();
Run Code Online (Sandbox Code Playgroud)

这失败了

期待'fooz'等于'foo'.

但是,当我改变'fooz',以'foo'在参数andReturn,测试失败

已经调用了submitRequest上的预期间谍.

间谍正在返回固定值,为什么会toHaveBeenCalled失败?

javascript unit-testing jasmine

8
推荐指数
1
解决办法
5957
查看次数

与HEAD,HEAD ^和HEAD~1有什么区别?

在git中,以下是什么区别?

  • HEAD
  • HEAD^
  • HEAD~1
  • HEAD~2

它们与它们有master什么关系?那么,有没有MASTER^,MASTER~1

git

8
推荐指数
1
解决办法
2106
查看次数

如何在没有克隆的情况下检查是否可以访问存储库?

我有一些代码,人们提交git repo链接.可以通过HTTPS提供repo,无需身份验证,也可以通过HTTPS进行基本身份验证.我想以编程方式检查是否可以访问回购.我不想运行,git clone因为下载整个历史记录可能非常耗时.我正在尝试找到测试身份验证的最快方法.

git authentication github

8
推荐指数
1
解决办法
2261
查看次数

如何在我加载的模块中使用Smart :: Comments而不更改其源代码?

如何为我的原始脚本以及它直接加载的任何模块指定Smart :: Comments.但是,由于它是一个源过滤器,如果应用于每个其他加载模块加载的每个模块,它可能会造成严重破坏.

例如,我的脚本包括

use Neu::Image;
Run Code Online (Sandbox Code Playgroud)

我想加载Smart::CommentsNeu::Image为好,但指定

$ perl -MSmart::Comments script.pl

不加载Smart::CommentsNeu::Image.

Smart :: Comments文档中描述了此行为:

如果您正在调试应用程序,您也可以使用命令行中的模块调用它:

perl -MSmart::Comments $application.pl
Run Code Online (Sandbox Code Playgroud)

当然,这只能在应用程序文件本身中启用智能注释,而不是在应用程序加载的任何模块中启用.

我已经看过的一些其他事情:

回到顶端|提供反馈替代方法 正如gbacon所提到的,Smart :: Comments提供了一个环境变量选项,允许打开或关闭它.但是,如果可能的话,我希望能够在不修改原始源的情况下打开它.

perl command-line module

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

如何在Perl中将数组用作对象属性?

我需要一些关于Perl中数组的帮助

这是我的构造函数.

BuildPacket.pm

     sub new {
            my $class = shift;    
            my $Packet = {
                _PacketName => shift,
                _Platform  => shift,
                _Version => shift,
                _IncludePath => [@_],
            };

            bless $Packet, $class;
            return $Packet;
        }

        sub SetPacketName {
            my ( $Packet, $PacketName ) = @_;
            $Packet->{_PacketName} = $PacketName if defined($PacketName);
            return $Packet->{_PacketName};
        }

       sub SetIncludePath {
            my ( $Packet, @IncludePath ) = @_;
            $Packet->{_IncludePath} = \@IncludePath;
        }

         sub GetPacketName {
            my( $Packet ) = @_;
            return $Packet->{_PacketName};
        }

        sub GetIncludePath {
           my( …
Run Code Online (Sandbox Code Playgroud)

arrays perl constructor

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

Perl:使用REST :: Client模块以编程方式设置POST参数

我已经构建了一个REST服务器,现在我想使用REST :: Client模块从Perl客户端快速测试它.

如果我执行GET请求(在URL中显式设置参数),它工作正常,但我无法弄清楚如何在POST请求中设置这些参数.

这是我的代码的样子:

#!/usr/bin/perl
use strict;
use warnings;

use REST::Client;

my $client = REST::Client->new();

my $request_url =  'http://myHost:6633/my_operation';

$client->POST($request_url); 
print $client->responseContent();
Run Code Online (Sandbox Code Playgroud)

我尝试过类似的东西:

$client->addHeader ('my_param' , 'my value');
Run Code Online (Sandbox Code Playgroud)

但这显然是错误的,因为我不想设置HTTP预定义标头而是设置请求参数.

谢谢!

rest perl post http

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

(MapView和1700 Overlays Items).equals("Slow")

我有一个MapView,我在它上面叠加1,700个点,每个点都有相同的可绘制但有不同的信息.我目前正在使用Itemized Overlay添加所有叠加层,然后填充一次.这样可行,但性能很慢.改变缩放级别和焦点是跳跃的.现在,它会更好用,ArrayItemizedOverlay因为它是相同的drawable,或者地图是否同样慢?

import java.util.ArrayList;

import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Canvas;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.app.Activity;

import com.google.android.maps.ItemizedOverlay;
import com.google.android.maps.MapView;
import com.google.android.maps.OverlayItem; 

public class Points extends ItemizedOverlay <OverlayItem> {
    Context mContext; 
    private ArrayList mOverlays = new ArrayList();

    String newLine = String.format("%n");

    public Points(Drawable defaultMarker) {
        super(boundCenterBottom(defaultMarker));
        // TODO Auto-generated constructor stub
    }

    @Override
    protected OverlayItem createItem(int i) {
        return (OverlayItem) mOverlays.get(i);
    }

    @Override
    public int size() {
        return mOverlays.size();
    }

    @Override
    public …
Run Code Online (Sandbox Code Playgroud)

java android google-maps

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

这个Haskell聊天代码中的同步缺陷是什么,修复是什么?

Simon Marlow在Haskell eXchange 2012上发表了高性能并发演讲.由于时间限制,他跳过了一个简单的并发聊天服务器上的部分.对于省略的内容感到好奇,网络搜索在服务器应用程序上找到了类似的幻灯片,在GitHub上找到了一个实现.

幻灯片33读取

回去谈谈......

talk :: Server -> Handle -> IO ()
talk server@Server{..} handle = do
    hSetNewlineMode handle universalNewlineMode
    hSetBuffering handle LineBuffering
    readName
  where
    readName = do
      hPutStrLn handle "What is your name?"
      name <- hGetLine handle
      m <- checkAddClient server name handle
      case m of
         Nothing -> do
           hPrintf handle "The name %s is in use" name
           readName
         Just client -> do
           runClient server …
Run Code Online (Sandbox Code Playgroud)

concurrency multithreading haskell chat

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

如果STDOUT是另一个目的地,如何打印到STDERR?

我希望Perl仅在STDOUT不相同的情况下写入STDERR.例如,如果STDOUT和STDERR都将输出重定向到终端,那么我不希望打印STDERR.

考虑以下示例(outerr.pl):

#!/usr/bin/perl

use strict;
use warnings;

print STDOUT "Hello standard output!\n";
print STDERR "Hello standard error\n" if ($someMagicalFlag);
exit 0
Run Code Online (Sandbox Code Playgroud)

现在考虑一下(这是我想要实现的):

bash $ outerr.pl
Hello standard output!
Run Code Online (Sandbox Code Playgroud)

但是,如果我重定向到一个文件,我想得到:

bash $ outerr.pl > /dev/null
Hello standard error
Run Code Online (Sandbox Code Playgroud)

和反过来相似:

bash $ outerr.pl 2> /dev/null
Hello standard output!
Run Code Online (Sandbox Code Playgroud)

如果我将两个/ err重定向到同一个文件,则只显示out:

bash $ outerr.pl > foo.txt 2>&1
bash $ cat foo.txt
Hello standard output!
Run Code Online (Sandbox Code Playgroud)

那么有没有办法评估/确定OUT和ERR是否指向相同的"事物"(描述符?)?

unix io perl stdout stderr

7
推荐指数
2
解决办法
7156
查看次数