我有一个问题,如果我在没有--coverage选项的情况下运行我的测试,一切都会通过,但是一旦我jest使用该--coverage选项运行,我的一些测试就会失败。
这是日志:
Button › Primary button › should render a primary button
undefined:3:457: property missing ':'
at Object.it (src/components/Buttons/Button/Button.test.js:13:24)
at Promise.resolve.then.el (node_modules/p-map/index.js:46:16)
Run Code Online (Sandbox Code Playgroud)
和测试:
it('should render a primary button', () => {
const props = { primary: true };
const rendered = renderer.create(<Button { ...props }>Some Button</Button>).toJSON();
expect(rendered).toMatchSnapshot();
});
Run Code Online (Sandbox Code Playgroud)
失败的线路是 expect(rendered).toMatchSnapshot();
有人有什么想法吗?
我正在使用 Codeigniter 对我的数据库进行查询。代码如下:
$this->db->select("category.Name,
booking.Comment,
CASE WHEN amount > 0 THEN amount END AS PosAmount,
CASE WHEN amount < 0 THEN amount END AS NegAmount");
Run Code Online (Sandbox Code Playgroud)
但我总是得到一个
You have an error in your SQL syntax ... right syntax to use near
'WHEN amount > 0 THEN amount END AS PosAmount, `CASE` WHEN amount < 0
THEN amount' at line 1
Run Code Online (Sandbox Code Playgroud)
Codeigniter 正在逃避 CASE,但我不知道如何防止这种情况发生。
有任何想法吗?
我认为最好先向你展示他的查询:
SELECT
Positive.Amount AS PosAmount,
Negative.Amount AS NegAmount,
booking.Correction
FROM (booking)
LEFT JOIN ( SELECT ID, Amount FROM booking WHERE Amount < 0 )
AS Negative ON booking.ID = Negative.ID
LEFT JOIN ( SELECT ID, Amount FROM booking WHERE Amount > 0 )
AS Positive ON booking.ID = Positive.ID
Run Code Online (Sandbox Code Playgroud)
我想在这里实现的是以下内容.我希望每个预订的金额取决于它在不同列中是正数还是负数.这可能是另一种更便宜的方式吗?我的意思是加入一张桌子本身不是最好的方法,可以吗?
该表看起来像:
而期望的结果是这样的:
提前致谢!