2010-07-13 Sheriff Bot <webkit.review.bot@gmail.com>
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 14 Jul 2010 04:21:11 +0000 (04:21 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 14 Jul 2010 04:21:11 +0000 (04:21 +0000)
        Unreviewed, rolling out r63262.
        http://trac.webkit.org/changeset/63262
        https://bugs.webkit.org/show_bug.cgi?id=42229

        broke Windows compile (Requested by bweinstein on #webkit).

        * WebKit.pro:
2010-07-13  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r63262.
        http://trac.webkit.org/changeset/63262
        https://bugs.webkit.org/show_bug.cgi?id=42229

        broke Windows compile (Requested by bweinstein on #webkit).

        * API/tests/testapi.c:
        (assertEqualsAsCharactersPtr):
        (main):
        * testapi.pro: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@63277 268f45cc-cd09-0410-ab3c-d52691b4dbfc

ChangeLog
JavaScriptCore/API/tests/testapi.c
JavaScriptCore/ChangeLog
JavaScriptCore/testapi.pro [deleted file]
WebKit.pro

index eac4d77473011115c68e338298c1d1ef14c6f45e..b04876ad3fc75e40bd2659337f5e0de80713b375 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2010-07-13  Sheriff Bot  <webkit.review.bot@gmail.com>
+
+        Unreviewed, rolling out r63262.
+        http://trac.webkit.org/changeset/63262
+        https://bugs.webkit.org/show_bug.cgi?id=42229
+
+        broke Windows compile (Requested by bweinstein on #webkit).
+
+        * WebKit.pro:
+
 2010-07-13  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
 
         Reviewed by Oliver Hunt.
index 6577615481502e25ce50f7e50c292f2eea4a51fe..183abf59f1f286e848f168d2f03109be5a72522e 100644 (file)
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-#include "config.h"
-
-#if PLATFORM(CF)
 #include "JavaScriptCore.h"
-#else
-#include "JavaScript.h"
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-#endif
-
 #include "JSBasePrivate.h"
 #include "JSContextRefPrivate.h"
 #include "JSObjectRefPrivate.h"
@@ -102,8 +91,6 @@ static void assertEqualsAsUTF8String(JSValueRef value, const char* expectedValue
     JSStringRelease(valueAsString);
 }
 
-// FIXME: define this assert for non-CF platforms.
-#if PLATFORM(CF)
 static void assertEqualsAsCharactersPtr(JSValueRef value, const char* expectedValue)
 {
     JSStringRef valueAsString = JSValueToStringCopy(context, value, NULL);
@@ -132,7 +119,6 @@ static void assertEqualsAsCharactersPtr(JSValueRef value, const char* expectedVa
     free(cfBuffer);
     JSStringRelease(valueAsString);
 }
-#endif
 
 static bool timeZoneIsPST()
 {
@@ -831,81 +817,6 @@ static bool checkForCycleInPrototypeChain()
     return result;
 }
 
-#if PLATFORM(CF)
-// Test the JavaScriptCore specific API for converting JSStringRefs to/from CFStrings.
-static void testJSStringRefCF()
-{
-    UniChar singleUniChar = 65; // Capital A
-    CFMutableStringRef cfString =
-        CFStringCreateMutableWithExternalCharactersNoCopy(kCFAllocatorDefault,
-                                                          &singleUniChar,
-                                                          1,
-                                                          1,
-                                                          kCFAllocatorNull);
-
-    JSStringRef jsCFIString = JSStringCreateWithCFString(cfString);
-    JSValueRef jsCFString = JSValueMakeString(context, jsCFIString);
-
-    CFStringRef cfEmptyString = CFStringCreateWithCString(kCFAllocatorDefault, "", kCFStringEncodingUTF8);
-
-    JSStringRef jsCFEmptyIString = JSStringCreateWithCFString(cfEmptyString);
-    JSValueRef jsCFEmptyString = JSValueMakeString(context, jsCFEmptyIString);
-
-    CFIndex cfStringLength = CFStringGetLength(cfString);
-    UniChar *buffer = (UniChar*)malloc(cfStringLength * sizeof(UniChar));
-    CFStringGetCharacters(cfString,
-                          CFRangeMake(0, cfStringLength),
-                          buffer);
-    JSStringRef jsCFIStringWithCharacters = JSStringCreateWithCharacters((JSChar*)buffer, cfStringLength);
-    JSValueRef jsCFStringWithCharacters = JSValueMakeString(context, jsCFIStringWithCharacters);
-
-    JSStringRef jsCFEmptyIStringWithCharacters = JSStringCreateWithCharacters((JSChar*)buffer, CFStringGetLength(cfEmptyString));
-    free(buffer);
-    JSValueRef jsCFEmptyStringWithCharacters = JSValueMakeString(context, jsCFEmptyIStringWithCharacters);
-
-    ASSERT(JSValueGetType(context, jsCFString) == kJSTypeString);
-    ASSERT(JSValueGetType(context, jsCFStringWithCharacters) == kJSTypeString);
-    ASSERT(JSValueGetType(context, jsCFEmptyString) == kJSTypeString);
-    ASSERT(JSValueGetType(context, jsCFEmptyStringWithCharacters) == kJSTypeString);
-
-    assertEqualsAsBoolean(jsCFString, true);
-    assertEqualsAsBoolean(jsCFStringWithCharacters, true);
-    assertEqualsAsBoolean(jsCFEmptyString, false);
-    assertEqualsAsBoolean(jsCFEmptyStringWithCharacters, false);
-
-    assertEqualsAsNumber(jsCFString, nan(""));
-    assertEqualsAsNumber(jsCFStringWithCharacters, nan(""));
-    assertEqualsAsNumber(jsCFEmptyString, 0);
-    assertEqualsAsNumber(jsCFEmptyStringWithCharacters, 0);
-    ASSERT(sizeof(JSChar) == sizeof(UniChar));
-
-    assertEqualsAsCharactersPtr(jsCFString, "A");
-    assertEqualsAsCharactersPtr(jsCFStringWithCharacters, "A");
-    assertEqualsAsCharactersPtr(jsCFEmptyString, "");
-    assertEqualsAsCharactersPtr(jsCFEmptyStringWithCharacters, "");
-
-    assertEqualsAsUTF8String(jsCFString, "A");
-    assertEqualsAsUTF8String(jsCFStringWithCharacters, "A");
-    assertEqualsAsUTF8String(jsCFEmptyString, "");
-    assertEqualsAsUTF8String(jsCFEmptyStringWithCharacters, "");
-
-    CFStringRef cfJSString = JSStringCopyCFString(kCFAllocatorDefault, jsCFIString);
-    CFStringRef cfJSEmptyString = JSStringCopyCFString(kCFAllocatorDefault, jsCFEmptyIString);
-    ASSERT(CFEqual(cfJSString, cfString));
-    ASSERT(CFEqual(cfJSEmptyString, cfEmptyString));
-    CFRelease(cfJSString);
-    CFRelease(cfJSEmptyString);
-
-    CFRelease(cfString);
-    CFRelease(cfEmptyString);
-
-    JSStringRelease(jsCFIString);
-    JSStringRelease(jsCFEmptyIString);
-    JSStringRelease(jsCFIStringWithCharacters);
-    JSStringRelease(jsCFEmptyIStringWithCharacters);
-}
-#endif
-
 int main(int argc, char* argv[])
 {
     const char *scriptPath = "testapi.js";
@@ -958,6 +869,34 @@ int main(int argc, char* argv[])
     JSStringRef jsOneIString = JSStringCreateWithUTF8CString("1");
     JSValueRef jsOneString = JSValueMakeString(context, jsOneIString);
 
+    UniChar singleUniChar = 65; // Capital A
+    CFMutableStringRef cfString = 
+        CFStringCreateMutableWithExternalCharactersNoCopy(kCFAllocatorDefault,
+                                                          &singleUniChar,
+                                                          1,
+                                                          1,
+                                                          kCFAllocatorNull);
+
+    JSStringRef jsCFIString = JSStringCreateWithCFString(cfString);
+    JSValueRef jsCFString = JSValueMakeString(context, jsCFIString);
+    
+    CFStringRef cfEmptyString = CFStringCreateWithCString(kCFAllocatorDefault, "", kCFStringEncodingUTF8);
+    
+    JSStringRef jsCFEmptyIString = JSStringCreateWithCFString(cfEmptyString);
+    JSValueRef jsCFEmptyString = JSValueMakeString(context, jsCFEmptyIString);
+
+    CFIndex cfStringLength = CFStringGetLength(cfString);
+    UniChar* buffer = (UniChar*)malloc(cfStringLength * sizeof(UniChar));
+    CFStringGetCharacters(cfString, 
+                          CFRangeMake(0, cfStringLength), 
+                          buffer);
+    JSStringRef jsCFIStringWithCharacters = JSStringCreateWithCharacters((JSChar*)buffer, cfStringLength);
+    JSValueRef jsCFStringWithCharacters = JSValueMakeString(context, jsCFIStringWithCharacters);
+    
+    JSStringRef jsCFEmptyIStringWithCharacters = JSStringCreateWithCharacters((JSChar*)buffer, CFStringGetLength(cfEmptyString));
+    free(buffer);
+    JSValueRef jsCFEmptyStringWithCharacters = JSValueMakeString(context, jsCFEmptyIStringWithCharacters);
+
     ASSERT(JSValueGetType(context, jsUndefined) == kJSTypeUndefined);
     ASSERT(JSValueGetType(context, jsNull) == kJSTypeNull);
     ASSERT(JSValueGetType(context, jsTrue) == kJSTypeBoolean);
@@ -967,13 +906,10 @@ int main(int argc, char* argv[])
     ASSERT(JSValueGetType(context, jsOneThird) == kJSTypeNumber);
     ASSERT(JSValueGetType(context, jsEmptyString) == kJSTypeString);
     ASSERT(JSValueGetType(context, jsOneString) == kJSTypeString);
-
-    // FIXME: Add tests for JSStringCreateWithCharacters, they are only covered in the
-    // CoreFoundation-specific tests.
-
-#if PLATFORM(CF)
-    testJSStringRefCF();
-#endif
+    ASSERT(JSValueGetType(context, jsCFString) == kJSTypeString);
+    ASSERT(JSValueGetType(context, jsCFStringWithCharacters) == kJSTypeString);
+    ASSERT(JSValueGetType(context, jsCFEmptyString) == kJSTypeString);
+    ASSERT(JSValueGetType(context, jsCFEmptyStringWithCharacters) == kJSTypeString);
 
     JSObjectRef myObject = JSObjectMake(context, MyObject_class(context), NULL);
     JSStringRef myObjectIString = JSStringCreateWithUTF8CString("MyObject");
@@ -1027,8 +963,7 @@ int main(int argc, char* argv[])
     
     JSGarbageCollect(context);
     
-    int i;
-    for (i = 0; i < 10000; i++)
+    for (int i = 0; i < 10000; i++)
         JSObjectMake(context, 0, 0);
 
     aHeapRef = JSValueToObject(context, JSObjectGetPrivateProperty(context, myObject, privatePropertyName), 0);
@@ -1130,6 +1065,10 @@ int main(int argc, char* argv[])
     assertEqualsAsBoolean(jsOneThird, true);
     assertEqualsAsBoolean(jsEmptyString, false);
     assertEqualsAsBoolean(jsOneString, true);
+    assertEqualsAsBoolean(jsCFString, true);
+    assertEqualsAsBoolean(jsCFStringWithCharacters, true);
+    assertEqualsAsBoolean(jsCFEmptyString, false);
+    assertEqualsAsBoolean(jsCFEmptyStringWithCharacters, false);
     
     assertEqualsAsNumber(jsUndefined, nan(""));
     assertEqualsAsNumber(jsNull, 0);
@@ -1140,9 +1079,12 @@ int main(int argc, char* argv[])
     assertEqualsAsNumber(jsOneThird, 1.0 / 3.0);
     assertEqualsAsNumber(jsEmptyString, 0);
     assertEqualsAsNumber(jsOneString, 1);
+    assertEqualsAsNumber(jsCFString, nan(""));
+    assertEqualsAsNumber(jsCFStringWithCharacters, nan(""));
+    assertEqualsAsNumber(jsCFEmptyString, 0);
+    assertEqualsAsNumber(jsCFEmptyStringWithCharacters, 0);
+    ASSERT(sizeof(JSChar) == sizeof(UniChar));
     
-// FIXME: Implement assertEqualsAsCharactersPtr for non-CF platforms.
-#if PLATFORM(CF)
     assertEqualsAsCharactersPtr(jsUndefined, "undefined");
     assertEqualsAsCharactersPtr(jsNull, "null");
     assertEqualsAsCharactersPtr(jsTrue, "true");
@@ -1152,7 +1094,10 @@ int main(int argc, char* argv[])
     assertEqualsAsCharactersPtr(jsOneThird, "0.3333333333333333");
     assertEqualsAsCharactersPtr(jsEmptyString, "");
     assertEqualsAsCharactersPtr(jsOneString, "1");
-#endif
+    assertEqualsAsCharactersPtr(jsCFString, "A");
+    assertEqualsAsCharactersPtr(jsCFStringWithCharacters, "A");
+    assertEqualsAsCharactersPtr(jsCFEmptyString, "");
+    assertEqualsAsCharactersPtr(jsCFEmptyStringWithCharacters, "");
     
     assertEqualsAsUTF8String(jsUndefined, "undefined");
     assertEqualsAsUTF8String(jsNull, "null");
@@ -1163,6 +1108,10 @@ int main(int argc, char* argv[])
     assertEqualsAsUTF8String(jsOneThird, "0.3333333333333333");
     assertEqualsAsUTF8String(jsEmptyString, "");
     assertEqualsAsUTF8String(jsOneString, "1");
+    assertEqualsAsUTF8String(jsCFString, "A");
+    assertEqualsAsUTF8String(jsCFStringWithCharacters, "A");
+    assertEqualsAsUTF8String(jsCFEmptyString, "");
+    assertEqualsAsUTF8String(jsCFEmptyStringWithCharacters, "");
     
     ASSERT(JSValueIsStrictEqual(context, jsTrue, jsTrue));
     ASSERT(!JSValueIsStrictEqual(context, jsOne, jsOneString));
@@ -1170,7 +1119,16 @@ int main(int argc, char* argv[])
     ASSERT(JSValueIsEqual(context, jsOne, jsOneString, NULL));
     ASSERT(!JSValueIsEqual(context, jsTrue, jsFalse, NULL));
     
+    CFStringRef cfJSString = JSStringCopyCFString(kCFAllocatorDefault, jsCFIString);
+    CFStringRef cfJSEmptyString = JSStringCopyCFString(kCFAllocatorDefault, jsCFEmptyIString);
+    ASSERT(CFEqual(cfJSString, cfString));
+    ASSERT(CFEqual(cfJSEmptyString, cfEmptyString));
+    CFRelease(cfJSString);
+    CFRelease(cfJSEmptyString);
 
+    CFRelease(cfString);
+    CFRelease(cfEmptyString);
+    
     jsGlobalValue = JSObjectMake(context, NULL, NULL);
     makeGlobalNumberValue(context);
     JSValueProtect(context, jsGlobalValue);
@@ -1298,7 +1256,7 @@ int main(int argc, char* argv[])
 
     o = JSObjectMake(context, NULL, NULL);
     JSObjectSetProperty(context, o, jsOneIString, JSValueMakeNumber(context, 1), kJSPropertyAttributeNone, NULL);
-    JSObjectSetProperty(context, o, propertyName, JSValueMakeNumber(context, 1), kJSPropertyAttributeDontEnum, NULL);
+    JSObjectSetProperty(context, o, jsCFIString,  JSValueMakeNumber(context, 1), kJSPropertyAttributeDontEnum, NULL);
     JSPropertyNameArrayRef nameArray = JSObjectCopyPropertyNames(context, o);
     size_t expectedCount = JSPropertyNameArrayGetCount(nameArray);
     size_t count;
@@ -1399,13 +1357,9 @@ int main(int argc, char* argv[])
         else {
             printf("FAIL: Test script returned unexpected value:\n");
             JSStringRef exceptionIString = JSValueToStringCopy(context, exception, NULL);
-
-            size_t sizeUTF8 = JSStringGetMaximumUTF8CStringSize(exceptionIString);
-            char *exceptionUTF8 = malloc(sizeUTF8);
-            JSStringGetUTF8CString(exceptionIString, exceptionUTF8, sizeUTF8);
-            printf("%s\n", exceptionUTF8);
-            free(exceptionUTF8);
-
+            CFStringRef exceptionCF = JSStringCopyCFString(kCFAllocatorDefault, exceptionIString);
+            CFShow(exceptionCF);
+            CFRelease(exceptionCF);
             JSStringRelease(exceptionIString);
             failed = 1;
         }
@@ -1422,6 +1376,10 @@ int main(int argc, char* argv[])
 
     JSStringRelease(jsEmptyIString);
     JSStringRelease(jsOneIString);
+    JSStringRelease(jsCFIString);
+    JSStringRelease(jsCFEmptyIString);
+    JSStringRelease(jsCFIStringWithCharacters);
+    JSStringRelease(jsCFEmptyIStringWithCharacters);
     JSStringRelease(goodSyntax);
     JSStringRelease(badSyntax);
 
index 197290708d97cc72ca25addb83c48db14629707b..bad48d8e126caa542673d7fb2496ddf52cbfd706 100644 (file)
@@ -1,3 +1,16 @@
+2010-07-13  Sheriff Bot  <webkit.review.bot@gmail.com>
+
+        Unreviewed, rolling out r63262.
+        http://trac.webkit.org/changeset/63262
+        https://bugs.webkit.org/show_bug.cgi?id=42229
+
+        broke Windows compile (Requested by bweinstein on #webkit).
+
+        * API/tests/testapi.c:
+        (assertEqualsAsCharactersPtr):
+        (main):
+        * testapi.pro: Removed.
+
 2010-07-13  Oliver Hunt  <oliver@apple.com>
 
         Reviewed by Gavin Barraclough.
diff --git a/JavaScriptCore/testapi.pro b/JavaScriptCore/testapi.pro
deleted file mode 100644 (file)
index 5bc11e0..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-TEMPLATE = app
-TARGET = testapi
-SOURCES = API/tests/testapi.c
-QT -= gui
-CONFIG -= app_bundle
-CONFIG += building-libs
-win32-*: CONFIG += console
-win32-msvc*: CONFIG += exceptions_off stl_off
-
-isEmpty(OUTPUT_DIR): OUTPUT_DIR= ..
-include($$PWD/../WebKit.pri)
-
-CONFIG += link_pkgconfig
-
-QMAKE_RPATHDIR += $$OUTPUT_DIR/lib
-
-!CONFIG(release, debug|release) {
-    OBJECTS_DIR = obj/debug
-} else { # Release
-    OBJECTS_DIR = obj/release
-}
-OBJECTS_DIR_WTR = $$OBJECTS_DIR$${QMAKE_DIR_SEP}
-include($$PWD/JavaScriptCore.pri)
-addJavaScriptCoreLib(.)
-
-symbian {
-    TARGET.CAPABILITY = ReadUserData WriteUserData NetworkServices
-}
-
-mac {
-    LIBS_PRIVATE += -framework AppKit
-}
index 6c178ab9c423af0feb78cfd9be504eccbdc2a80c..d8c1bc5970c79e4f5c8509bf6e9b84855d2c9300 100644 (file)
@@ -13,7 +13,6 @@ contains(QT_CONFIG, declarative) {
     exists($$PWD/WebKit/qt/declarative): SUBDIRS += WebKit/qt/declarative
 }
 exists($$PWD/JavaScriptCore/jsc.pro): SUBDIRS += JavaScriptCore/jsc.pro
-exists($$PWD/JavaScriptCore/testapi.pro): SUBDIRS += JavaScriptCore/testapi.pro
 exists($$PWD/WebKit/qt/tests): SUBDIRS += WebKit/qt/tests
 exists($$PWD/WebKitTools/DumpRenderTree/qt/DumpRenderTree.pro): SUBDIRS += WebKitTools/DumpRenderTree/qt/DumpRenderTree.pro
 exists($$PWD/WebKitTools/DumpRenderTree/qt/ImageDiff.pro): SUBDIRS += WebKitTools/DumpRenderTree/qt/ImageDiff.pro