diff --git a/AppKit/CPAnimation.j b/AppKit/CPAnimation.j index e42302923..bfa1281c0 100644 --- a/AppKit/CPAnimation.j +++ b/AppKit/CPAnimation.j @@ -21,6 +21,7 @@ */ @import +@import @import "CAMediaTimingFunction.j" diff --git a/Foundation/CPCharacterSet.j b/Foundation/CPCharacterSet.j index 6a0b1d524..1ae78c8a8 100644 --- a/Foundation/CPCharacterSet.j +++ b/Foundation/CPCharacterSet.j @@ -231,6 +231,7 @@ var _builtInCharacterSets = {}; - (BOOL)hasMemberInPlane:(int)plane // TO DO : when inverted { + // FIXME: range is undefined... don't know what's supposed to be going on here. // the highest Unicode plane we reach. // (There are 65536 code points in each plane.) var maxPlane = Math.floor((range.start + range.length - 1) / 65536); // FIXME: should iterate _ranges diff --git a/Foundation/CPKeyValueCoding.j b/Foundation/CPKeyValueCoding.j index dc37816a8..765594331 100644 --- a/Foundation/CPKeyValueCoding.j +++ b/Foundation/CPKeyValueCoding.j @@ -23,10 +23,12 @@ @import "CPArray.j" @import "CPDictionary.j" @import "CPException.j" +@import "CPIndexSet.j" @import "CPNull.j" @import "CPObject.j" @import "CPSet.j" + CPUndefinedKeyException = @"CPUndefinedKeyException"; CPTargetObjectUserInfoKey = @"CPTargetObjectUserInfoKey"; CPUnknownUserInfoKey = @"CPUnknownUserInfoKey"; diff --git a/Foundation/CPPropertyListSerialization.j b/Foundation/CPPropertyListSerialization.j index d3db01600..65bddc405 100644 --- a/Foundation/CPPropertyListSerialization.j +++ b/Foundation/CPPropertyListSerialization.j @@ -20,8 +20,10 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +@import "CPException.j" @import "CPObject.j" + CPPropertyListUnknownFormat = 0; CPPropertyListOpenStepFormat = kCFPropertyListOpenStepFormat; CPPropertyListXMLFormat_v1_0 = kCFPropertyListXMLFormat_v1_0; diff --git a/Foundation/CPWebDAVManager.j b/Foundation/CPWebDAVManager.j index 01a614145..5a7a896ed 100644 --- a/Foundation/CPWebDAVManager.j +++ b/Foundation/CPWebDAVManager.j @@ -102,7 +102,7 @@ CPWebDAVManagerNonCollectionResourceType = 0; } if (!aBlock) - return makeContents(aURL, response); + return makeContents(aURL, [self PROPFIND:aURL properties:properties depth:1 block:nil]); [self PROPFIND:aURL properties:properties depth:1 block:function(aURL, response) { diff --git a/Jakefile b/Jakefile index 9d0427b91..5fc0ad990 100644 --- a/Jakefile +++ b/Jakefile @@ -253,18 +253,24 @@ task ("demos", function() // Testing -task("test", ["CommonJS", "test-only"]); +task("test", ["CommonJS", "test-only", "check-missing-imports"]); task("test-only", function() { - var tests = new FileList('Tests/**/*Test.j'); - var cmd = ["ojtest"].concat(tests.items()); + var tests = new FileList('Tests/**/*Test.j'), + cmd = ["ojtest"].concat(tests.items()), + code = OS.system(serializedENV() + " " + cmd.map(OS.enquote).join(" ")); - var code = OS.system(serializedENV() + " " + cmd.map(OS.enquote).join(" ")); if (code !== 0) OS.exit(code); +}); - OS.system(serializedENV() + " " + ["js", "Tests/DetectMissingImports.js"].map(OS.enquote).join(" ")); +task("check-missing-imports", function() +{ + var code = OS.system(serializedENV() + " " + ["js", "Tests/DetectMissingImports.js"].map(OS.enquote).join(" ")); + + if (code !== 0) + OS.exit(code); }); task("push-packages", ["push-cappuccino", "push-objective-j"]); diff --git a/Tests/DetectMissingImports.js b/Tests/DetectMissingImports.js index a5604b52b..67a0467d2 100644 --- a/Tests/DetectMissingImports.js +++ b/Tests/DetectMissingImports.js @@ -5,7 +5,11 @@ var FILE = require("file"), var cPreprocessedFileContents = function(aFilePath) { - var gcc = OS.popen("gcc -E -x c -P -DPLATFORM_COMMONJS " + OS.enquote(aFilePath), { charset:"UTF-8" }), + var INCLUDES = new FileList(FILE.join(FILE.dirname(aFilePath), "**", "*.h")).map(function(aFilename) + { + return "--include \"" + aFilename + "\""; + }).join(" "); + var gcc = OS.popen("gcc -E -x c -P -DPLATFORM_COMMONJS " + INCLUDES + " " + OS.enquote(aFilePath), { charset:"UTF-8" }), chunk, fileContents = "";