mirror of
https://github.com/denoland/deno.git
synced 2024-12-24 08:09:08 -05:00
BREAKING: Use LLVM target triple for Deno.build (#4948)
Deno.build.os values have changed to correspond to standard LLVM target triples "win" -> "windows" "mac" -> "darwin"
This commit is contained in:
parent
f7ab19b1b7
commit
e0ca60e770
50 changed files with 165 additions and 188 deletions
|
@ -20,6 +20,11 @@ fn main() {
|
|||
deno_typescript::ts_version()
|
||||
);
|
||||
|
||||
println!(
|
||||
"cargo:rustc-env=TARGET={}",
|
||||
std::env::var("TARGET").unwrap()
|
||||
);
|
||||
|
||||
let extern_crate_modules = include_crate_modules![deno_core];
|
||||
|
||||
// The generation of snapshots is slow and often unnecessary. Until we figure
|
||||
|
|
|
@ -1,24 +1,19 @@
|
|||
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
|
||||
|
||||
export type OperatingSystem = "mac" | "win" | "linux";
|
||||
|
||||
export type Arch = "x64" | "arm64";
|
||||
|
||||
// Do not add unsupported platforms.
|
||||
export interface BuildInfo {
|
||||
arch: Arch;
|
||||
|
||||
os: OperatingSystem;
|
||||
}
|
||||
|
||||
export const build: BuildInfo = {
|
||||
arch: "" as Arch,
|
||||
os: "" as OperatingSystem,
|
||||
export const build = {
|
||||
target: "unknown",
|
||||
arch: "unknown",
|
||||
os: "unknown",
|
||||
vendor: "unknown",
|
||||
env: undefined as string | undefined,
|
||||
};
|
||||
|
||||
export function setBuildInfo(os: OperatingSystem, arch: Arch): void {
|
||||
build.os = os;
|
||||
export function setBuildInfo(target: string): void {
|
||||
const [arch, vendor, os, env] = target.split("-", 4);
|
||||
build.target = target;
|
||||
build.arch = arch;
|
||||
|
||||
build.vendor = vendor;
|
||||
build.os = os;
|
||||
build.env = env;
|
||||
Object.freeze(build);
|
||||
}
|
||||
|
|
|
@ -8,7 +8,7 @@ export {
|
|||
writeAll,
|
||||
writeAllSync,
|
||||
} from "./buffer.ts";
|
||||
export { build, OperatingSystem, Arch } from "./build.ts";
|
||||
export { build } from "./build.ts";
|
||||
export { chmodSync, chmod } from "./ops/fs/chmod.ts";
|
||||
export { chownSync, chown } from "./ops/fs/chown.ts";
|
||||
export { transpileOnly, compile, bundle } from "./compiler/api.ts";
|
||||
|
|
26
cli/js/lib.deno.ns.d.ts
vendored
26
cli/js/lib.deno.ns.d.ts
vendored
|
@ -40,7 +40,7 @@ declare namespace Deno {
|
|||
*
|
||||
* Deno.test({
|
||||
* name: "example ignored test",
|
||||
* ignore: Deno.build.os === "win"
|
||||
* ignore: Deno.build.os === "windows"
|
||||
* fn(): void {
|
||||
* // This test is ignored only on Windows machines
|
||||
* },
|
||||
|
@ -2365,19 +2365,19 @@ declare namespace Deno {
|
|||
*/
|
||||
export function inspect(value: unknown, options?: InspectOptions): string;
|
||||
|
||||
export type OperatingSystem = "mac" | "win" | "linux";
|
||||
|
||||
export type Arch = "x64" | "arm64";
|
||||
|
||||
interface BuildInfo {
|
||||
/** The CPU architecture. */
|
||||
arch: Arch;
|
||||
/** The operating system. */
|
||||
os: OperatingSystem;
|
||||
}
|
||||
|
||||
/** Build related information. */
|
||||
export const build: BuildInfo;
|
||||
export const build: {
|
||||
/** The LLVM target triple */
|
||||
target: string;
|
||||
/** Instruction set architecture */
|
||||
arch: "x86_64";
|
||||
/** Operating system */
|
||||
os: "darwin" | "linux" | "windows";
|
||||
/** Computer vendor */
|
||||
vendor: string;
|
||||
/** Optional environment */
|
||||
env?: string;
|
||||
};
|
||||
|
||||
interface Version {
|
||||
deno: string;
|
||||
|
|
|
@ -45,7 +45,7 @@ export interface StatResponse {
|
|||
|
||||
// @internal
|
||||
export function parseFileInfo(response: StatResponse): FileInfo {
|
||||
const isUnix = build.os === "mac" || build.os === "linux";
|
||||
const isUnix = build.os === "darwin" || build.os === "linux";
|
||||
return {
|
||||
isFile: response.isFile,
|
||||
isDirectory: response.isDirectory,
|
||||
|
|
|
@ -8,7 +8,7 @@ export function symlinkSync(
|
|||
newpath: string,
|
||||
type?: string
|
||||
): void {
|
||||
if (build.os === "win" && type) {
|
||||
if (build.os === "windows" && type) {
|
||||
return util.notImplemented();
|
||||
}
|
||||
sendSync("op_symlink", { oldpath, newpath });
|
||||
|
@ -19,7 +19,7 @@ export async function symlink(
|
|||
newpath: string,
|
||||
type?: string
|
||||
): Promise<void> {
|
||||
if (build.os === "win" && type) {
|
||||
if (build.os === "windows" && type) {
|
||||
return util.notImplemented();
|
||||
}
|
||||
await sendAsync("op_symlink", { oldpath, newpath });
|
||||
|
|
|
@ -4,7 +4,7 @@ import { assert } from "../util.ts";
|
|||
import { build } from "../build.ts";
|
||||
|
||||
export function kill(pid: number, signo: number): void {
|
||||
if (build.os === "win") {
|
||||
if (build.os === "windows") {
|
||||
throw new Error("Not yet implemented");
|
||||
}
|
||||
sendSync("op_kill", { pid, signo });
|
||||
|
|
|
@ -2,11 +2,6 @@
|
|||
|
||||
import { sendSync } from "./dispatch_json.ts";
|
||||
|
||||
// TODO(bartlomieju): these two types are duplicated
|
||||
// in `cli/js/build.ts` - deduplicate
|
||||
export type OperatingSystem = "mac" | "win" | "linux";
|
||||
export type Arch = "x64" | "arm64";
|
||||
|
||||
export interface Start {
|
||||
cwd: string;
|
||||
pid: number;
|
||||
|
@ -21,11 +16,10 @@ export interface Start {
|
|||
v8Version: string;
|
||||
tsVersion: string;
|
||||
noColor: boolean;
|
||||
os: OperatingSystem;
|
||||
arch: Arch;
|
||||
target: string;
|
||||
}
|
||||
|
||||
export function start(): Start {
|
||||
export function opStart(): Start {
|
||||
return sendSync("op_start");
|
||||
}
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ import * as util from "./util.ts";
|
|||
import { setBuildInfo } from "./build.ts";
|
||||
import { setVersions } from "./version.ts";
|
||||
import { setPrepareStackTrace } from "./error_stack.ts";
|
||||
import { Start, start as startOp } from "./ops/runtime.ts";
|
||||
import { Start, opStart } from "./ops/runtime.ts";
|
||||
import { handleTimerMacrotask } from "./web/timers.ts";
|
||||
|
||||
export let OPS_CACHE: { [name: string]: number };
|
||||
|
@ -36,12 +36,10 @@ export function start(source?: string): Start {
|
|||
// First we send an empty `Start` message to let the privileged side know we
|
||||
// are ready. The response should be a `StartRes` message containing the CLI
|
||||
// args and other info.
|
||||
const s = startOp();
|
||||
|
||||
const s = opStart();
|
||||
setVersions(s.denoVersion, s.v8Version, s.tsVersion);
|
||||
setBuildInfo(s.os, s.arch);
|
||||
setBuildInfo(s.target);
|
||||
util.setLogDebug(s.debugFlag, source);
|
||||
|
||||
setPrepareStackTrace(Error);
|
||||
return s;
|
||||
}
|
||||
|
|
|
@ -75,7 +75,7 @@ enum MacOSSignal {
|
|||
export const Signal: { [key: string]: number } = {};
|
||||
|
||||
export function setSignals(): void {
|
||||
if (build.os === "mac") {
|
||||
if (build.os === "darwin") {
|
||||
Object.assign(Signal, MacOSSignal);
|
||||
} else {
|
||||
Object.assign(Signal, LinuxSignal);
|
||||
|
@ -83,7 +83,7 @@ export function setSignals(): void {
|
|||
}
|
||||
|
||||
export function signal(signo: number): SignalStream {
|
||||
if (build.os === "win") {
|
||||
if (build.os === "windows") {
|
||||
throw new Error("not implemented!");
|
||||
}
|
||||
return new SignalStream(signo);
|
||||
|
|
|
@ -17,7 +17,7 @@ unitTest(function simpleTestFn(): void {
|
|||
});
|
||||
|
||||
unitTest({
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
perms: { read: true, write: true },
|
||||
},
|
||||
function complexTestFn(): void {
|
||||
|
|
|
@ -66,7 +66,7 @@ unitTest(function nativeEndLine(): void {
|
|||
};
|
||||
const blob = new Blob(["Hello\nWorld"], options);
|
||||
|
||||
assertEquals(blob.size, Deno.build.os === "win" ? 12 : 11);
|
||||
assertEquals(blob.size, Deno.build.os === "windows" ? 12 : 11);
|
||||
});
|
||||
|
||||
unitTest(async function blobText(): Promise<void> {
|
||||
|
|
|
@ -5,6 +5,6 @@ unitTest(function buildInfo(): void {
|
|||
// Deno.build is injected by rollup at compile time. Here
|
||||
// we check it has been properly transformed.
|
||||
const { arch, os } = Deno.build;
|
||||
assert(arch === "x64");
|
||||
assert(os === "mac" || os === "win" || os === "linux");
|
||||
assert(arch.length > 0);
|
||||
assert(os === "darwin" || os === "windows" || os === "linux");
|
||||
});
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
import { unitTest, assert, assertEquals } from "./test_util.ts";
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
function chmodSyncSuccess(): void {
|
||||
const enc = new TextEncoder();
|
||||
const data = enc.encode("Hello");
|
||||
|
@ -21,7 +21,7 @@ unitTest(
|
|||
// Check symlink when not on windows
|
||||
unitTest(
|
||||
{
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
perms: { read: true, write: true },
|
||||
},
|
||||
function chmodSyncSymlinkSuccess(): void {
|
||||
|
@ -73,7 +73,7 @@ unitTest({ perms: { write: false } }, function chmodSyncPerm(): void {
|
|||
});
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
async function chmodSuccess(): Promise<void> {
|
||||
const enc = new TextEncoder();
|
||||
const data = enc.encode("Hello");
|
||||
|
@ -93,7 +93,7 @@ unitTest(
|
|||
|
||||
unitTest(
|
||||
{
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
perms: { read: true, write: true },
|
||||
},
|
||||
async function chmodSymlinkSuccess(): Promise<void> {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
import { unitTest, assertEquals, assert } from "./test_util.ts";
|
||||
|
||||
// chown on Windows is noop for now, so ignore its testing on Windows
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
async function getUidAndGid(): Promise<{ uid: number; gid: number }> {
|
||||
// get the user ID and group ID of the current process
|
||||
const uidProc = Deno.run({
|
||||
|
|
|
@ -10,7 +10,7 @@ unitTest({ perms: { write: true } }, function dirCwdChdirSuccess(): void {
|
|||
const path = Deno.makeTempDirSync();
|
||||
Deno.chdir(path);
|
||||
const current = Deno.cwd();
|
||||
if (Deno.build.os === "mac") {
|
||||
if (Deno.build.os === "darwin") {
|
||||
assertEquals(current, "/private" + path);
|
||||
} else {
|
||||
assertEquals(current, path);
|
||||
|
@ -20,7 +20,7 @@ unitTest({ perms: { write: true } }, function dirCwdChdirSuccess(): void {
|
|||
|
||||
unitTest({ perms: { write: true } }, function dirCwdError(): void {
|
||||
// excluding windows since it throws resource busy, while removeSync
|
||||
if (["linux", "mac"].includes(Deno.build.os)) {
|
||||
if (["linux", "darwin"].includes(Deno.build.os)) {
|
||||
const initialdir = Deno.cwd();
|
||||
const path = Deno.makeTempDirSync();
|
||||
Deno.chdir(path);
|
||||
|
|
|
@ -172,7 +172,7 @@ unitTest(
|
|||
});
|
||||
file.close();
|
||||
const pathInfo = Deno.statSync(path);
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
assertEquals(pathInfo.mode! & 0o777, 0o626 & ~Deno.umask());
|
||||
}
|
||||
}
|
||||
|
@ -191,7 +191,7 @@ unitTest(
|
|||
});
|
||||
file.close();
|
||||
const pathInfo = Deno.statSync(path);
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
assertEquals(pathInfo.mode! & 0o777, 0o626 & ~Deno.umask());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ unitTest({ perms: { read: true } }, function watchFsInvalidPath() {
|
|||
Deno.watchFs("non-existant.file");
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
if (Deno.build.os === "win") {
|
||||
if (Deno.build.os === "windows") {
|
||||
assert(
|
||||
err.message.includes(
|
||||
"Input watch path is neither a file nor a directory"
|
||||
|
|
|
@ -31,7 +31,7 @@ unitTest(
|
|||
function makeTempDirSyncMode(): void {
|
||||
const path = Deno.makeTempDirSync();
|
||||
const pathInfo = Deno.statSync(path);
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
assertEquals(pathInfo.mode! & 0o777, 0o700 & ~Deno.umask());
|
||||
}
|
||||
}
|
||||
|
@ -82,7 +82,7 @@ unitTest(
|
|||
async function makeTempDirMode(): Promise<void> {
|
||||
const path = await Deno.makeTempDir();
|
||||
const pathInfo = Deno.statSync(path);
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
assertEquals(pathInfo.mode! & 0o777, 0o700 & ~Deno.umask());
|
||||
}
|
||||
}
|
||||
|
@ -119,7 +119,7 @@ unitTest(
|
|||
function makeTempFileSyncMode(): void {
|
||||
const path = Deno.makeTempFileSync();
|
||||
const pathInfo = Deno.statSync(path);
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
assertEquals(pathInfo.mode! & 0o777, 0o600 & ~Deno.umask());
|
||||
}
|
||||
}
|
||||
|
@ -171,7 +171,7 @@ unitTest(
|
|||
async function makeTempFileMode(): Promise<void> {
|
||||
const path = await Deno.makeTempFile();
|
||||
const pathInfo = Deno.statSync(path);
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
assertEquals(pathInfo.mode! & 0o777, 0o600 & ~Deno.umask());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@ import { unitTest, assert, assertEquals, assertThrows } from "./test_util.ts";
|
|||
function assertDirectory(path: string, mode?: number): void {
|
||||
const info = Deno.lstatSync(path);
|
||||
assert(info.isDirectory);
|
||||
if (Deno.build.os !== "win" && mode !== undefined) {
|
||||
if (Deno.build.os !== "windows" && mode !== undefined) {
|
||||
assertEquals(info.mode! & 0o777, mode & ~Deno.umask());
|
||||
}
|
||||
}
|
||||
|
@ -126,7 +126,7 @@ unitTest(
|
|||
Deno.mkdirSync(path, { recursive: true });
|
||||
Deno.mkdirSync(path, { recursive: true, mode: 0o731 });
|
||||
assertDirectory(path, 0o737);
|
||||
if (Deno.build.os != "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
const pathLink = path + "Link";
|
||||
Deno.symlinkSync(path, pathLink);
|
||||
Deno.mkdirSync(pathLink, { recursive: true });
|
||||
|
@ -144,7 +144,7 @@ unitTest(
|
|||
await Deno.mkdir(path, { recursive: true });
|
||||
await Deno.mkdir(path, { recursive: true, mode: 0o731 });
|
||||
assertDirectory(path, 0o737);
|
||||
if (Deno.build.os != "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
const pathLink = path + "Link";
|
||||
Deno.symlinkSync(path, pathLink);
|
||||
await Deno.mkdir(pathLink, { recursive: true });
|
||||
|
@ -178,7 +178,7 @@ unitTest(
|
|||
Deno.mkdirSync(file, { recursive: true });
|
||||
}, Deno.errors.AlreadyExists);
|
||||
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
const fileLink = testDir + "/fileLink";
|
||||
const dirLink = testDir + "/dirLink";
|
||||
const danglingLink = testDir + "/danglingLink";
|
||||
|
|
|
@ -18,7 +18,7 @@ unitTest(
|
|||
{
|
||||
perms: { net: true },
|
||||
// TODO:
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
},
|
||||
function netUdpListenClose(): void {
|
||||
const socket = Deno.listen({
|
||||
|
@ -34,7 +34,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
function netUnixListenClose(): void {
|
||||
const filePath = Deno.makeTempFileSync();
|
||||
const socket = Deno.listen({
|
||||
|
@ -48,7 +48,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
function netUnixPacketListenClose(): void {
|
||||
const filePath = Deno.makeTempFileSync();
|
||||
const socket = Deno.listen({
|
||||
|
@ -82,7 +82,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
async function netUnixCloseWhileAccept(): Promise<void> {
|
||||
const filePath = await Deno.makeTempFile();
|
||||
const listener = Deno.listen({
|
||||
|
@ -189,7 +189,7 @@ unitTest({ perms: { net: true } }, async function netTcpDialListen(): Promise<
|
|||
});
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
async function netUnixDialListen(): Promise<void> {
|
||||
const filePath = await Deno.makeTempFile();
|
||||
const listener = Deno.listen({ address: filePath, transport: "unix" });
|
||||
|
@ -225,7 +225,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { net: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { net: true } },
|
||||
async function netUdpSendReceive(): Promise<void> {
|
||||
const alice = Deno.listen({ port: 4500, transport: "udp" });
|
||||
assert(alice.addr.transport === "udp");
|
||||
|
@ -253,7 +253,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
async function netUnixPacketSendReceive(): Promise<void> {
|
||||
const filePath = await Deno.makeTempFile();
|
||||
const alice = Deno.listen({ address: filePath, transport: "unixpacket" });
|
||||
|
@ -293,7 +293,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { net: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { net: true } },
|
||||
async function netUdpListenCloseWhileIterating(): Promise<void> {
|
||||
const socket = Deno.listen({ port: 8000, transport: "udp" });
|
||||
const nextWhileClosing = socket[Symbol.asyncIterator]().next();
|
||||
|
@ -306,7 +306,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
async function netUnixListenCloseWhileIterating(): Promise<void> {
|
||||
const filePath = Deno.makeTempFileSync();
|
||||
const socket = Deno.listen({ address: filePath, transport: "unix" });
|
||||
|
@ -320,7 +320,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
async function netUnixPacketListenCloseWhileIterating(): Promise<void> {
|
||||
const filePath = Deno.makeTempFileSync();
|
||||
const socket = Deno.listen({ address: filePath, transport: "unixpacket" });
|
||||
|
|
|
@ -50,7 +50,7 @@ unitTest(function envPermissionDenied2(): void {
|
|||
// case-insensitive. Case normalization needs be done using the collation
|
||||
// that Windows uses, rather than naively using String.toLowerCase().
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os !== "win", perms: { env: true, run: true } },
|
||||
{ ignore: Deno.build.os !== "windows", perms: { env: true, run: true } },
|
||||
async function envCaseInsensitive() {
|
||||
// Utility function that runs a Deno subprocess with the environment
|
||||
// specified in `inputEnv`. The subprocess reads the environment variables
|
||||
|
@ -116,7 +116,7 @@ unitTest(function osPid(): void {
|
|||
});
|
||||
|
||||
unitTest({ perms: { env: true } }, function getDir(): void {
|
||||
type supportOS = "mac" | "win" | "linux";
|
||||
type supportOS = "darwin" | "windows" | "linux";
|
||||
|
||||
interface Runtime {
|
||||
os: supportOS;
|
||||
|
@ -132,120 +132,120 @@ unitTest({ perms: { env: true } }, function getDir(): void {
|
|||
{
|
||||
kind: "config",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: true },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "cache",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: true },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "executable",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: false },
|
||||
{ os: "win", shouldHaveValue: false },
|
||||
{ os: "darwin", shouldHaveValue: false },
|
||||
{ os: "windows", shouldHaveValue: false },
|
||||
{ os: "linux", shouldHaveValue: true },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "data",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: true },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "data_local",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: true },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "audio",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: false },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "desktop",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: false },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "document",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: false },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "download",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: false },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "font",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: false },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: false },
|
||||
{ os: "linux", shouldHaveValue: true },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "picture",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: false },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "public",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: false },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "template",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: false },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: false },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: false },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "tmp",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: true },
|
||||
],
|
||||
},
|
||||
{
|
||||
kind: "video",
|
||||
runtime: [
|
||||
{ os: "mac", shouldHaveValue: true },
|
||||
{ os: "win", shouldHaveValue: true },
|
||||
{ os: "darwin", shouldHaveValue: true },
|
||||
{ os: "windows", shouldHaveValue: true },
|
||||
{ os: "linux", shouldHaveValue: false },
|
||||
],
|
||||
},
|
||||
|
|
|
@ -49,7 +49,7 @@ unitTest(
|
|||
unitTest(
|
||||
{
|
||||
// No signals on windows.
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
perms: { run: true },
|
||||
},
|
||||
async function runCommandFailedWithSignal(): Promise<void> {
|
||||
|
@ -318,7 +318,7 @@ unitTest({ perms: { run: true } }, async function runClose(): Promise<void> {
|
|||
});
|
||||
|
||||
unitTest(function signalNumbers(): void {
|
||||
if (Deno.build.os === "mac") {
|
||||
if (Deno.build.os === "darwin") {
|
||||
assertEquals(Deno.Signal.SIGSTOP, 17);
|
||||
} else if (Deno.build.os === "linux") {
|
||||
assertEquals(Deno.Signal.SIGSTOP, 19);
|
||||
|
@ -326,7 +326,7 @@ unitTest(function signalNumbers(): void {
|
|||
});
|
||||
|
||||
// Ignore signal tests on windows for now...
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
unitTest(function killPermissions(): void {
|
||||
let caughtError = false;
|
||||
try {
|
||||
|
|
|
@ -10,7 +10,7 @@ unitTest(
|
|||
Deno.mkdirSync(target);
|
||||
// TODO Add test for Windows once symlink is implemented for Windows.
|
||||
// See https://github.com/denoland/deno/issues/815.
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
Deno.symlinkSync(target, symlink);
|
||||
const targetPath = Deno.readlinkSync(symlink);
|
||||
assertEquals(targetPath, target);
|
||||
|
@ -51,7 +51,7 @@ unitTest(
|
|||
Deno.mkdirSync(target);
|
||||
// TODO Add test for Windows once symlink is implemented for Windows.
|
||||
// See https://github.com/denoland/deno/issues/815.
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
Deno.symlinkSync(target, symlink);
|
||||
const targetPath = await Deno.readlink(symlink);
|
||||
assertEquals(targetPath, target);
|
||||
|
|
|
@ -4,7 +4,7 @@ import { unitTest, assert } from "./test_util.ts";
|
|||
unitTest({ perms: { read: true } }, function realpathSyncSuccess(): void {
|
||||
const incompletePath = "cli/tests/fixture.json";
|
||||
const realPath = Deno.realpathSync(incompletePath);
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
assert(realPath.startsWith("/"));
|
||||
} else {
|
||||
assert(/^[A-Z]/.test(realPath));
|
||||
|
@ -14,7 +14,7 @@ unitTest({ perms: { read: true } }, function realpathSyncSuccess(): void {
|
|||
|
||||
unitTest(
|
||||
{
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
perms: { read: true, write: true },
|
||||
},
|
||||
function realpathSyncSymlink(): void {
|
||||
|
@ -56,7 +56,7 @@ unitTest({ perms: { read: true } }, async function realpathSuccess(): Promise<
|
|||
> {
|
||||
const incompletePath = "cli/tests/fixture.json";
|
||||
const realPath = await Deno.realpath(incompletePath);
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
assert(realPath.startsWith("/"));
|
||||
} else {
|
||||
assert(/^[A-Z]/.test(realPath));
|
||||
|
@ -66,7 +66,7 @@ unitTest({ perms: { read: true } }, async function realpathSuccess(): Promise<
|
|||
|
||||
unitTest(
|
||||
{
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
perms: { read: true, write: true },
|
||||
},
|
||||
async function realpathSymlink(): Promise<void> {
|
||||
|
|
|
@ -90,7 +90,7 @@ unitTest(
|
|||
} catch (err) {
|
||||
errOnWindows = err;
|
||||
}
|
||||
if (Deno.build.os === "win") {
|
||||
if (Deno.build.os === "windows") {
|
||||
assertEquals(errOnWindows.message, "not implemented");
|
||||
} else {
|
||||
const pathInfo = Deno.lstatSync(danglingSymlinkPath);
|
||||
|
@ -123,7 +123,7 @@ unitTest(
|
|||
} catch (err) {
|
||||
errOnWindows = err;
|
||||
}
|
||||
if (Deno.build.os === "win") {
|
||||
if (Deno.build.os === "windows") {
|
||||
assertEquals(errOnWindows.message, "not implemented");
|
||||
} else {
|
||||
const symlinkPathInfo = Deno.statSync(validSymlinkPath);
|
||||
|
@ -326,7 +326,7 @@ unitTest(
|
|||
} catch (e) {
|
||||
errOnWindows = e;
|
||||
}
|
||||
if (Deno.build.os === "win") {
|
||||
if (Deno.build.os === "windows") {
|
||||
assertEquals(errOnWindows.message, "not implemented");
|
||||
} else {
|
||||
const pathInfo = Deno.lstatSync(danglingSymlinkPath);
|
||||
|
@ -359,7 +359,7 @@ unitTest(
|
|||
} catch (e) {
|
||||
errOnWindows = e;
|
||||
}
|
||||
if (Deno.build.os === "win") {
|
||||
if (Deno.build.os === "windows") {
|
||||
assertEquals(errOnWindows.message, "not implemented");
|
||||
} else {
|
||||
const symlinkPathInfo = Deno.statSync(validSymlinkPath);
|
||||
|
|
|
@ -22,7 +22,7 @@ function assertFile(path: string): void {
|
|||
function assertDirectory(path: string, mode?: number): void {
|
||||
const info = Deno.lstatSync(path);
|
||||
assert(info.isDirectory);
|
||||
if (Deno.build.os !== "win" && mode !== undefined) {
|
||||
if (Deno.build.os !== "windows" && mode !== undefined) {
|
||||
assertEquals(info.mode! & 0o777, mode & ~Deno.umask());
|
||||
}
|
||||
}
|
||||
|
@ -98,7 +98,7 @@ function writeFileString(filename: string, s: string): void {
|
|||
}
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
function renameSyncErrorsUnix(): void {
|
||||
const testDir = Deno.makeTempDirSync();
|
||||
const oldfile = testDir + "/oldfile";
|
||||
|
@ -173,7 +173,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os !== "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os !== "windows", perms: { read: true, write: true } },
|
||||
function renameSyncErrorsWin(): void {
|
||||
const testDir = Deno.makeTempDirSync();
|
||||
const oldfile = testDir + "/oldfile";
|
||||
|
|
|
@ -14,7 +14,7 @@ function defer(n: number): Promise<void> {
|
|||
}
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os !== "win" },
|
||||
{ ignore: Deno.build.os !== "windows" },
|
||||
function signalsNotImplemented(): void {
|
||||
assertThrows(
|
||||
() => {
|
||||
|
@ -104,7 +104,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { run: true, net: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { run: true, net: true } },
|
||||
async function signalStreamTest(): Promise<void> {
|
||||
const resolvable = createResolvable();
|
||||
// This prevents the program from exiting.
|
||||
|
@ -135,7 +135,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { run: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { run: true } },
|
||||
async function signalPromiseTest(): Promise<void> {
|
||||
const resolvable = createResolvable();
|
||||
// This prevents the program from exiting.
|
||||
|
@ -155,7 +155,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { run: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { run: true } },
|
||||
function signalShorthandsTest(): void {
|
||||
let s: Deno.SignalStream;
|
||||
s = Deno.signals.alarm(); // for SIGALRM
|
||||
|
|
|
@ -193,7 +193,7 @@ unitTest({ perms: { read: true } }, async function lstatNotFound(): Promise<
|
|||
});
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os !== "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os !== "windows", perms: { read: true, write: true } },
|
||||
function statNoUnixFields(): void {
|
||||
const enc = new TextEncoder();
|
||||
const data = enc.encode("Hello");
|
||||
|
@ -214,7 +214,7 @@ unitTest(
|
|||
);
|
||||
|
||||
unitTest(
|
||||
{ ignore: Deno.build.os === "win", perms: { read: true, write: true } },
|
||||
{ ignore: Deno.build.os === "windows", perms: { read: true, write: true } },
|
||||
function statUnixFields(): void {
|
||||
const enc = new TextEncoder();
|
||||
const data = enc.encode("Hello");
|
||||
|
|
|
@ -16,7 +16,7 @@ unitTest(
|
|||
errOnWindows = e;
|
||||
}
|
||||
if (errOnWindows) {
|
||||
assertEquals(Deno.build.os, "win");
|
||||
assertEquals(Deno.build.os, "windows");
|
||||
assertEquals(errOnWindows.message, "not implemented");
|
||||
} else {
|
||||
const newNameInfoLStat = Deno.lstatSync(newname);
|
||||
|
@ -53,7 +53,7 @@ unitTest(
|
|||
err = e;
|
||||
}
|
||||
if (err) {
|
||||
assertEquals(Deno.build.os, "win");
|
||||
assertEquals(Deno.build.os, "windows");
|
||||
// from cli/js/util.ts:notImplemented
|
||||
assertEquals(err.message, "not implemented");
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@ import { unitTest, assertEquals } from "./test_util.ts";
|
|||
|
||||
unitTest(
|
||||
{
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
},
|
||||
function umaskSuccess(): void {
|
||||
const prevMask = Deno.umask(0o020);
|
||||
|
|
|
@ -48,7 +48,7 @@ unitTest({ perms: { write: false } }, function writeFileSyncPerm(): void {
|
|||
unitTest(
|
||||
{ perms: { read: true, write: true } },
|
||||
function writeFileSyncUpdateMode(): void {
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
const enc = new TextEncoder();
|
||||
const data = enc.encode("Hello");
|
||||
const filename = Deno.makeTempDirSync() + "/test.txt";
|
||||
|
@ -164,7 +164,7 @@ unitTest(
|
|||
unitTest(
|
||||
{ perms: { read: true, write: true } },
|
||||
async function writeFileUpdateMode(): Promise<void> {
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
const enc = new TextEncoder();
|
||||
const data = enc.encode("Hello");
|
||||
const filename = Deno.makeTempDirSync() + "/test.txt";
|
||||
|
|
|
@ -13,7 +13,7 @@ export function containsOnlyASCII(str: string): boolean {
|
|||
}
|
||||
|
||||
function convertLineEndingsToNative(s: string): string {
|
||||
const nativeLineEnd = build.os == "win" ? "\r\n" : "\n";
|
||||
const nativeLineEnd = build.os == "windows" ? "\r\n" : "\n";
|
||||
|
||||
let position = 0;
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@ export function writeFileSync(
|
|||
if (
|
||||
options.mode !== undefined &&
|
||||
options.mode !== null &&
|
||||
build.os !== "win"
|
||||
build.os !== "windows"
|
||||
) {
|
||||
chmodSync(path, options.mode);
|
||||
}
|
||||
|
@ -62,7 +62,7 @@ export async function writeFile(
|
|||
if (
|
||||
options.mode !== undefined &&
|
||||
options.mode !== null &&
|
||||
build.os !== "win"
|
||||
build.os !== "windows"
|
||||
) {
|
||||
await chmod(path, options.mode);
|
||||
}
|
||||
|
|
|
@ -9,16 +9,6 @@ use deno_core::CoreIsolate;
|
|||
use deno_core::ZeroCopyBuf;
|
||||
use std::env;
|
||||
|
||||
/// BUILD_OS and BUILD_ARCH match the values in Deno.build. See js/build.ts.
|
||||
#[cfg(target_os = "macos")]
|
||||
static BUILD_OS: &str = "mac";
|
||||
#[cfg(target_os = "linux")]
|
||||
static BUILD_OS: &str = "linux";
|
||||
#[cfg(target_os = "windows")]
|
||||
static BUILD_OS: &str = "win";
|
||||
#[cfg(target_arch = "x86_64")]
|
||||
static BUILD_ARCH: &str = "x64";
|
||||
|
||||
pub fn init(i: &mut CoreIsolate, s: &State) {
|
||||
i.register_op("op_start", s.stateful_json_op(op_start));
|
||||
i.register_op("op_metrics", s.stateful_json_op(op_metrics));
|
||||
|
@ -45,8 +35,7 @@ fn op_start(
|
|||
"denoVersion": version::DENO,
|
||||
"tsVersion": version::TYPESCRIPT,
|
||||
"noColor": !colors::use_color(),
|
||||
"os": BUILD_OS,
|
||||
"arch": BUILD_ARCH,
|
||||
"target": env!("TARGET"),
|
||||
})))
|
||||
}
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@ async function startServer(): Promise<Deno.Process> {
|
|||
}
|
||||
|
||||
// TODO: https://github.com/denoland/deno/issues/4108
|
||||
const ignore = build.os == "win";
|
||||
const ignore = build.os == "windows";
|
||||
|
||||
test({
|
||||
ignore,
|
||||
|
|
|
@ -15,7 +15,7 @@ import { ensureSymlink, ensureSymlinkSync } from "./ensure_symlink.ts";
|
|||
const testdataDir = path.resolve("fs", "testdata");
|
||||
|
||||
// TODO(axetroy): Add test for Windows once symlink is implemented for Windows.
|
||||
const isWindows = Deno.build.os === "win";
|
||||
const isWindows = Deno.build.os === "windows";
|
||||
|
||||
function testCopy(name: string, cb: (tempDir: string) => Promise<void>): void {
|
||||
Deno.test({
|
||||
|
|
|
@ -9,7 +9,7 @@ import * as path from "../path/mod.ts";
|
|||
import { ensureSymlink, ensureSymlinkSync } from "./ensure_symlink.ts";
|
||||
|
||||
const testdataDir = path.resolve("fs", "testdata");
|
||||
const isWindows = Deno.build.os === "win";
|
||||
const isWindows = Deno.build.os === "windows";
|
||||
|
||||
Deno.test("ensureSymlinkIfItNotExist", async function (): Promise<void> {
|
||||
const testDir = path.join(testdataDir, "link_file_1");
|
||||
|
|
|
@ -3,8 +3,6 @@ const { remove } = Deno;
|
|||
import { walk, walkSync, WalkOptions, WalkEntry } from "./walk.ts";
|
||||
import { assert, assertEquals, assertThrowsAsync } from "../testing/asserts.ts";
|
||||
|
||||
const isWindows = Deno.build.os == "win";
|
||||
|
||||
export function testWalk(
|
||||
setup: (arg0: string) => void | Promise<void>,
|
||||
t: () => void | Promise<void>,
|
||||
|
@ -254,13 +252,13 @@ testWalk(
|
|||
try {
|
||||
await symlink(d + "/b", d + "/a/bb");
|
||||
} catch (err) {
|
||||
assert(isWindows);
|
||||
assert(Deno.build.os == "windows");
|
||||
assertEquals(err.message, "Not implemented");
|
||||
}
|
||||
},
|
||||
async function symlink(): Promise<void> {
|
||||
// symlink is not yet implemented on Windows.
|
||||
if (isWindows) {
|
||||
if (Deno.build.os == "windows") {
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -62,9 +62,9 @@ test("serveDirectory", async function (): Promise<void> {
|
|||
// `Deno.FileInfo` is not completely compatible with Windows yet
|
||||
// TODO: `mode` should work correctly in the future.
|
||||
// Correct this test case accordingly.
|
||||
Deno.build.os !== "win" &&
|
||||
Deno.build.os !== "windows" &&
|
||||
assert(/<td class="mode">(\s)*\([a-zA-Z-]{10}\)(\s)*<\/td>/.test(page));
|
||||
Deno.build.os === "win" &&
|
||||
Deno.build.os === "windows" &&
|
||||
assert(/<td class="mode">(\s)*\(unknown mode\)(\s)*<\/td>/.test(page));
|
||||
assert(page.includes(`<a href="/README.md">README.md</a>`));
|
||||
} finally {
|
||||
|
|
|
@ -5,7 +5,7 @@ import { chmod, chmodSync } from "./_fs_chmod.ts";
|
|||
|
||||
test({
|
||||
name: "ASYNC: Permissions are changed (non-Windows)",
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
async fn() {
|
||||
const tempFile: string = await Deno.makeTempFile();
|
||||
const originalFileMode: number | null = (await Deno.lstat(tempFile)).mode;
|
||||
|
@ -31,7 +31,7 @@ test({
|
|||
|
||||
test({
|
||||
name: "SYNC: Permissions are changed (non-Windows)",
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
fn() {
|
||||
const tempFile: string = Deno.makeTempFileSync();
|
||||
const originalFileMode: number | null = Deno.lstatSync(tempFile).mode;
|
||||
|
|
|
@ -3,8 +3,9 @@ const { test } = Deno;
|
|||
import { fail, assertEquals } from "../../testing/asserts.ts";
|
||||
import { chown, chownSync } from "./_fs_chown.ts";
|
||||
|
||||
//chown is difficult to test. Best we can do is set the existing user id/group id again
|
||||
const ignore = Deno.build.os == "win";
|
||||
// chown is difficult to test. Best we can do is set the existing user id/group
|
||||
// id again
|
||||
const ignore = Deno.build.os == "windows";
|
||||
|
||||
test({
|
||||
ignore,
|
||||
|
|
|
@ -6,13 +6,13 @@ const testDir = Deno.makeTempDirSync();
|
|||
const oldname = testDir + "/oldname";
|
||||
const newname = testDir + "/newname";
|
||||
|
||||
if (Deno.build.os !== "win") {
|
||||
if (Deno.build.os !== "windows") {
|
||||
Deno.symlinkSync(oldname, newname);
|
||||
}
|
||||
|
||||
test({
|
||||
name: "readlinkSuccess",
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
async fn() {
|
||||
const data = await new Promise((res, rej) => {
|
||||
readlink(newname, (err, data) => {
|
||||
|
@ -30,7 +30,7 @@ test({
|
|||
|
||||
test({
|
||||
name: "readlinkEncodeBufferSuccess",
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
async fn() {
|
||||
const data = await new Promise((res, rej) => {
|
||||
readlink(newname, { encoding: "buffer" }, (err, data) => {
|
||||
|
@ -48,7 +48,7 @@ test({
|
|||
|
||||
test({
|
||||
name: "readlinkSyncSuccess",
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
fn() {
|
||||
const data = readlinkSync(newname);
|
||||
assertEquals(typeof data, "string");
|
||||
|
@ -58,7 +58,7 @@ test({
|
|||
|
||||
test({
|
||||
name: "readlinkEncodeBufferSuccess",
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
fn() {
|
||||
const data = readlinkSync(newname, { encoding: "buffer" });
|
||||
assert(data instanceof Uint8Array);
|
||||
|
|
|
@ -146,7 +146,7 @@ export function hostname(): string {
|
|||
|
||||
/** Returns an array containing the 1, 5, and 15 minute load averages */
|
||||
export function loadavg(): number[] {
|
||||
if (Deno.build.os == "win") {
|
||||
if (Deno.build.os === "windows") {
|
||||
return [0, 0, 0];
|
||||
}
|
||||
return Deno.loadavg();
|
||||
|
@ -222,4 +222,4 @@ export const constants = {
|
|||
},
|
||||
};
|
||||
|
||||
export const EOL = Deno.build.os == "win" ? fsEOL.CRLF : fsEOL.LF;
|
||||
export const EOL = Deno.build.os == "windows" ? fsEOL.CRLF : fsEOL.LF;
|
||||
|
|
|
@ -7,10 +7,7 @@ const versions = {
|
|||
...Deno.version,
|
||||
};
|
||||
|
||||
const osToPlatform = (os: Deno.OperatingSystem): string =>
|
||||
os === "win" ? "win32" : os === "mac" ? "darwin" : os;
|
||||
|
||||
const platform = osToPlatform(Deno.build.os);
|
||||
const platform = Deno.build.os === "windows" ? "win32" : Deno.build.os;
|
||||
|
||||
const { arch } = Deno.build;
|
||||
|
||||
|
|
|
@ -48,7 +48,7 @@ export const CHAR_EQUAL = 61; /* = */
|
|||
export const CHAR_0 = 48; /* 0 */
|
||||
export const CHAR_9 = 57; /* 9 */
|
||||
|
||||
export const isWindows = build.os === "win";
|
||||
export const isWindows = build.os === "windows";
|
||||
export const EOL = isWindows ? "\r\n" : "\n";
|
||||
export const SEP = isWindows ? "\\" : "/";
|
||||
export const SEP_PATTERN = isWindows ? /[\\/]+/ : /\/+/;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
// MIT License
|
||||
// Copyright (c) 2018 Terkel Gjervig Nielsen
|
||||
|
||||
const isWin = Deno.build.os === "win";
|
||||
const isWin = Deno.build.os === "windows";
|
||||
const SEP = isWin ? `(?:\\\\|\\/)` : `\\/`;
|
||||
const SEP_ESC = isWin ? `\\\\` : `/`;
|
||||
const SEP_RAW = isWin ? `\\` : `/`;
|
||||
|
|
|
@ -6,7 +6,7 @@ const { test } = Deno;
|
|||
import { assertEquals } from "../testing/asserts.ts";
|
||||
import { GlobrexOptions, globrex } from "./globrex.ts";
|
||||
|
||||
const isWin = Deno.build.os === "win";
|
||||
const isWin = Deno.build.os === "windows";
|
||||
const t = { equal: assertEquals, is: assertEquals };
|
||||
|
||||
function match(
|
||||
|
|
|
@ -5,7 +5,7 @@ import { signal, onSignal } from "./mod.ts";
|
|||
|
||||
test({
|
||||
name: "signal() throws when called with empty signals",
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
fn() {
|
||||
assertThrows(
|
||||
() => {
|
||||
|
@ -20,7 +20,7 @@ test({
|
|||
|
||||
test({
|
||||
name: "signal() iterates for multiple signals",
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
fn: async (): Promise<void> => {
|
||||
// This prevents the program from exiting.
|
||||
const t = setInterval(() => {}, 1000);
|
||||
|
@ -61,7 +61,7 @@ test({
|
|||
|
||||
test({
|
||||
name: "onSignal() registers and disposes of event handler",
|
||||
ignore: Deno.build.os === "win",
|
||||
ignore: Deno.build.os === "windows",
|
||||
async fn() {
|
||||
// This prevents the program from exiting.
|
||||
const t = setInterval(() => {}, 1000);
|
||||
|
|
|
@ -3,11 +3,11 @@ const filenameBase = "test_plugin";
|
|||
let filenameSuffix = ".so";
|
||||
let filenamePrefix = "lib";
|
||||
|
||||
if (Deno.build.os === "win") {
|
||||
if (Deno.build.os === "windows") {
|
||||
filenameSuffix = ".dll";
|
||||
filenamePrefix = "";
|
||||
}
|
||||
if (Deno.build.os === "mac") {
|
||||
if (Deno.build.os === "darwin") {
|
||||
filenameSuffix = ".dylib";
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue