El object tiene una class diferente después de archivar / desarchivar

Estoy trabajando en una base de código Objective-C para un proyecto de iPad con iOS 6.

Después de refactorizar el nombre de la class 'ClassA' a 'ClassB', encuentro que la siguiente testing falla:

NSData *encodedObject = [NSKeyedArchiver archivedDataWithRootObject:objectOfClassB]; ServiceOrderOld *decodedObject = [NSKeyedUnarchiver unarchiveObjectWithData:encodedObject]; [[[decodedObject class] should] equal:[objectOfClassB class]]; 

El post de error que obtengo dice: "[FAILED], sujeto esperado a igual ClassB, obtuvo ClassB"

¿Qué podría estar causando este extraño comportamiento? ¿Algún consejo para depurar esto?

Espero que no sea demasiado tarde;)

Tuve el mismo problema al probar un marco. Resulta que la class en cuestión también estaba en el objective de la testing. Creo que luego no coinciden (¡pero comstackr!) Con la class del framework. Eliminé la class del objective de la testing y la testing pasa.

Parece que la class es realmente irrelevante para el mecanismo de file. ¿Intentaste simplemente volver a lanzar la class cuando desarchivas?

 DesinetworkingClass *object = (DesinetworkingClass*) [NSKeyedUnarchiver unarchiveObjectWithData:encodedObject];