Wenn ich einen API-Aufruf mache, möchte ich das zurückgegebene JSON für seine Ergebnisse überprüfen. Ich kann den Körper sehen und einige der statischen Daten werden korrekt überprüft, aber wo immer ich regulären Ausdruck verwende, sind die Dinge kaputt. Hier ist ein Beispiel von meinem Test:Mocha Supertest JSON Antwort Körpermuster passendes Problem
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();
});
});
});
});
Hier wird ein Bild des Ausgangs:
Irgendwelche Ideen zur Verwendung von regulären Ausdrücken für Muster Anpassung der json Körperreaktion?
Warum nicht Sie die Felder, die Sie wollen, greifen keine Rolle zu checken Sie den Callback ein ('var id = req.body.id') und führen Sie Ihre regulären Ausdrucksprüfungen mit einer Assertion Library durch? –
Überprüfung pro Feld ist auch lesbarer. –