玩笑和反应代码测试的新手。我正在测试一个文件,该文件从react-native-base64导入base64并解码从useEffect中的后端系统获取的值。下面是示例代码。
import base64 from "react-native-base64";
const xyzWork = async () => {
const value = await - fetch data from backend
const decodedValue = base64.decode(value);
...
...
...
}
useEffect(() => {
xyzWork();
}, []);
return <div><SomeComponent /></div>;
Run Code Online (Sandbox Code Playgroud)
我在使用笑话测试此代码时遇到困难。我尝试了多种方法来测试相同的结果,但由于多个错误而失败。
有些方法,以同样的方式导入base64并像这样模拟。
base64.decode = jest.fn(()=> "testParsedValue");
尝试模拟整个库本身,const mockedLib = jest.mock("react-native-base64", () => jest.fn());然后模拟该变量的 base64,但似乎没有任何效果。
任何帮助,将不胜感激!谢谢!
我刚开始学习perl,我知道,常量在perl中被视为子例程。我不知道为什么为什么每次使用常量时都使用常数是一个好习惯,而CPU需要使用堆栈/跳转指令?
也许这个问题可以很快得到解答。我正在努力在步骤函数中添加重试机制。我想以 1 小时左右的间隔继续重试失败的活动 24 小时。
我在这里详细介绍了“错误后重试”部分: https: //docs.aws.amazon.com/step-functions/latest/dg/concepts-error-handling.html 它说“乘数每次尝试期间重试间隔都会增加(默认为 2.0)。” 并且还给出了 3 秒后第一次重试和 4.5 秒后下一次重试的示例,因为 BackoffRate 为 1.5。
那么这不是指数退避吗?因为,在同一页面上的“使用重试处理失败”部分下,它表示退避将以指数方式应用。
我正在触发一个使用 PERCENTILE_CONT() 函数的查询,如下所示:
select .....
PERCENTILE_CONT(0.90) within group (order by END_DATE-START_DATE)
from ....
where .....
;
Run Code Online (Sandbox Code Playgroud)
现在,当我从 Oracle DB 中的 SQLDeveloper 触发该查询时,该查询完全可以正常工作,但由于某种原因,我需要使用 RedShift 数据库,当我在其中触发上述查询时,它会抛出如下错误:
ERROR: function percentile_cont(interval, numeric) does not exist
Hint: No function matches the given name and argument types. You may need to add explicit type casts.`
Run Code Online (Sandbox Code Playgroud)
正如建议的那样,我尝试使用类型转换为 DECIMAL 和 INTEGER 类型,但出现了相同的错误。
我搜索了文档,但也无法从那里找到解决方案。有什么想法吗,为什么?
PS:无法放置标签 PERCENTILE_CONT,因为它的声誉较低。
constants ×1
function ×1
javascript ×1
jestjs ×1
perl ×1
reactjs ×1
sql ×1
subroutine ×1
ts-jest ×1
unit-testing ×1