Commit Graph

396 Commits

Author SHA1 Message Date
Blake Watters
58d67c2229 Update project settings to enable easier symbolication. closes #1277 2013-03-13 21:52:56 -04:00
Blake Watters
334085def5 Drop the NSBundle category and instead migrate the functionality directly into RKTestFixture. This category seems unnecessary. 2013-03-10 15:09:43 -04:00
Blake Watters
e62a9862d7 Rework RKManagedObjectMappingOperationDataSource to avoid performing mutable(Array|Set|OrderedSet)ValueForKeyPath: unless there are existing objects and the identificationAttributes are nil. refs #1232 2013-03-10 14:22:38 -04:00
Blake Watters
240a2adb46 Reorder CocoaPods Copy Resources script to execute before tests 2013-02-08 10:41:26 -05:00
Blake Watters
c4beb1bd07 Ditch custom RunPlatformUnitTests script 2013-02-07 11:36:26 -05:00
Blake Watters
4407523fab Update projects for Xcode 4.6 and enable CLANG_WARN_ENUM_CONVERSION 2013-02-01 11:38:15 -05:00
Blake Watters
0364d6c67b Integrate support for metadata mapping routing data. refs #1174 2013-01-24 23:16:48 -05:00
Johannes Plunien
4ae497afb1 Add test to verify managedObjectContext on empty results. 2013-01-21 20:33:56 +01:00
Blake Watters
01c34fe289 Fix crash when mapping to NSManagedObject class with Transformable attribute without a backing property. fixes #1162 2013-01-17 10:38:53 -05:00
Johannes Plunien
62af9290d4 Add test case for unexpected NSSet. #1118 2013-01-16 14:01:39 -05:00
Blake Watters
868d83be2c Don't create unnecessary objects when mapping temporary managed objects POST'd without identification attributes. closes #1149 2013-01-15 22:45:43 -05:00
Blake Watters
f33a8bb405 Rework Pods to restore execution of OS X Framework tests 2013-01-15 09:07:23 -05:00
Blake Watters
4c0e62a62a Add new RKManagedObjectStore method for assisting in performing migrations when you have made dynamic modifications to the managed object model (such as when you leverage the Search indexing support) 2013-01-08 18:26:05 -05:00
Blake Watters
9005bd573c Add test coverage and fixes for RKMappingTest. closes #1086 2013-01-03 18:19:50 -05:00
Blake Watters
5c21e52829 Update Dynamic Mapping API's to match the rest of the 0.20.x style. Introduce support for predicate based dynamic matching.
* Rename RKDynamicMappingMatcher to RKObjectMappingMatcher since it is not strictly coupled to dynamic mapping and works with object mappings.
* Rework matchers into using a class cluster style to enable flexible subclassing to introduce additional matchers.
2012-12-27 22:16:40 -05:00
Blake Watters
97b60e64b1 Set AFNetworking headers to Public for OS X Framework target 2012-12-17 22:08:39 -05:00
Blake Watters
a424908242 Expand test coverage and fix all known issues with managed object refetching and deletion. closes #1066 2012-12-13 22:42:34 -05:00
Blake Watters
69c65ef8ab Override error implementation to correct the NSLocalizedDescription key for RKHTTPRequestOperation objects. fixes #1070 2012-12-11 23:12:20 -05:00
Blake Watters
4c735bafdd Updated mapping test API for 0.20
* Reimplemented connection tests to work with `RKConnectionDescription`. Introduced new `RKConnectionTestExpectation` class
* Slimmed down API by removing proxy methods on `RKMappingTest`
* Eliminated `verifiesOnExpect` behavior in favor of using `evaluateExpectation:`
* Ensured compatibility with RKKiwiMatchers
2012-12-09 12:24:30 -05:00
Blake Watters
b1f57612e1 Add support for replacing the HTTP client on the object manager and mutating the baseURL on the router. closes #1051 2012-12-07 13:49:18 -05:00
Blake Watters
79e31b524a Refactored managed object caches and connection support to enable connecting by multiple atributes that are specified as arrays.
* Migrated the caches to return `NSSet` to eliminate duplicate objects when your cache keys overlap
* Introduced new recursive strategy for building cache keys in `RKInMemoryManagedObjectCache`
* Added support for array cache key values in `RKFetchRequestManagedObjectCache`
* Re-enabled a slew of tests that were disabled during 0.20 development
2012-12-06 23:43:34 -05:00
Blake Watters
cbb3f70571 Eliminate the RKEntityIdentifier class and migrate the functionality into properties on RKEntityMapping 2012-12-02 13:08:52 -05:00
Blake Watters
6e03b0cac2 Set numerous files in the RestKitFramework target to Public. closes #1050 2012-12-02 10:15:05 -05:00
Blake Watters
41f85d84de Ensure RKConnectionDescription is Public 2012-11-28 23:26:08 -05:00
Blake Watters
b502f5431b Drop the entity description category entirely 2012-11-28 22:52:39 -05:00
Blake Watters
adf4a5d49e Drop RKConnectionMapping, cleanup. Add predicate support 2012-11-27 22:34:55 -05:00
Blake Watters
1196a42e54 Docs for RKConnectionDescription 2012-11-27 22:18:29 -05:00
Blake Watters
8dc54a89b2 Major overhaul to the Core Data managed object identification and relationship connection support.
* Replaces primary key with `RKEntityIdentifier`
* Add support for use of compound keys for object identification
* Refactor `RKConnectionMapping` to `RKConnectionDescription` and add support for connecting with multiple attributes
* Clarify naming of representation key methods to better match naming conventions
* Add type transformation support for object identification
* Greatly expand test coverage for object identification
* Drop the `NSEntityDescription` category
* Simplify the `RKManagedObjectCaching` protocol
* Add compound key support to the Fetch Request and In Memory Cache implementations
* Replace Kiwi with Specta for tests where contexts are helpful for organization
* Rename `defaultValueForMissingAttribute` to `defaultValueForAttribute`
2012-11-27 10:29:36 -05:00
Blake Watters
54dce20ac6 Rework paginator support for 0.20. closes #1024, #900, #759
* Renamed RKObjectPaginator to RKPaginator for simplicity
* Removed delegate on paginator in favor of simple success/failure blocks
* Added `willMapDeserializedResponseBlock` for manipulating the response body before mapping begins
* Added support for cancelling an in-progress pagination request
2012-11-18 22:44:33 -05:00
Blake Watters
f308b4d99a Update warning settings to Xcode 4.6 recommendations 2012-11-08 23:41:47 -05:00
Blake Watters
f2ff70177c Merge branch 'development' of github.com:CFKevinRef/RestKit into CFKevinRef-development 2012-11-07 21:59:38 -05:00
Blake Watters
de016e22f3 Refetch the mapping results from the original managed object context before returning to the caller. fixes #1011
Eliminate the thread safe invocation class.
2012-10-28 20:22:53 -04:00
Blake Watters
330e63a2d2 Add test coverage for default value of savesToPersistentStore attributes. closes #1000 2012-10-17 17:49:08 -04:00
Blake Watters
9d617c6c7b Add support for disconnecting relationships when mapping a related keypath whose value is equal to [NSNull null]. fixes #862 2012-10-16 20:48:27 -04:00
Blake Watters
342c57213b Updates to relationship connection execution system for better encapsulation and reuse.
* Reworked execution of relationship connection operations to use dependencies instead of queue suspension.
* Migrates responsibility for connecting relationships from `RKManagedObjectRequestOperation` into `RKManagedObjectResponseMapperOperation`. This ensures that you get a mapped and connected object graph back from the response mapper if you are using it outside of a request operation.
* Add `parentOperation` to managed object mapping data source to establish dependencies.
2012-10-15 16:06:22 -04:00
Blake Watters
d823217993 Add assertions to prevent attempts to create request descriptor objects with inappropriate mappings. fixes #976 2012-10-14 14:57:02 -04:00
Blake Watters
1beb11ac1b Moving tests around 2012-10-14 13:51:39 -04:00
Blake Watters
4a7ed3cbd3 Rename test files to align with classes 2012-10-14 13:51:39 -04:00
Blake Watters
8ae402e297 Add test coverage and fixed invalid error reporting when processing a client error that is empty and unmappable (i.e. {}). refs #983, closes #978 2012-10-06 01:54:12 -04:00
Blake Watters
f8bdeed777 Link CoreServices and SystemConfiguration with the OS X Framework tests 2012-10-05 21:50:25 -04:00
Blake Watters
877ce255b5 Expand test coverage and fix situations where requests would unexpectedly initialize incorrectly without error
* RKObjectParameterization now returns an empty dictionary if mapping produces an unmappable representation error (no mappable attributes/relationships found)
* Log errors if request construction results in an NSError and return nil
* Ensure errors are passed back up through object parameterization instead of just returning nil
* Reset the serialization MIME Type registry during RKTestFactory set up to ensure it is in a sane state
* Convert Hamcrest matchers to Expecta in the object mapper tests to fix infinite recursion on test failure (will need to completely phase out Hamcrest soon)
2012-10-05 19:16:55 -04:00
Blake Watters
0dc21fb95d Add caching helpers to the RKTestHelpers interface 2012-10-05 14:22:56 -04:00
Blake Watters
61a0a05b29 Drop ISO8601DateFormatter dependency since it has a time zone handling bug and switch to RK specific fork. fixes #971
* ARCify the ISO8601DateFormatter
2012-10-04 23:00:01 -04:00
Blake Watters
cf5ef24fe9 Eliminate use of associated objects on NSURL in favor of a smarter RKResponseDescriptor class to solve the relative URL problem. refs #966
Instead, fall back to treating all URL's as strings for matching purposes and manually performing relative URL testing. Adds `matchesURL:` and `matchesResponse:` methods to `RKResponseDescriptor`.
2012-10-04 14:11:05 -04:00
Blake Watters
73cd7a6705 Eliminated vendored copies of testing libraries in favor of Cocoapods. Add Kiwi to testing stack 2012-10-04 10:54:46 -04:00
Blake Watters
a10df02bf9 Add RKTestHelpers class containing helpful methods when working with object managers in unit and integration tests 2012-10-02 22:55:17 -04:00
Blake Watters
e1bf7e26a3 Remove RestKitResources target and references to UI assets that migrated to the table controller repository 2012-10-02 22:13:15 -04:00
Blake Watters
bacb6e8ba4 Remove RKTestResponseLoader 2012-10-02 22:10:36 -04:00
Blake Watters
c88627faf3 Enable missing newline warning 2012-10-02 10:47:16 -04:00
Blake Watters
d95fe5cd44 Break out reused functions for object mapping introspection into RKObjectUtilities 2012-09-30 12:49:59 -04:00