mirror of
https://github.com/tc39/test262.git
synced 2025-05-03 14:30:27 +02:00
* [javascriptcore-test262-automation] changes from git@github.com:WebKit/webkit.git at sha 949e26452cfa153a7f4afe593da97e2fe9e1b706 on Tue Jul 03 2018 14:35:15 GMT-0400 (Eastern Daylight Time)
313 lines
4.7 KiB
JavaScript
313 lines
4.7 KiB
JavaScript
checkModuleSyntax(String.raw`
|
|
import "Cocoa";
|
|
`);
|
|
|
|
// Examples in 15.2.1.16
|
|
// http://www.ecma-international.org/ecma-262/6.0/#sec-source-text-module-records
|
|
checkModuleSyntax(String.raw`
|
|
import v from "mod";
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import * as ns from "mod";
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import {x} from "mod";
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import {x,} from "mod";
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import {} from "mod";
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import {x as v} from "mod";
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import "mod";
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export var v;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default function f(){};
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default function(){};
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default 42;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
const x = 20;
|
|
export {x};
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
const v = 20;
|
|
export {v as x};
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export {x} from "mod";
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export {v as x} from "mod";
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export * from "mod";
|
|
`);
|
|
|
|
// semicolon is not needed.
|
|
checkModuleSyntax(String.raw`
|
|
export default function () { } 40;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default class { } 40;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default function Cappuccino() { } 40
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default class Cappuccino { } 40
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import a, { b as c } from "Cocoa"
|
|
import d, { e, f, g as h } from "Cappuccino"
|
|
import { } from "Cappuccino"
|
|
import i, * as j from "Cappuccino"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import a, { } from "Cappuccino"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import a, { b, } from "Cappuccino"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import * as from from "Matcha"
|
|
import * as as from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
import { default as module } from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export * from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { } from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { a } from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { a as b } from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { a, b } from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { a, c as d, b }
|
|
let a, c, b;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { }
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { a }
|
|
let a;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { a, }
|
|
let a;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
var a = 20;
|
|
export { a as b }
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { a, b }
|
|
var a, b = 40;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { a, c as d, b }
|
|
let a, c, b;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export var a;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export var a, b, c = 20;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export var a, { b, c } = obj, d = 20;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export const a = 20;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export const [b, ...a] = obj;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export const {b, c: d} = obj;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export let a;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export let a = 20;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export let a = 20, b = 30;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export let [b, ...a] = obj;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export let {b, c: d} = obj;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export function Cocoa() {
|
|
}
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export class Cocoa {
|
|
}
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export class Cocoa extends Drink {
|
|
}
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default function Cocoa() {
|
|
}
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default function () {
|
|
}
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default class Cocoa {
|
|
}
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default class {
|
|
}
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default class Cocoa extends Drink {
|
|
}
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default class extends Drink {
|
|
}
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default 20;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default "Cocoa";
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default 20 + 30;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export default call();
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { default } from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { enum } from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { default as default } from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { enum as enum } from "Cocoa"
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { binding as default }
|
|
let binding = 20;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { binding as enum }
|
|
var binding = 40;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
export { binding as for }
|
|
const binding = 40;
|
|
`);
|
|
|
|
// --------------- other ---------------------
|
|
|
|
checkModuleSyntax(String.raw`
|
|
let i = 20;
|
|
`);
|
|
|
|
checkModuleSyntax(String.raw`
|
|
const i = 20;
|
|
`);
|