test_class.file: outland-feature-java/src/test/java/outland/feature/OptionSelectorBoolTest.java
test_class.identifier: OptionSelectorBoolTest
test_case.body: @Test
    public void testNotOne() {
      OptionSelectorBool oe = new OptionSelectorBool();
  
      final Feature feature = Feature.newBuilder()
          .setStatus(Status.off)
          .build();
  
      final OptionSelectorWeighted selector =
          new OptionSelectorWeighted(feature.getOptions().getItemsList());
  
      assertFalse(oe.selectBooleanOptions(feature.getOptions(), feature.getStatus(), selector));
  
      final Feature feature1 = Feature.newBuilder()
          .setStatus(Status.none)
          .build();
  
      final OptionSelectorWeighted selector1 =
          new OptionSelectorWeighted(feature.getOptions().getItemsList());
  
      assertFalse(oe.selectBooleanOptions(feature1.getOptions(), feature.getStatus(), selector1));
    }
test_case.class_method_signature: OptionSelectorBoolTest.testNotOne()
test_case.full_signature: @Test public void testNotOne()
test_case.identifier: testNotOne
test_case.invocations: build setStatus newBuilder getItemsList getOptions assertFalse selectBooleanOptions getOptions getStatus build setStatus newBuilder getItemsList getOptions assertFalse selectBooleanOptions getOptions getStatus
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testNotOne()
focal_class.file: outland-feature-java/src/main/java/outland/feature/OptionSelectorBool.java
focal_class.identifier: OptionSelectorBool
focal_class.class_method_signature: OptionSelectorBool.selectBooleanOptions(
        OptionCollection options,
        Status state,
        OptionSelectorWeighted optionSelectorWeighted
    )
focal_class.full_signature:  boolean selectBooleanOptions(
        OptionCollection options,
        Status state,
        OptionSelectorWeighted optionSelectorWeighted
    )
focal_class.identifier: selectBooleanOptions
focal_class.parameters: (
        OptionCollection options,
        Status state,
        OptionSelectorWeighted optionSelectorWeighted
    )
focal_class.return: boolean
focal_class.signature: boolean selectBooleanOptions(
        OptionCollection options,
        Status state,
        OptionSelectorWeighted optionSelectorWeighted
    )
focal_method.body: boolean selectBooleanOptions(
        OptionCollection options,
        Status state,
        OptionSelectorWeighted optionSelectorWeighted
    ) {
      if (!options.getOption().equals(OptionType.bool)) {
        return false; // todo: throw this?
      }
  
      if (!state.equals(Status.on)) {
        return false; // todo: replace with a fallback when we add fallbacks for options
      }
  
      final List<FeatureOption> optionsList = options.getItemsList();
  
      if (optionsList.get(0).getWeight() == 0 && optionsList.get(1).getWeight() == 0) {
        // zero/missing weights treated as a plain toggle
        return state.equals(Status.on);
      }
  
      return Boolean.parseBoolean(optionSelectorWeighted.select().getValue());
    }
focal_method.class_method_signature: OptionSelectorBool.selectBooleanOptions(
        OptionCollection options,
        Status state,
        OptionSelectorWeighted optionSelectorWeighted
    )
focal_method.full_signature:  boolean selectBooleanOptions(
        OptionCollection options,
        Status state,
        OptionSelectorWeighted optionSelectorWeighted
    )
focal_method.identifier: selectBooleanOptions
focal_method.invocations: equals getOption equals getItemsList getWeight get getWeight get equals parseBoolean getValue select
focal_method.parameters: (
        OptionCollection options,
        Status state,
        OptionSelectorWeighted optionSelectorWeighted
    )
focal_method.return: boolean
focal_method.signature: boolean selectBooleanOptions(
        OptionCollection options,
        Status state,
        OptionSelectorWeighted optionSelectorWeighted
    )