Spec as parser parameter
Signed-off-by: Fabio José <fabiojose@gmail.com>
This commit is contained in:
parent
232b39b5b3
commit
8915048791
|
@ -2,8 +2,8 @@ var Spec02 = require("../../specs/spec_0_2.js");
|
|||
|
||||
const spec02 = new Spec02();
|
||||
|
||||
function JSONParser() {
|
||||
|
||||
function JSONParser(_spec) {
|
||||
this.spec = (_spec) ? _spec : new Spec02();
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -35,10 +35,10 @@ function validate_and_parse_as_json(payload) {
|
|||
/*
|
||||
* Level 1 of validation: is that follow a spec?
|
||||
*/
|
||||
function validate_spec(payload) {
|
||||
function validate_spec(payload, spec) {
|
||||
|
||||
// is that follow spec 0.2?
|
||||
spec02.check(payload);
|
||||
// is that follow the spec?
|
||||
spec.check(payload);
|
||||
|
||||
return payload;
|
||||
}
|
||||
|
@ -49,7 +49,7 @@ JSONParser.prototype.parse = function(payload) {
|
|||
var valid0 = validate_and_parse_as_json(payload);
|
||||
|
||||
// Level 1 of validation: is that follow a spec?
|
||||
var valid1 = validate_spec(valid0);
|
||||
var valid1 = validate_spec(valid0, this.spec);
|
||||
|
||||
return valid1;
|
||||
}
|
||||
|
|
|
@ -97,7 +97,7 @@ describe("JSON Event Format Parser", () => {
|
|||
.data(data)
|
||||
.toString();
|
||||
|
||||
var parser = new Parser();
|
||||
var parser = new Parser(new Cloudevent.specs["0.2"]());
|
||||
|
||||
// act
|
||||
var actual = parser.parse(payload);
|
||||
|
|
Loading…
Reference in New Issue