问题列表 - 第4958页

在PHPUnit中测试具有依赖项的对象

对于组成另一个对象作为其实现的一部分的对象,编写单元测试的最佳方法是什么,只有主要对象才会被测试?琐碎的例子:

class myObj { 
    public function doSomethingWhichIsLogged()
    {
        // ...
        $logger = new logger('/tmp/log.txt');
        $logger->info('some message');
        // ...
    }
}
Run Code Online (Sandbox Code Playgroud)

我知道可以设计对象以便可以注入logger对象依赖项并因此在单元测试中进行模拟,但情况并非总是如此 - 在更复杂的场景中,您需要组合其他对象或调用静态方法.

由于我们不想测试logger对象,只有myObj,我们如何进行?我们用测试脚本创建一个stubbed"double"吗?就像是:

class logger
{
    public function __construct($filepath) {}
    public function info($message) {}
}

class TestMyObj extends PHPUnit_Framework_TestCase 
{
    // ...
}
Run Code Online (Sandbox Code Playgroud)

这对于小对象来说似乎是可行的,但对于更复杂的API而言,这将是一个痛苦,其中SUT依赖于返回值.另外,如果你想测试对依赖项对象的调用,你可以使用模拟对象吗?有没有办法模拟由SUT实例化的对象而不是传入?

我已经阅读了关于模拟的手册页,但它似乎并没有涵盖这种依赖是由组合而不是聚合的情况.你怎么做呢?

php phpunit unit-testing qa

9
推荐指数
2
解决办法
6205
查看次数

使用python进行Kerberos身份验证

我需要在python中编写一个脚本来检查一个受kerberos保护的网页.有没有可能从python中做到这一点,以及如何?该脚本将部署在安装了python 2.4.something的linux环境中.

dertoni

python security kerberos

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

为什么_not_使用html表进行布局

在过去的几天里,我一直在思考这个问题.我正在编写一个Web应用程序(实际上是在现有的广泛应用程序中添加一个屏幕).我知道使用"表格"进行布局是一个很大的禁忌.但在这个应用程序中,所有页面都使用表格进行布局.我决定使用div来做我的新页面.但我遇到了2个障碍.

  1. 我需要做的很多布局工作已经在其他页面上完成了,如果我改用div,我就无法重用其中任何一个(CSS和JS以及那种东西).这导致了更多的工作并推迟了我的完成日期.

  2. 布局的一些更复杂的部分使用div很难做到,使用表格很容易.也许它只是我"老派",因为我不是一个web/html有点人(我过去了).

那么,为什么我不能使用表格呢?我不是想要争论,只是想看看除了"正确的事情"类型之外是否有任何引人注目的论点.我知道这是正确的做法.我想知道为什么?

html layout html-table

10
推荐指数
3
解决办法
1346
查看次数

是否可以在sql server 2005中恢复Sql Server 2008备份

是否可以将SQL Server 2008数据库的备份还原到SQL Server 2005的实例上?

我需要处理sql server 2008中数据库备份的示例应用程序.但是我将无法安装2008.那么有可能在2005年恢复备份吗?

sql sql-server-2005 sql-server-2008

26
推荐指数
4
解决办法
6万
查看次数

你如何从数据库中查询1和0的字符数组?

假设你有一长串的字符数为1或0,有点像bitvector,但在数据库列上.您如何查询知道设置/未设置的值?假设您需要知道char 500和char 1500是否为"true".

database arrays bitvector

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

设计用于实时采集和"控制"的系统架构

要求的简要说明

(这里有很多好的答案,感谢所有人,如果我得到这个飞行,我会更新).

探测器沿轨道运行,实时测量若干不同的物理参数(确定性),作为曲线距离的函数.用户可以在此过程中单击按钮以"标记"航点,然后使用GUI输入每个航点的详细信息(在人工时间,但数据采集继续进行).

在此之后,系统对获取的数据执行一系列计算/过滤/修改,同时考虑为每个航路点输入的约束.该过程的输出是一系列校正,也是曲线距离的函数.

该过程的第三部分涉及再次沿轨道运行,但这次将校正写入校正轨道的物理系统(仍然是曲线距离的函数).

我目前对您的输入/评论/警告的想法

我想确定的是我是否可以用PC + FPGA来做到这一点.FPGA会进行"数据采集",我会在PC上使用C#从缓冲区读取数据.航点信息可以通过WPF/Winforms应用程序输入,并存储在数据库/平面文件/任何待处理的"处理"中.

对于处理,我会使用F#.

FPGA将用于将信息"写入"物理机器.

我目前可以预见的一个问题是,处理算法是否需要采样频率,这使得缓冲的数据量太大.这意味着将一些处理卸载到FPGA - 至少是不需要用户输入的位.不幸的是,唯一的预处理算法是卡尔曼滤波器,用我用Google搜索的方法很难用FPGA实现.

我非常感谢您提供的任何反馈意见.

更新(此处及时添加额外信息)

在卡尔曼滤波器的入口处,我们每1ms看一次.但是在卡尔曼滤波器的另一侧,我们将每隔1米采样一次,我们所讨论的速度大约为2秒.

所以我想更准确的问题是:

  1. 实施卡尔曼滤波器在FPGA上- 似乎 认为 这是可能的,但我不明白的差不多了这两门课都能够制定出多么可能它.

  2. 我也不确定卡尔曼的FPGA实现是否能够每1ms循环一次 - 尽管我认为它应该没有问题.

  3. 如果我理解正确的话,FPGA就没有内存负载.对于该过程的第三部分,我将发送(大约)4 x 400双打数组用作查找表,这是否可行?

  4. 此外,在两个进程之间进行交换(读/写数据)意味着每次重新编程FPGA,还是可以指示在两者之间切换?(也许只能并行运行并忽略其中一个).

  5. 我见过的另一个选择是使用Avalda FPGA Developer将F#编译为VHDL ,我想我很快就会尝试.

architecture f# real-time fpga

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

将DataTable转换为通用List?

    public static IList<T> ConvertTo<T>(DataTable table)
    {
        if (table == null)
        {
            return null;
        }

        List<DataRow> rows = new List<DataRow>();

        foreach (DataRow row in table.Rows)
        {
            rows.Add(row);
        }

        return ConvertTo<T>(rows);
    }

    public static T ConvertItem<T>(DataTable table)
    {
        T obj = default(T);
        if (table != null && table.Rows.Count > 0)
        {
            obj = CreateItem<T>(table.Rows[0]);
        }
        return obj;
    }


    public static T CreateItem<T>(DataRow row)
    {
        T obj = default(T);
        if (row != null)
        {
            obj = Activator.CreateInstance<T>();
            Type entityType = typeof(T);
            PropertyInfo[] properties …
Run Code Online (Sandbox Code Playgroud)

.net c# generics datatable

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

TSQL命令连接到另一台服务器(SQL Server 2005)

是否有TSQL命令连接到另一台服务器?

或者当您在查询窗口中时,连接到另一台服务器并显示查询窗口的键盘快捷键是什么?

我已经看到Ctrl + N 在某些屏幕中弹出了" 连接到服务器"对话框,但是当我在查询窗口中并按下Ctrl + N时,它只会打开另一个查询窗口.

USE命令允许您连接到当前服务器上的其他数据库,但是有一个命令可以让您连接到另一台服务器吗?

我正在使用SQL Server 2005.

sql t-sql sql-server

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

JavaScript拖放照片缩放器裁剪器

我在页面上有一个任意大小的图像.作为输出,我需要一个固定大小的图像,比如90x120px.我希望用户通过拖放90x120px '窗口' 后面的大图像来选择图像区域.窗口将指定生成的图像.这样的事情是在Facebook图片上传时实现的.

我知道如何在获得裁剪坐标后立即处理后端的图像,没问题.我想我需要在隐藏的表单字段中发布裁剪坐标.用户的拖放操作应该让JavaScript填充字段,对吧?我是JS的新手,所以一步一步的指南会有很大帮助.

javascript resize photo image crop

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

Linux:计算给定文件夹和内容的单个哈希值?

当然必须有办法轻松做到这一点!

我已经尝试了Linux等命令行应用程序sha1sum,md5sum但它们似乎只能计算单个文件的哈希值并输出一个哈希值列表,每个文件一个.

我需要为文件夹的整个内容(而不仅仅是文件名)生成单个哈希.

我想做点什么

sha1sum /folder/of/stuff > singlehashvalue
Run Code Online (Sandbox Code Playgroud)

编辑:澄清一下,我的文件位于目录树的多个级别,它们并非都位于同一个根文件夹中.

linux bash hash

75
推荐指数
7
解决办法
4万
查看次数