mirror of
				https://github.com/tc39/test262.git
				synced 2025-10-31 03:34:08 +01:00 
			
		
		
		
	[javascriptcore-test262-automation] Changes from https://github.com/webkit/webkit.git at sha 3ced8564a6 on Thu Sep 06 2018 18:18:56 GMT+0000 (Coordinated Universal Time)
This commit is contained in:
		
							parent
							
								
									86b5efea29
								
							
						
					
					
						commit
						5594c916bf
					
				| @ -1,5 +1,5 @@ | ||||
| //@ runDefault
 | ||||
| //@ skip if $architecture == "x86"
 | ||||
| //@ runDefault
 | ||||
| // This passes if it does not crash.
 | ||||
| new WebAssembly.CompileError({ | ||||
|     valueOf() { | ||||
|  | ||||
| @ -0,0 +1,95 @@ | ||||
| function shouldBe(actual, expected) { | ||||
|     if (actual !== expected) | ||||
|         throw new Error(`bad value: ${String(actual)}`); | ||||
| } | ||||
| 
 | ||||
| function shouldThrow(func, errorMessage) { | ||||
|     var errorThrown = false; | ||||
|     var error = null; | ||||
|     try { | ||||
|         func(); | ||||
|     } catch (e) { | ||||
|         errorThrown = true; | ||||
|         error = e; | ||||
|     } | ||||
|     if (!errorThrown) | ||||
|         throw new Error('not thrown'); | ||||
|     if (String(error) !== errorMessage) | ||||
|         throw new Error(`bad error: ${String(error)}`); | ||||
| } | ||||
| 
 | ||||
| var s0 = Symbol("Cocoa"); | ||||
| var s1 = Symbol("Cappuccino"); | ||||
| var s2 = Symbol(""); | ||||
| var s3 = Symbol(); | ||||
| 
 | ||||
| shouldBe(s0.description, "Cocoa"); | ||||
| shouldBe(s0.toString(), "Symbol(Cocoa)"); | ||||
| shouldBe(s1.description, "Cappuccino"); | ||||
| shouldBe(s1.toString(), "Symbol(Cappuccino)"); | ||||
| shouldBe(s2.description, ""); | ||||
| shouldBe(s2.toString(), "Symbol()"); | ||||
| shouldBe(s3.description, undefined); | ||||
| shouldBe(s3.toString(), "Symbol()"); | ||||
| 
 | ||||
| var o0 = Object(s0); | ||||
| var o1 = Object(s1); | ||||
| var o2 = Object(s2); | ||||
| var o3 = Object(s3); | ||||
| 
 | ||||
| shouldBe(o0.description, "Cocoa"); | ||||
| shouldBe(o0.toString(), "Symbol(Cocoa)"); | ||||
| shouldBe(o1.description, "Cappuccino"); | ||||
| shouldBe(o1.toString(), "Symbol(Cappuccino)"); | ||||
| shouldBe(o2.description, ""); | ||||
| shouldBe(o2.toString(), "Symbol()"); | ||||
| shouldBe(o3.description, undefined); | ||||
| shouldBe(o3.toString(), "Symbol()"); | ||||
| 
 | ||||
| var descriptor = Object.getOwnPropertyDescriptor(Symbol.prototype, "description"); | ||||
| shouldBe(descriptor.enumerable, false); | ||||
| shouldBe(descriptor.configurable, true); | ||||
| shouldBe(descriptor.set, undefined); | ||||
| shouldBe(typeof descriptor.get, "function"); | ||||
| 
 | ||||
| shouldThrow(() => { | ||||
|     "use strict"; | ||||
|     s0.description = "Matcha"; | ||||
| }, `TypeError: Attempted to assign to readonly property.`); | ||||
| shouldThrow(() => { | ||||
|     "use strict"; | ||||
|     o0.description = "Matcha"; | ||||
| }, `TypeError: Attempted to assign to readonly property.`); | ||||
| 
 | ||||
| shouldThrow(() => { | ||||
|     descriptor.get.call({}); | ||||
| }, `TypeError: Symbol.prototype.description requires that |this| be a symbol or a symbol object`); | ||||
| 
 | ||||
| shouldThrow(() => { | ||||
|     descriptor.get.call(null); | ||||
| }, `TypeError: Symbol.prototype.description requires that |this| be a symbol or a symbol object`); | ||||
| 
 | ||||
| shouldThrow(() => { | ||||
|     descriptor.get.call(undefined); | ||||
| }, `TypeError: Symbol.prototype.description requires that |this| be a symbol or a symbol object`); | ||||
| 
 | ||||
| shouldThrow(() => { | ||||
|     descriptor.get.call(42); | ||||
| }, `TypeError: Symbol.prototype.description requires that |this| be a symbol or a symbol object`); | ||||
| 
 | ||||
| shouldThrow(() => { | ||||
|     descriptor.get.call("Hello"); | ||||
| }, `TypeError: Symbol.prototype.description requires that |this| be a symbol or a symbol object`); | ||||
| 
 | ||||
| shouldThrow(() => { | ||||
|     descriptor.get.call(42.195); | ||||
| }, `TypeError: Symbol.prototype.description requires that |this| be a symbol or a symbol object`); | ||||
| 
 | ||||
| shouldThrow(() => { | ||||
|     descriptor.get.call(false); | ||||
| }, `TypeError: Symbol.prototype.description requires that |this| be a symbol or a symbol object`); | ||||
| 
 | ||||
| shouldBe(descriptor.get.call(s0), "Cocoa"); | ||||
| shouldBe(descriptor.get.call(o0), "Cocoa"); | ||||
| o0.__proto__ = {}; | ||||
| shouldBe(descriptor.get.call(o0), "Cocoa"); | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user