2017-09-21 10:07:56 -07:00
|
|
|
// Flags: --expose-internals
|
2017-07-17 10:29:42 -07:00
|
|
|
'use strict';
|
|
|
|
|
|
|
|
const common = require('../common');
|
|
|
|
const {
|
|
|
|
assertIsObject,
|
|
|
|
assertWithinRange,
|
|
|
|
} = require('internal/http2/util');
|
|
|
|
|
|
|
|
[
|
|
|
|
undefined,
|
|
|
|
{},
|
|
|
|
Object.create(null),
|
|
|
|
new Date(),
|
|
|
|
new (class Foo {})()
|
|
|
|
].forEach((i) => {
|
2018-02-09 02:32:04 +01:00
|
|
|
assertIsObject(i, 'foo', 'Object');
|
2017-07-17 10:29:42 -07:00
|
|
|
});
|
|
|
|
|
|
|
|
[
|
|
|
|
1,
|
|
|
|
false,
|
|
|
|
'hello',
|
|
|
|
NaN,
|
|
|
|
Infinity,
|
|
|
|
[],
|
|
|
|
[{}]
|
|
|
|
].forEach((i) => {
|
2017-12-06 22:16:44 +05:30
|
|
|
common.expectsError(() => assertIsObject(i, 'foo', 'Object'),
|
|
|
|
{
|
|
|
|
code: 'ERR_INVALID_ARG_TYPE',
|
|
|
|
message: /^The "foo" argument must be of type Object$/
|
|
|
|
});
|
2017-07-17 10:29:42 -07:00
|
|
|
});
|
|
|
|
|
2018-02-09 02:32:04 +01:00
|
|
|
assertWithinRange('foo', 1, 0, 2);
|
2017-07-17 10:29:42 -07:00
|
|
|
|
2017-12-06 22:16:44 +05:30
|
|
|
common.expectsError(() => assertWithinRange('foo', 1, 2, 3),
|
|
|
|
{
|
|
|
|
code: 'ERR_HTTP2_INVALID_SETTING_VALUE',
|
|
|
|
message: /^Invalid value for setting "foo": 1$/
|
|
|
|
});
|