File: main.js

package info (click to toggle)
node-rollup 2.38.4-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 42,968 kB
  • sloc: javascript: 88,384; makefile: 10
file content (41 lines) | stat: -rw-r--r-- 846 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
function assertThrows(callback, description) {
	let thrown = false;
	try {
		callback();
	} catch (err) {
		thrown = true;
	}
	assert.ok(thrown, description);
}

assertThrows(() => {
	const obj = { first: () => {} };
	obj[globalOther]();
}, 'unknown missing property');

assertThrows(() => {
	const obj = { first: () => {} };
	delete obj[globalFirst];
	obj.first();
}, 'known property that might be missing');

assertThrows(() => {
	const obj = { first: () => {} };
	delete obj.first;
	obj.first.second();
}, 'known property that is missing');

assertThrows(() => {
	const obj = { set first(value) {} };
	obj.first.second();
}, 'property without getter');

assertThrows(() => {
	const obj = {};
	obj.hasOwnProperty.second('first');
}, 'sub-property of object method');

assertThrows(() => {
	const obj = {};
	obj.first();
}, 'missing property');