@Test
public void testBaseCases() {

  final ArrayList<FeatureOption> itemList1 = Lists.newArrayList(
      FeatureOption.newBuilder().setWeight(0).build(),
      FeatureOption.newBuilder().setWeight(10000).build()
  );
  OptionSelectorWeighted or1 = new OptionSelectorWeighted(itemList1);
  IntStream.range(0, 10000).forEach(i -> assertTrue(10000 == or1.select().getWeight()));
  final ArrayList<FeatureOption> itemList2 = Lists.newArrayList(
      FeatureOption.newBuilder().setWeight(10000).build()
  );
  OptionSelectorWeighted or2 = new OptionSelectorWeighted(itemList2);
  IntStream.range(0, 10000).forEach(i -> assertTrue(10000 == or2.select().getWeight()));
}