Мне нужно написать единичный случай для миграции realm.io
. Как смоделировать до и после Object Class
?
Модульный тест RealmSwift для миграции Realm.io
Ответы (1)
Одним из решений является предварительно сохраненный файл области (например, в пакете модульного тестирования) с версией схемы, из которой вы хотите протестировать миграцию. Ваш объект области в коде хранится в самой последней версии, а схема области на диске содержит более старую версию.
Взгляните на пример переноса .
В образце есть версии V0
, V1
и V2
одного и того же объекта Person
, а также три разных файла базы данных областей с разными версиями схемы default-v0.realm
, default-v1.realm
и default-v2.realm
.
Затем один и тот же migrationBlock
используется во всех версиях базы данных, чтобы убедиться, что он может правильно преобразовать любую возможную старую схему в новейшую V2
.
person
Edman
schedule
28.10.2015
Спасибо! Как я мог пропустить это!
- person perwyl; 28.10.2015
Но разве открытие файла области и запуск миграции не изменяет файл на диске автоматически? Как бы вы запустили модульный тест во второй раз?
- person Daniel; 30.10.2015
Сделайте копию файла базы данных и используйте ее для запуска тестов.
- person Edman; 30.10.2015