1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-24 08:09:08 -05:00

fix(ext/node): implement os.machine (#21751)

This commit is contained in:
Divy Srivastava 2024-01-02 19:27:54 +05:30 committed by GitHub
parent 8e4feacd25
commit 9f7586a206
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 23 additions and 0 deletions

View file

@ -29,6 +29,17 @@ Deno.test({
}, },
}); });
Deno.test({
name: "os machine (arch)",
fn() {
if (Deno.build.arch == "aarch64") {
assertEquals(os.machine(), "arm64");
} else {
assertEquals(os.machine(), Deno.build.arch);
}
},
});
Deno.test({ Deno.test({
name: "home directory is a string", name: "home directory is a string",
fn() { fn() {

View file

@ -129,6 +129,8 @@ export function arch(): string {
(type as any)[Symbol.toPrimitive] = (): string => type(); (type as any)[Symbol.toPrimitive] = (): string => type();
// deno-lint-ignore no-explicit-any // deno-lint-ignore no-explicit-any
(uptime as any)[Symbol.toPrimitive] = (): number => uptime(); (uptime as any)[Symbol.toPrimitive] = (): number => uptime();
// deno-lint-ignore no-explicit-any
(machine as any)[Symbol.toPrimitive] = (): string => machine();
export function cpus(): CPUCoreInfo[] { export function cpus(): CPUCoreInfo[] {
return ops.op_cpus(); return ops.op_cpus();
@ -247,6 +249,15 @@ export function version(): string {
return Deno.osRelease(); return Deno.osRelease();
} }
/** Returns the machine type as a string */
export function machine(): string {
if (Deno.build.arch == "aarch64") {
return "arm64";
}
return Deno.build.arch;
}
/** Not yet implemented */ /** Not yet implemented */
export function setPriority(pid: number, priority?: number) { export function setPriority(pid: number, priority?: number) {
/* The node API has the 'pid' as the first parameter and as optional. /* The node API has the 'pid' as the first parameter and as optional.
@ -373,6 +384,7 @@ export default {
hostname, hostname,
loadavg, loadavg,
networkInterfaces, networkInterfaces,
machine,
platform, platform,
release, release,
setPriority, setPriority,