diff --git a/test/annexB/B.2.4.js b/test/annexB/Date/prototype/getYear/B.2.4.js similarity index 100% rename from test/annexB/B.2.4.js rename to test/annexB/Date/prototype/getYear/B.2.4.js diff --git a/test/annexB/B.2.4.propertyCheck.js b/test/annexB/Date/prototype/getYear/B.2.4.propertyCheck.js similarity index 100% rename from test/annexB/B.2.4.propertyCheck.js rename to test/annexB/Date/prototype/getYear/B.2.4.propertyCheck.js diff --git a/test/annexB/B.2.5.js b/test/annexB/Date/prototype/setYear/B.2.5.js similarity index 100% rename from test/annexB/B.2.5.js rename to test/annexB/Date/prototype/setYear/B.2.5.js diff --git a/test/annexB/B.2.5.propertyCheck.js b/test/annexB/Date/prototype/setYear/B.2.5.propertyCheck.js similarity index 100% rename from test/annexB/B.2.5.propertyCheck.js rename to test/annexB/Date/prototype/setYear/B.2.5.propertyCheck.js diff --git a/test/annexB/B.2.6.js b/test/annexB/Date/prototype/toGMTString/B.2.6.js similarity index 100% rename from test/annexB/B.2.6.js rename to test/annexB/Date/prototype/toGMTString/B.2.6.js diff --git a/test/annexB/B.2.6.propertyCheck.js b/test/annexB/Date/prototype/toGMTString/B.2.6.propertyCheck.js similarity index 100% rename from test/annexB/B.2.6.propertyCheck.js rename to test/annexB/Date/prototype/toGMTString/B.2.6.propertyCheck.js diff --git a/test/annexB/B.2.2.1.1.js b/test/annexB/Object/prototype/__proto__/B.2.2.1.1.js similarity index 100% rename from test/annexB/B.2.2.1.1.js rename to test/annexB/Object/prototype/__proto__/B.2.2.1.1.js diff --git a/test/annexB/B.2.2.1.2.js b/test/annexB/Object/prototype/__proto__/B.2.2.1.2.js similarity index 100% rename from test/annexB/B.2.2.1.2.js rename to test/annexB/Object/prototype/__proto__/B.2.2.1.2.js diff --git a/test/annexB/RegExp-control-escape-russian-letter.js b/test/annexB/RegExp/RegExp-control-escape-russian-letter.js similarity index 100% rename from test/annexB/RegExp-control-escape-russian-letter.js rename to test/annexB/RegExp/RegExp-control-escape-russian-letter.js diff --git a/test/annexB/RegExp-decimal-escape-class-range.js b/test/annexB/RegExp/RegExp-decimal-escape-class-range.js similarity index 100% rename from test/annexB/RegExp-decimal-escape-class-range.js rename to test/annexB/RegExp/RegExp-decimal-escape-class-range.js diff --git a/test/annexB/RegExp-decimal-escape-not-capturing.js b/test/annexB/RegExp/RegExp-decimal-escape-not-capturing.js similarity index 100% rename from test/annexB/RegExp-decimal-escape-not-capturing.js rename to test/annexB/RegExp/RegExp-decimal-escape-not-capturing.js diff --git a/test/annexB/RegExp-leading-escape-BMP.js b/test/annexB/RegExp/RegExp-leading-escape-BMP.js similarity index 100% rename from test/annexB/RegExp-leading-escape-BMP.js rename to test/annexB/RegExp/RegExp-leading-escape-BMP.js diff --git a/test/annexB/RegExp-leading-escape.js b/test/annexB/RegExp/RegExp-leading-escape.js similarity index 100% rename from test/annexB/RegExp-leading-escape.js rename to test/annexB/RegExp/RegExp-leading-escape.js diff --git a/test/annexB/RegExp-trailing-escape-BMP.js b/test/annexB/RegExp/RegExp-trailing-escape-BMP.js similarity index 100% rename from test/annexB/RegExp-trailing-escape-BMP.js rename to test/annexB/RegExp/RegExp-trailing-escape-BMP.js diff --git a/test/annexB/RegExp-trailing-escape.js b/test/annexB/RegExp/RegExp-trailing-escape.js similarity index 100% rename from test/annexB/RegExp-trailing-escape.js rename to test/annexB/RegExp/RegExp-trailing-escape.js diff --git a/test/annexB/B.RegExp.prototype.compile.js b/test/annexB/RegExp/prototype/compile/B.RegExp.prototype.compile.js similarity index 100% rename from test/annexB/B.RegExp.prototype.compile.js rename to test/annexB/RegExp/prototype/compile/B.RegExp.prototype.compile.js diff --git a/test/annexB/B.2.3.2.js b/test/annexB/String/prototype/anchor/B.2.3.2.js similarity index 100% rename from test/annexB/B.2.3.2.js rename to test/annexB/String/prototype/anchor/B.2.3.2.js diff --git a/test/annexB/B.2.3.3.js b/test/annexB/String/prototype/big/B.2.3.3.js similarity index 100% rename from test/annexB/B.2.3.3.js rename to test/annexB/String/prototype/big/B.2.3.3.js diff --git a/test/annexB/B.2.3.4.js b/test/annexB/String/prototype/blink/B.2.3.4.js similarity index 100% rename from test/annexB/B.2.3.4.js rename to test/annexB/String/prototype/blink/B.2.3.4.js diff --git a/test/annexB/B.2.3.5.js b/test/annexB/String/prototype/bold/B.2.3.5.js similarity index 100% rename from test/annexB/B.2.3.5.js rename to test/annexB/String/prototype/bold/B.2.3.5.js diff --git a/test/annexB/B.2.3.6.js b/test/annexB/String/prototype/fixed/B.2.3.6.js similarity index 100% rename from test/annexB/B.2.3.6.js rename to test/annexB/String/prototype/fixed/B.2.3.6.js diff --git a/test/annexB/B.2.3.7.js b/test/annexB/String/prototype/fontcolor/B.2.3.7.js similarity index 100% rename from test/annexB/B.2.3.7.js rename to test/annexB/String/prototype/fontcolor/B.2.3.7.js diff --git a/test/annexB/B.2.3.8.js b/test/annexB/String/prototype/fontsize/B.2.3.8.js similarity index 100% rename from test/annexB/B.2.3.8.js rename to test/annexB/String/prototype/fontsize/B.2.3.8.js diff --git a/test/annexB/B.2.3.9.js b/test/annexB/String/prototype/italics/B.2.3.9.js similarity index 100% rename from test/annexB/B.2.3.9.js rename to test/annexB/String/prototype/italics/B.2.3.9.js diff --git a/test/annexB/B.2.3.10.js b/test/annexB/String/prototype/link/B.2.3.10.js similarity index 100% rename from test/annexB/B.2.3.10.js rename to test/annexB/String/prototype/link/B.2.3.10.js diff --git a/test/annexB/B.2.3.11.js b/test/annexB/String/prototype/small/B.2.3.11.js similarity index 100% rename from test/annexB/B.2.3.11.js rename to test/annexB/String/prototype/small/B.2.3.11.js diff --git a/test/annexB/B.2.3.12.js b/test/annexB/String/prototype/strike/B.2.3.12.js similarity index 100% rename from test/annexB/B.2.3.12.js rename to test/annexB/String/prototype/strike/B.2.3.12.js diff --git a/test/annexB/B.2.3.13.js b/test/annexB/String/prototype/sub/B.2.3.13.js similarity index 100% rename from test/annexB/B.2.3.13.js rename to test/annexB/String/prototype/sub/B.2.3.13.js diff --git a/test/annexB/B.2.3.js b/test/annexB/String/prototype/substr/B.2.3.js similarity index 100% rename from test/annexB/B.2.3.js rename to test/annexB/String/prototype/substr/B.2.3.js diff --git a/test/annexB/B.2.3.14.js b/test/annexB/String/prototype/sup/B.2.3.14.js similarity index 100% rename from test/annexB/B.2.3.14.js rename to test/annexB/String/prototype/sup/B.2.3.14.js diff --git a/test/annexB/B.2.1.js b/test/annexB/global/escape/B.2.1.js similarity index 100% rename from test/annexB/B.2.1.js rename to test/annexB/global/escape/B.2.1.js diff --git a/test/annexB/B.2.1.propertyCheck.js b/test/annexB/global/escape/B.2.1.propertyCheck.js similarity index 100% rename from test/annexB/B.2.1.propertyCheck.js rename to test/annexB/global/escape/B.2.1.propertyCheck.js diff --git a/test/annexB/B.2.2.js b/test/annexB/global/unescape/B.2.2.js similarity index 100% rename from test/annexB/B.2.2.js rename to test/annexB/global/unescape/B.2.2.js diff --git a/test/annexB/B.2.2.propertyCheck.js b/test/annexB/global/unescape/B.2.2.propertyCheck.js similarity index 100% rename from test/annexB/B.2.2.propertyCheck.js rename to test/annexB/global/unescape/B.2.2.propertyCheck.js diff --git a/test/built-ins/Array/symbol-species-name.js b/test/built-ins/Array/Symbol.species/symbol-species-name.js similarity index 100% rename from test/built-ins/Array/symbol-species-name.js rename to test/built-ins/Array/Symbol.species/symbol-species-name.js diff --git a/test/built-ins/Array/symbol-species.js b/test/built-ins/Array/Symbol.species/symbol-species.js similarity index 100% rename from test/built-ins/Array/symbol-species.js rename to test/built-ins/Array/Symbol.species/symbol-species.js diff --git a/test/built-ins/ArrayBuffer/symbol-species-name.js b/test/built-ins/ArrayBuffer/Symbol.species/symbol-species-name.js similarity index 100% rename from test/built-ins/ArrayBuffer/symbol-species-name.js rename to test/built-ins/ArrayBuffer/Symbol.species/symbol-species-name.js diff --git a/test/built-ins/ArrayBuffer/symbol-species.js b/test/built-ins/ArrayBuffer/Symbol.species/symbol-species.js similarity index 100% rename from test/built-ins/ArrayBuffer/symbol-species.js rename to test/built-ins/ArrayBuffer/Symbol.species/symbol-species.js diff --git a/test/built-ins/Map/symbol-species-name.js b/test/built-ins/Map/Symbol.species/symbol-species-name.js similarity index 100% rename from test/built-ins/Map/symbol-species-name.js rename to test/built-ins/Map/Symbol.species/symbol-species-name.js diff --git a/test/built-ins/Map/symbol-species.js b/test/built-ins/Map/Symbol.species/symbol-species.js similarity index 100% rename from test/built-ins/Map/symbol-species.js rename to test/built-ins/Map/Symbol.species/symbol-species.js diff --git a/test/built-ins/Error/message_property_native_error.js b/test/built-ins/NativeErrors/message_property_native_error.js similarity index 100% rename from test/built-ins/Error/message_property_native_error.js rename to test/built-ins/NativeErrors/message_property_native_error.js diff --git a/test/built-ins/Promise/symbol-species-name.js b/test/built-ins/Promise/Symbol.species/symbol-species-name.js similarity index 100% rename from test/built-ins/Promise/symbol-species-name.js rename to test/built-ins/Promise/Symbol.species/symbol-species-name.js diff --git a/test/built-ins/Promise/symbol-species.js b/test/built-ins/Promise/Symbol.species/symbol-species.js similarity index 100% rename from test/built-ins/Promise/symbol-species.js rename to test/built-ins/Promise/Symbol.species/symbol-species.js diff --git a/test/built-ins/RegExp/symbol-species-name.js b/test/built-ins/RegExp/Symbol.species/symbol-species-name.js similarity index 100% rename from test/built-ins/RegExp/symbol-species-name.js rename to test/built-ins/RegExp/Symbol.species/symbol-species-name.js diff --git a/test/built-ins/RegExp/symbol-species.js b/test/built-ins/RegExp/Symbol.species/symbol-species.js similarity index 100% rename from test/built-ins/RegExp/symbol-species.js rename to test/built-ins/RegExp/Symbol.species/symbol-species.js diff --git a/test/built-ins/Set/symbol-species-name.js b/test/built-ins/Set/Symbol.species/symbol-species-name.js similarity index 100% rename from test/built-ins/Set/symbol-species-name.js rename to test/built-ins/Set/Symbol.species/symbol-species-name.js diff --git a/test/built-ins/Set/symbol-species.js b/test/built-ins/Set/Symbol.species/symbol-species.js similarity index 100% rename from test/built-ins/Set/symbol-species.js rename to test/built-ins/Set/Symbol.species/symbol-species.js