Создайте функции, чтобы создать и затем обновить дерево фабрики тулбокса и затем протестировать это, обновление завершается успешно.
Функциональный createMyToolboxFactoryTree создает дерево заводских настроек для тулбокса mytoolbox.
Создайте функциональный createMyToolboxSettingsFileUpgraders с пустым matlab.settings.SettingsFileUpgrader объект.
Создайте settingsInfo.json файл для тулбокса. Задайте mytoolbox как корневое название группы настроек, createMyToolboxFactoryTree как функция создания дерева настроек и createMyToolboxSettingsFileUpgraders как дерево настроек обновляют функцию. Поместите settingsInfo.json в тулбоксе resources папка.
Добавьте папку, которая содержит функцию создания дерева настроек и папку ресурсов тулбокса к пути MATLAB®. Затем загрузите дерево заводских настроек для mytoolbox.
Используйте settings функционируйте, чтобы получить доступ к корню дерева настроек и установить личностное значение для MyFontSize установка.
Поменяйте имена настроек в createMyToolboxFactoryTree от MyFontSize и MyFontColor к FontSize и FontColor.
Запишите переименовывание этих двух настроек в createMyToolboxSettingsFileUpgraders функционируйте как изменения в дереве настроек для версии 2 из mytoolbox. При записи переименовывания этих двух настроек введите ошибку в одном из путей. Например, удалите mytoolbox от целевого пути первого записанного изменения.
Перезагрузите дерево заводских настроек для mytoolbox.
Используйте settings функционируйте, чтобы получить доступ к корню дерева настроек и проверить личностную ценность для FontSize установка. Заметьте, что личностная ценность не была перемещена.
ans =
Setting 'mytoolbox.font.FontSize' with properties:
ActiveValue: 11
TemporaryValue: <no value>
PersonalValue: <no value>
FactoryValue: 11Получите результаты обновления для версии 2 из mytoolbox и проверяйте журнал исключения на первую операцию.
ans =
ReleaseCompatibilityException with properties:
ExceptionString: ''font.FontSize' is an invalid path for adding a new group.
The path needs to be relative to the master settings file
and cannot contain ".." between folder names.'
ExceptionID: "MATLAB:settings:config:PathNotRelativeToMasterFile"