Skip to content
File

Blob: src/workerd/api/node/tests/os-test.js

javascript54 lines
1// Copyright (c) 2025 Cloudflare, Inc.
2// Licensed under the Apache 2.0 license found in the LICENSE file or at:
3// https://opensource.org/licenses/Apache-2.0
4import os from 'node:os';
5import { strictEqual, deepStrictEqual, throws } from 'node:assert';
6 
7export const osTest = {
8 test() {
9 strictEqual(os.EOL, '\n');
10 strictEqual(os.devNull, '/dev/null');
11 strictEqual(os.availableParallelism(), 1);
12 strictEqual(os.arch(), 'x64');
13 deepStrictEqual(os.cpus(), []);
14 strictEqual(os.endianness(), 'LE');
15 strictEqual(os.freemem(), 0);
16 strictEqual(os.getPriority(), 0);
17 strictEqual(os.homedir(), '/tmp/');
18 strictEqual(os.hostname(), 'localhost');
19 deepStrictEqual(os.loadavg(), [0, 0, 0]);
20 strictEqual(os.machine(), 'x86_64');
21 deepStrictEqual(os.networkInterfaces(), {});
22 strictEqual(os.platform(), 'linux');
23 strictEqual(os.release(), '');
24 strictEqual(os.tmpdir(), '/tmp/');
25 strictEqual(os.totalmem(), 0);
26 strictEqual(os.type(), 'Linux');
27 strictEqual(os.uptime(), 0);
28 deepStrictEqual(os.userInfo(), {});
29 strictEqual(os.version(), '');
30 
31 // setPriority and getPriority are non-ops
32 os.setPriority(1, 2);
33 strictEqual(os.getPriority(1), 0);
34 throws(() => os.setPriority('a', 2), {
35 code: 'ERR_INVALID_ARG_TYPE',
36 });
37 throws(() => os.setPriority(1, 'a'), {
38 code: 'ERR_INVALID_ARG_TYPE',
39 });
40 throws(() => os.getPriority('a'), {
41 code: 'ERR_INVALID_ARG_TYPE',
42 });
43 throws(() => os.userInfo(1), {
44 code: 'ERR_INVALID_ARG_TYPE',
45 });
46 throws(() => os.userInfo({ encoding: 'bad encoding' }), {
47 code: 'ERR_INVALID_ARG_VALUE',
48 });
49 throws(() => os.userInfo({ encoding: 123 }), {
50 code: 'ERR_INVALID_ARG_VALUE',
51 });
52 },
53};