草庐IT

override_tests

全部标签

C++/COM/代理 Dll : method override/method forwarding (COM implementation inheritance)

你好,祝你有美好的一天。情况:出于某种原因,有时我会遇到需要覆盖COM接口(interface)的一个或两个方法(用于一些没有源代码的旧应用程序)的情况,这通常与Direct3D/DirectInput相关(即它是通过调用DLL方法而不是CoCreateInstance创建)。通常我通过编写一个代理DLL来处理这种情况,该DLL覆盖创建我需要“修改”的接口(interface)的方法,并用我自己的接口(interface)替换原始接口(interface)。通常这是使一些较旧的应用程序正常工作而不会崩溃/伪影所必需的。编译器:我在Windows机器上使用VisualStudioExpr

c++ - 如何使用 Boost.Test 库处理整数除以零异常?

我正在使用Boost.Test针对一些旧的C数学库编写单元测试。已知的测试功能之一会引发某些指定输入的整数除以零系统异常。假设这是期望的行为,我想为这种情况编写负面测试。BOOST_REQUIRE_THROW(statement,exception);对我不起作用,因为它不是C++样式的异常(此宏在内部使用try{}catch{})。当我预计系统级别会出现故障时,正确的处理方法是什么? 最佳答案 因为它是Windows,我建议查看_set_se_translator()窗口API。它允许使用C++catch处理结构化异常。还有其他可

c# - 来自 C# : why do I have to override new/delete? 的 mingw DLL

我正在尝试从Windows10上的C#调用最小的C函数。我使用mingw/g++将C代码编译成.dll事实证明,我必须定义opteratornew[]或使用VisualStudio编译.dll。否则我的C#程序会因以下错误而崩溃:程序“[14740]Test.exe”已退出,代码为-1073741819(0xc0000005)“访问冲突”。我真的很想了解这里究竟发生了什么,以及我如何在不覆盖所有新/删除运算符但仍然使用mingw的情况下解决这个问题。这是重现错误的最小示例,包括解决方法(如果定义了AddNewOperator,operatornew[]将被定义并且生成的.dll将正常工

c++ - CoInitializeEx 用于 boost::test::unit_test

前几天,我决定需要了解Windows平台上C++的测试驱动开发(使用VisualStudio2010Premium)。在决定试用boost的单元测试框架之前,我环顾四周。我应该说我选择了boostpro.com的版本(如果我没记错的话,当前版本是1.44)。这有一个静态库的构建,所以我不在我的测试中使用DLL。Boost的单元测试文档谈到将代码与测试套件分开,这似乎很合理。但随后您必须处理从现在独立的测试套件项目中引用代码的问题。所以我有一个要测试的库项目(但我仍然不确定如何编写可以引用.exe项目的测试...)所以我在我的解决方案中创建了一个单独的项目,称为单元测试。我添加了以下代码

windows - 如何在 cmake 中使用 add_test 传递 ${CTEST_CONFIGURATION_TYPE}

我似乎无法弄清楚如何在cmake中使用add_test传递${CTEST_CONFIGURATION_TYPE}而无需CMake添加额外的转义字符。我目前正在使用cmake生成VS项目文件并设置RUNTIME_OUTPUT_DIRECTORY并且需要使用此目录+配置作为一些测试的工作目录,因为它们依赖于其他构建的可执行文件。我试过用add_test(NAMEtestWORKING_DIRECTORY"${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/\${CTEST_CONFIGURATION_TYPE}"COMMANDtest${TEST_ARGS})这正确地找到了

windows - 为什么运行 npm test 结果是 : '.' is not recognized as an internal or external command, 可运行程序或批处理文件。?

我安装了以下内容:Windows10Git庆典(mingw64)Node.jsv8.7.0npm版本5.4.2包:柴4.4.1Mocha3.5.0我有一个示例mocha测试,它在实际运行时总是会通过。我在shell中运行的命令:npmtest输出:./node_modules/mocha/bin/_mocha'.'isnotrecognizedasaninternalorexternalcommand,operableprogramorbatchfile.npmERR!Testfailed.Seeaboveformoredetails.出于某种原因,我能够直接运行此命令:./node_

windows - 为什么 perl testing dir -d ""在 Windows 上返回 true?错误与否?

对于在Windows上测试空格字符串目录时perl返回true有什么解释吗?在Windows7上运行:perl-e"printqq{found\n}if-dqq{}"你会得到输出:found但相同的perl代码在Linux上返回false。在Windows上的perl5.8和strawberryperl5.18上测试这是一个错误还是有一个非常规的推理? 最佳答案 在Windows下,任何在内部尝试测试文件或目录是否存在的perl操作都使用Win32函数CreateFile。在Windows下,以空格结尾的文件名是不合法的(尽管没有明

python - 通过 visual studio 代码的 python 扩展将 py.test 与 pytorch 项目一起使用时出现问题

我正在使用visualstudio代码开发一个pytorch项目并尝试使用py.test。但是,当尝试使用vs-code扩展发现(或运行)测试时,我在导入torch时遇到错误(请参阅日志)。当我从终端运行pytest时,一切正常。问题:与我自己运行pytest相比,VS-code有何不同?我该如何解决这个问题?谢谢配置和更多信息Win10,自定义conda环境,python=3.7,pytest=3.8,pytorch=0.4.1[cuda92],vscode1.27.2当我删除一些测试以便所有剩余的测试不调用任何torch代码时,一切正常(即pytest配置insidevs-代码应该

c++ - 使用 windowsAPI 防止其他窗口使用 "overriding"热键

我正在尝试通过制作一个程序来学习WindowsAPI的基础知识,当按下PRINTSCREEN按钮时,该程序将保存一个.jpeg并立即将其上传到imgur。目前,当我玩大多数游戏或只是浏览桌面时,此程序运行良好。但是,某些游戏似乎阻止了我使用此热键的能力。(黑暗之魂2专门这样做。)我目前使用RegisterHotKey(NULL,1,0,VK_SNAPSHOT)将按钮分配给我的程序。但是,在某些游戏运行时,按键按下时,上面的RegisterHotKey和下面的GetAsyncKeyState都不工作。GetAsyncKeyState(VK_SNAPSHOT)(我不想使用GetAsyncK

【fabric2.4】fabric2.4网络搭建、使用test-network测试,安装链码

准备空白的ubuntu,从0开始搭建文章目录一、准备工作二、使用步骤1.启动网络和通道2.安装链码总结一、准备工作安装相关程序,可以使用自动搭建HyperledgerFabric网络脚本中间可能报错,需要手动安装一些依赖不需要在虚拟机中开发的,可以不安装nodejsnodejs-legacynpm注意一下/home的路径,可能需要修改一下脚本中的路径信息这一步要是有问题,可以从其他途径获取bootsrap.sh并执行,自动拉取镜像sudocurl-sShttps://raw.githubusercontent.com/hyperledger/fabric/master/scripts/boot