package com.airbnb.epoxy; import java.util.ArrayList; import java.util.List; class ModelTestUtils { private static final int DEFAULT_NUM_MODELS = 20; static void changeValues(List models) { changeValues(models, 0, models.size()); } static void changeValues(List models, int start, int count) { for (int i = start; i < count; i++) { models.set(i, ((TestModel) models.get(i)).clone().randomizeValue()); } } static void changeValue(EpoxyModel<?> model) { ((TestModel) model).randomizeValue(); } static void remove(List models, int start, int count) { models.subList(start, start + count).clear(); } static void removeModelsAfterPosition(List models, int start) { remove(models, start, models.size() - start); } static void addModels(List list) { addModels(DEFAULT_NUM_MODELS, list); } static void addModels(int count, List list) { addModels(count, list, list.size()); } static void addModels(List list, int index) { addModels(DEFAULT_NUM_MODELS, list, index); } static void addModels(int count, List list, int index) { List<TestModel> modelsToAdd = new ArrayList<>(count); for (int i = 0; i < count; i++) { modelsToAdd.add(new TestModel()); } list.addAll(index, modelsToAdd); } static List<EpoxyModel<?>> convertToGenericModels(List<TestModel> list) { List<EpoxyModel<?>> result = new ArrayList<>(list.size()); for (TestModel testModel : list) { result.add(testModel); } return result; } static List<TestModel> convertToTestModels(List<EpoxyModel<?>> list) { List<TestModel> result = new ArrayList<>(list.size()); for (EpoxyModel<?> model : list) { result.add((TestModel) model); } return result; } }