diff --git a/test/built-ins/Promise/race/S25.4.4.3_A4.1_T1.js b/test/built-ins/Promise/race/S25.4.4.3_A4.1_T1.js
index 33f499ac1c72d856b3500977d0ca555dc21b597a..4b846ebd4df3b05860adc49a5df90b7847cae13e 100644
--- a/test/built-ins/Promise/race/S25.4.4.3_A4.1_T1.js
+++ b/test/built-ins/Promise/race/S25.4.4.3_A4.1_T1.js
@@ -8,21 +8,18 @@ description: Promise.race rejects if IteratorStep throws
 ---*/
 
 var iterThrows = {};
-Object.defineProperty(iterThrows, Symbol.iterator, {
-    get: function () {
-        return {
-            next: function () {
-                throw new Error("abrupt completion");
-            }
-        };
-    }
-});
+var error = new Test262Error();
+iterThrows[Symbol.iterator] = function () {
+    return {
+        next: function () {
+            throw error;
+        }
+    };
+};
 
 Promise.race(iterThrows).then(function () {
     $ERROR('Promise unexpectedly fulfilled: Promise.race(iterThrows) should throw TypeError');
-},function (err) {
-    if (!(err instanceof TypeError)) {
-        $ERROR('Expected TypeError, got ' + err);
-    }
+}, function (reason) {
+    assert.sameValue(reason, error);
 }).then($DONE,$DONE);