gpt4 book ai didi

C++ 为本地时间设置日期

转载 作者:行者123 更新时间:2023-11-30 02:21:12 26 4
gpt4 key购买 nike

我在 C++11 中有一段 C++ 代码,它使用 localtime 函数 ( doc ) 来获取时间。如果那天是我的生日,它会返回一条生日消息。

std::string message = getDailyMessage();

我现在想做一个单元测试,以确定代码是否在我生日那天输出正确的值,而不是在我生日那天输出正确的值。有没有办法在两个相邻调用之前以编程方式设置 localtime 返回的值?是否可以在不影响实际系统时间的情况下做到这一点?

setTime(NOT_BIRTHDAY);
EXPECT_STREQ(NOT_BIRTHDAY_MESSAGE, getDailyMessage());
setTime(BIRTHDAY);
EXPECT_STREQ(BIRTDAY_MESSAGE, getDailyMessage());

最佳答案

您可以让 getDailyMessage 通过参数获取时间。这使得单元测试变得轻而易举,并增加了在其他上下文中使用它的灵 active 。例如,您可以使用它来打印昨天的消息。

关于C++ 为本地时间设置日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48795960/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com