You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

24 lines
743 B
JavaScript

"use strict";
const matchVersionedSpecial = require("./");
const virtualProperty = require("@validatem/virtual-property");
let matchVirtualProperty = matchVersionedSpecial({
markerProperty: "___validatem_isVirtualProperty",
versionProperty: "___validatem_virtualPropertyVersion",
friendlyName: "a virtual property",
expectedVersions: [ 1 ]
});
let propertyA = "foo";
let propertyB = virtualProperty("bar");
// This one is a version we don't recognize
let propertyC = virtualProperty("baz");
propertyC.___validatem_virtualPropertyVersion = -2;
console.log(matchVirtualProperty(propertyA)); // false
console.log(matchVirtualProperty(propertyB)); // true
console.log(matchVirtualProperty(propertyC)); // Produces version mismatch error