e988829d558ad08bef56fe88c5e1acc54d8e8b97
[platform/framework/web/crosswalk-tizen.git] /
1 'use strict';
2
3 module.exports = function (t, a) {
4         a(t({}), true, "Empty {} is plain object");
5         a(t({ a: true }), true, "{} with property is plain object");
6         a(t({ prototype: 1, constructor: 2, __proto__:  3 }), true,
7                 "{} with any property keys is plain object");
8         a(t(null), false, "Null is not plain object");
9         a(t('string'), false, "Primitive is not plain object");
10         a(t(function () {}), false, "Function is not plain object");
11         a(t(Object.create({})), false,
12                 "Object whose prototype is not Object.prototype is not plain object");
13         a(t(Object.create(Object.prototype)), true,
14                 "Object whose prototype is Object.prototype is plain object");
15         a(t(Object.create(null)), true,
16                 "Object whose prototype is null is plain object");
17         a(t(Object.prototype), false, "Object.prototype");
18 };