Source/WebCore/ChangeLog

 12014-12-08 Shivakumar JM <shiva.jm@samsung.com>
 2
 3 DOMError should be constructible as per the DOM4 specification.
 4 https://bugs.webkit.org/show_bug.cgi?id=139173
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 DOMError should be constructible as per the DOM4 specification.
 9 I have confirmed this indeed matches the behavior of Chrome and Firefox.
 10 The patch is inspired by the following Blink revision by
 11 <ch.dumez@samsung.com>:
 12 <https://src.chromium.org/viewvc/blink?view=revision&revision=172718>
 13
 14 Test: fast/dom/DOMError-constructor.html
 15
 16 * dom/DOMError.cpp:
 17 (WebCore::DOMError::DOMError):
 18 * dom/DOMError.h:
 19 (WebCore::DOMError::create):
 20 (WebCore::DOMError::message):
 21 * dom/DOMError.idl:
 22
1232014-12-08 Benjamin Poulain <bpoulain@apple.com>
224
325 Fix the iOS build after r177002
177006

Source/WebCore/dom/DOMError.cpp

2929
3030namespace WebCore {
3131
32 DOMError::DOMError(const String& name)
 32DOMError::DOMError(const String& name, const String& message)
3333 : m_name(name)
 34 , m_message(message)
3435{
3536}
3637
176943

Source/WebCore/dom/DOMError.h

@@namespace WebCore {
3434
3535class DOMError : public RefCounted<DOMError> {
3636public:
37  static PassRefPtr<DOMError> create(const String& name)
 37 static PassRefPtr<DOMError> create(const String& name, const String& message = String())
3838 {
39  return adoptRef(new DOMError(name));
 39 return adoptRef(new DOMError(name, message));
4040 }
 41
4142 virtual ~DOMError() { }
4243
4344 const String& name() const { return m_name; }
 45 const String& message() const { return m_message; }
4446
4547protected:
46  explicit DOMError(const String& name);
 48 explicit DOMError(const String& name, const String& message = String());
4749
4850private:
4951 const String m_name;
 52 const String m_message;
5053};
5154
5255} // namespace WebCore
176943

Source/WebCore/dom/DOMError.idl

2626 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2727 */
2828[
29  NoInterfaceObject,
 29 Constructor(DOMString name, [Default=NullString] optional DOMString message),
3030 SkipVTableValidation
3131] interface DOMError {
3232 readonly attribute DOMString name;
 33 readonly attribute DOMString message;
3334};
3435
176943

LayoutTests/ChangeLog

 12014-12-08 Shivakumar JM <shiva.jm@samsung.com>
 2
 3 DOMError should be constructible as per the DOM4 specification.
 4 https://bugs.webkit.org/show_bug.cgi?id=139173
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 The patch is inspired by the following Blink revision by
 9 <ch.dumez@samsung.com>:
 10 <https://src.chromium.org/viewvc/blink?view=revision&revision=172718>
 11
 12 * fast/dom/DOMError-constructor-expected.txt: Added.
 13 * fast/dom/DOMError-constructor.html: Added.
 14 * js/dom/global-constructors-attributes-expected.txt:
 15 * platform/efl/js/dom/global-constructors-attributes-expected.txt:
 16 * platform/gtk/js/dom/global-constructors-attributes-expected.txt:
 17 * platform/mac/js/dom/global-constructors-attributes-expected.txt:
 18 * platform/win/js/dom/global-constructors-attributes-expected.txt:
 19
1202014-12-08 Myles C. Maxfield <mmaxfield@apple.com>
221
322 Rebaseline Mavericks test results after r176978.
177006

LayoutTests/fast/dom/DOMError-constructor-expected.txt

 1Tests for DOMError constructor.
 2
 3On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
 4
 5
 6PASS error = new DOMError('NotFoundError', 'This item was not found.') did not throw exception.
 7PASS error.name is "NotFoundError"
 8PASS error.message is "This item was not found."
 9PASS error = new DOMError('IndexSizeError') did not throw exception.
 10PASS error.name is "IndexSizeError"
 11PASS error.message is ""
 12PASS new DOMError() threw exception TypeError: Not enough arguments.
 13PASS successfullyParsed is true
 14
 15TEST COMPLETE
 16
0

LayoutTests/fast/dom/DOMError-constructor.html

 1<!DOCTYPE html>
 2<html>
 3<head>
 4<script src="../../resources/js-test.js"></script>
 5</head>
 6<body>
 7<script>
 8 description("Tests for DOMError constructor.");
 9 var error;
 10 shouldNotThrow("error = new DOMError('NotFoundError', 'This item was not found.')");
 11 shouldBeEqualToString("error.name", "NotFoundError");
 12 shouldBeEqualToString("error.message", "This item was not found.");
 13 shouldNotThrow("error = new DOMError('IndexSizeError')");
 14 shouldBeEqualToString("error.name", "IndexSizeError");
 15 shouldBeEqualToString("error.message", "");
 16 shouldThrow("new DOMError()", '"TypeError: Not enough arguments"');
 17</script>
 18</body>
 19</html>
0

LayoutTests/js/dom/global-constructors-attributes-expected.txt

@@PASS Object.getOwnPropertyDescriptor(glo
233233PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').hasOwnProperty('set') is false
234234PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').enumerable is false
235235PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').configurable is true
 236PASS Object.getOwnPropertyDescriptor(global, 'DOMError').value is DOMError
 237PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('get') is false
 238PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('set') is false
 239PASS Object.getOwnPropertyDescriptor(global, 'DOMError').enumerable is false
 240PASS Object.getOwnPropertyDescriptor(global, 'DOMError').configurable is true
236241PASS Object.getOwnPropertyDescriptor(global, 'DOMException').value is DOMException
237242PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('get') is false
238243PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('set') is false
176943

LayoutTests/platform/efl/js/dom/global-constructors-attributes-expected.txt

@@PASS Object.getOwnPropertyDescriptor(glo
238238PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').hasOwnProperty('set') is false
239239PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').enumerable is false
240240PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').configurable is true
 241PASS Object.getOwnPropertyDescriptor(global, 'DOMError').value is DOMError
 242PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('get') is false
 243PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('set') is false
 244PASS Object.getOwnPropertyDescriptor(global, 'DOMError').enumerable is false
 245PASS Object.getOwnPropertyDescriptor(global, 'DOMError').configurable is true
241246PASS Object.getOwnPropertyDescriptor(global, 'DOMException').value is DOMException
242247PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('get') is false
243248PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('set') is false
176943

LayoutTests/platform/gtk/js/dom/global-constructors-attributes-expected.txt

@@PASS Object.getOwnPropertyDescriptor(glo
238238PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').hasOwnProperty('set') is false
239239PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').enumerable is false
240240PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').configurable is true
 241PASS Object.getOwnPropertyDescriptor(global, 'DOMError').value is DOMError
 242PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('get') is false
 243PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('set') is false
 244PASS Object.getOwnPropertyDescriptor(global, 'DOMError').enumerable is false
 245PASS Object.getOwnPropertyDescriptor(global, 'DOMError').configurable is true
241246PASS Object.getOwnPropertyDescriptor(global, 'DOMException').value is DOMException
242247PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('get') is false
243248PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('set') is false
176943

LayoutTests/platform/mac-mavericks/js/dom/global-constructors-attributes-expected.txt

@@PASS Object.getOwnPropertyDescriptor(glo
233233PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').hasOwnProperty('set') is false
234234PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').enumerable is false
235235PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').configurable is true
 236PASS Object.getOwnPropertyDescriptor(global, 'DOMError').value is DOMError
 237PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('get') is false
 238PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('set') is false
 239PASS Object.getOwnPropertyDescriptor(global, 'DOMError').enumerable is false
 240PASS Object.getOwnPropertyDescriptor(global, 'DOMError').configurable is true
236241PASS Object.getOwnPropertyDescriptor(global, 'DOMException').value is DOMException
237242PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('get') is false
238243PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('set') is false
176943

LayoutTests/platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt

@@PASS Object.getOwnPropertyDescriptor(glo
233233PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').hasOwnProperty('set') is false
234234PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').enumerable is false
235235PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').configurable is true
 236PASS Object.getOwnPropertyDescriptor(global, 'DOMError').value is DOMError
 237PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('get') is false
 238PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('set') is false
 239PASS Object.getOwnPropertyDescriptor(global, 'DOMError').enumerable is false
 240PASS Object.getOwnPropertyDescriptor(global, 'DOMError').configurable is true
236241PASS Object.getOwnPropertyDescriptor(global, 'DOMException').value is DOMException
237242PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('get') is false
238243PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('set') is false
176943

LayoutTests/platform/mac/js/dom/global-constructors-attributes-expected.txt

@@PASS Object.getOwnPropertyDescriptor(glo
233233PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').hasOwnProperty('set') is false
234234PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').enumerable is false
235235PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').configurable is true
 236PASS Object.getOwnPropertyDescriptor(global, 'DOMError').value is DOMError
 237PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('get') is false
 238PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('set') is false
 239PASS Object.getOwnPropertyDescriptor(global, 'DOMError').enumerable is false
 240PASS Object.getOwnPropertyDescriptor(global, 'DOMError').configurable is true
236241PASS Object.getOwnPropertyDescriptor(global, 'DOMException').value is DOMException
237242PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('get') is false
238243PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('set') is false
176943

LayoutTests/platform/win/js/dom/global-constructors-attributes-expected.txt

@@PASS Object.getOwnPropertyDescriptor(glo
173173PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').hasOwnProperty('set') is false
174174PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').enumerable is false
175175PASS Object.getOwnPropertyDescriptor(global, 'CustomEvent').configurable is true
 176PASS Object.getOwnPropertyDescriptor(global, 'DOMError').value is DOMError
 177PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('get') is false
 178PASS Object.getOwnPropertyDescriptor(global, 'DOMError').hasOwnProperty('set') is false
 179PASS Object.getOwnPropertyDescriptor(global, 'DOMError').enumerable is false
 180PASS Object.getOwnPropertyDescriptor(global, 'DOMError').configurable is true
176181PASS Object.getOwnPropertyDescriptor(global, 'DOMException').value is DOMException
177182PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('get') is false
178183PASS Object.getOwnPropertyDescriptor(global, 'DOMException').hasOwnProperty('set') is false
176943