2016-09-06 3 views
1

Я создал слой поверх Firebase Remote Config, который использует мое приложение, чтобы решить, включена или отключена функция, или получить пользовательские значения. Я написал несколько модульных тестов. Но похоже, что, когда люди используют приложение и получают значения из сети, они сохраняются и переопределяют значения по умолчанию, которые вы установили на FIRRemoteConfig с setDefaults. Это вызывает проблемы с моими модульными тестами.Возможно ли сбросить/сбросить значения, полученные с помощью Firebase Remote Config?

Есть ли способ, которым вы можете сообщить FIRRemoteConfig, чтобы забыть о сохраненных значениях и просто использовать установленные по умолчанию значения по умолчанию?

+0

Я удивлен, что для этого нет API. Это очень действительный запрос. –

ответ

0

Как пояснили в doc here, чтобы получить значение с сервера и использовать их, то Вам необходимо:

  1. вызов функции fetchWithCompletionHandler: или fetchWithExpirationDuration:completionHandler:
  2. вызов activateFetched

Что вы можете сделать для ваш модульный тест: используйте новую установку, комментарий/удалить вызов функции activateFetched, и он вернет значение по умолчанию va вы настроили.

0

Цель выбранных значений - переопределить ваши значения по умолчанию, которые в основном существуют, если пользователь не может подключиться к серверам firebase и получить конфигурацию.

Что вам нужно сделать, это либо:

  1. Не активировать неправдоподобные значения на тесте единицы, это оставило бы свои значения по умолчанию, как они. Это потребует от вас изменить вашу логику приложения, чтобы проверить, находитесь ли вы в модульном тесте.
  2. определите свойство пользователя (т. Е. «Test_run») и настройте удаленную конфигурацию, чтобы возвращать реальные значения только для пользователей с этим значением на false и значения, необходимые для тестирования, когда это правда, что является более чистым.

У меня есть некоторые сомнения относительно действительности теста, который не использует реальные значения.

 Смежные вопросы

  • Нет связанных вопросов^_^