Skip to content

Commit 0e330d8

Browse files
authored
Merge pull request #9 from LearningLocker/schema-not-object-tests
Adds non-object tests for schemas.
2 parents 2b4b2c5 + 5092d6a commit 0e330d8

38 files changed

Lines changed: 81 additions & 15 deletions

dist/maps.js

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
"use strict";
2+
var rulr_1 = require("rulr");
23
var factory_1 = require("./factory");
3-
var map = function (keyRule, valueRule) { return function (data, path) {
4-
var keys = Object.keys(data);
5-
return keys.reduce(function (warnings, key) {
6-
return warnings.concat(keyRule(key, path)).concat(valueRule(data[key], path.concat(key)));
7-
}, []);
8-
}; };
4+
var map = function (keyRule, valueRule) {
5+
return rulr_1.first(rulr_1.checkType(Object), function (data, path) {
6+
var keys = Object.keys(data);
7+
return keys.reduce(function (warnings, key) {
8+
return warnings.concat(keyRule(key, path)).concat(valueRule(data[key], path.concat(key)));
9+
}, []);
10+
});
11+
};
912
exports.extensions = map(factory_1.iri, factory_1.anyValue);
1013
exports.languageMap = map(factory_1.language, factory_1.stringValue);

dist/tests/helpers/objectTypeFactory.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
"use strict";
22
require("mocha");
3+
var itsInvalid_1 = require("../itsInvalid");
34
Object.defineProperty(exports, "__esModule", { value: true });
45
exports.default = function (types, defaultType, test) {
6+
itsInvalid_1.default(10, 'not an object', test);
57
Object.keys(types).forEach(function (type) {
68
describe("Object Type: " + type, function () {
79
types[type](function (data, valid) {

dist/tests/maps/extensions.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ var validData = {
66
};
77
Object.defineProperty(exports, "__esModule", { value: true });
88
exports.default = function (test) {
9+
itsInvalid_1.default(10, 'not an object', test);
910
itsInvalid_1.default({
1011
http: 'test'
1112
}, 'containing invalid keys', test);

dist/tests/maps/languageMap.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ var validData = {
66
};
77
Object.defineProperty(exports, "__esModule", { value: true });
88
exports.default = function (test) {
9+
itsInvalid_1.default(10, 'not an object', test);
910
itsInvalid_1.default({
1011
'-': 'test'
1112
}, 'containing invalid keys', test);

dist/tests/schemaRules/account.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
"use strict";
22
var describeRequiredProp_1 = require("../describeRequiredProp");
3+
var itsInvalid_1 = require("../itsInvalid");
34
var factory_1 = require("../factory");
45
var validData = {
56
homePage: 'http://www.example.com',
67
name: '123',
78
};
89
Object.defineProperty(exports, "__esModule", { value: true });
910
exports.default = function (test) {
11+
itsInvalid_1.default(10, 'not an object', test);
1012
describeRequiredProp_1.default('homePage', factory_1.iri, validData, test);
1113
describeRequiredProp_1.default('name', factory_1.stringValue, validData, test);
1214
};

dist/tests/schemaRules/activity.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
"use strict";
22
var describeRequiredProp_1 = require("../describeRequiredProp");
33
var describeOptionalProp_1 = require("../describeOptionalProp");
4+
var itsInvalid_1 = require("../itsInvalid");
45
var factory_1 = require("../factory");
56
var validData = {
67
objectType: 'Activity',
@@ -9,6 +10,7 @@ var validData = {
910
};
1011
Object.defineProperty(exports, "__esModule", { value: true });
1112
exports.default = function (test) {
13+
itsInvalid_1.default(10, 'not an object', test);
1214
describeRequiredProp_1.default('id', factory_1.iri, validData, test);
1315
describeOptionalProp_1.default('definition', factory_1.definition, validData, test);
1416
};

dist/tests/schemaRules/attachment.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
"use strict";
22
var describeRequiredProp_1 = require("../describeRequiredProp");
33
var describeOptionalProp_1 = require("../describeOptionalProp");
4+
var itsInvalid_1 = require("../itsInvalid");
45
var factory_1 = require("../factory");
56
var validData = {
67
usageType: 'http://www.example.com',
@@ -13,6 +14,7 @@ var validData = {
1314
};
1415
Object.defineProperty(exports, "__esModule", { value: true });
1516
exports.default = function (test) {
17+
itsInvalid_1.default(10, 'not an object', test);
1618
describeRequiredProp_1.default('usageType', factory_1.iri, validData, test);
1719
describeRequiredProp_1.default('display', factory_1.languageMap, validData, test);
1820
describeOptionalProp_1.default('description', factory_1.languageMap, validData, test);

dist/tests/schemaRules/authority.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ var agentMember = {
88
};
99
Object.defineProperty(exports, "__esModule", { value: true });
1010
exports.default = function (test) {
11+
itsInvalid_1.default(10, 'not an object', test);
1112
itsInvalid_1.default({
1213
objectType: 'Group',
1314
member: [],

dist/tests/schemaRules/context.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
"use strict";
22
var describeOptionalProp_1 = require("../describeOptionalProp");
3+
var itsInvalid_1 = require("../itsInvalid");
34
var factory_1 = require("../factory");
45
var validData = {
56
registration: 'd0310d1c-65fe-4b59-9d4f-c56de054243a',
@@ -23,6 +24,7 @@ var validData = {
2324
};
2425
Object.defineProperty(exports, "__esModule", { value: true });
2526
exports.default = function (test) {
27+
itsInvalid_1.default(10, 'not an object', test);
2628
describeOptionalProp_1.default('registration', factory_1.uuid, validData, test);
2729
describeOptionalProp_1.default('instructor', factory_1.actor, validData, test);
2830
describeOptionalProp_1.default('team', factory_1.group, validData, test);

dist/tests/schemaRules/contextActivities.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
"use strict";
22
var describeOptionalProp_1 = require("../describeOptionalProp");
3+
var itsInvalid_1 = require("../itsInvalid");
34
var collection_1 = require("../helpers/collection");
45
var factory_1 = require("../factory");
56
var validData = {
@@ -11,6 +12,7 @@ var validData = {
1112
var activities = collection_1.default(factory_1.activity);
1213
Object.defineProperty(exports, "__esModule", { value: true });
1314
exports.default = function (test) {
15+
itsInvalid_1.default(10, 'not an object', test);
1416
describeOptionalProp_1.default('parent', activities, validData, test);
1517
describeOptionalProp_1.default('category', activities, validData, test);
1618
describeOptionalProp_1.default('grouping', activities, validData, test);

0 commit comments

Comments
 (0)