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
24 lines
743 B
JavaScript
4 years ago
|
"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
|
||
|
|