當我進行API調用時,我想檢查返回的JSON的結果。我可以看到正文和一些靜態數據正在被正確檢查,但是無論我在哪裏使用正則表達式,事情都被打破了。這是我的測試的示例:摩卡Supertest json響應正文模式匹配問題
describe('get user', function() {
it('should return 204 with expected JSON', function(done) {
oauth.passwordToken({
'username': config.username,
'password': config.password,
'client_id': config.client_id,
'client_secret': config.client_secret,
'grant_type': 'password'
}, function(body) {
request(config.api_endpoint)
.get('/users/me')
.set('authorization', 'Bearer ' + body.access_token)
.expect(200)
.expect({
"id": /\d{10}/,
"email": "[email protected]",
"registered": /./,
"first_name": "",
"last_name": ""
})
.end(function(err, res) {
if (err) return done(err);
done();
});
});
});
});
這裏是輸出的圖像:
上使用正則表達式模式匹配的JSON體響應任何想法?
你爲什麼不抓住你想要的字段的字段檢查回調('var id = req.body.id'),然後使用斷言庫運行正則表達式檢查? –
每個字段的檢查也更具可讀性。 –