Function returning true and false in React Native

I am making a simple validation function that just validates that the props given to the component are not null. When the function runs it gets to the last conditional and logs 'made it' but then also logs '1' which is the else for the first conditional and returns false. I am not sure why its getting to the last conditional and its not returning true. I have also tried using else if statements.

         function testValidation(firstOptionWords, secondOptionWords, chooseFirst,  chooseSecond) {

      if(props.enabled) {



        if(firstOptionWords && secondOptionWords) return true; 

          if(firstOptionWords.length > 0 && secondOptionWords.length > 0) return true;

            if(chooseFirst != null && chooseSecond != null) return true;
            return false;
          }

       else {

        console.log('Choice is false!')
      }
     }

     const speechRecognizing = async (firstOptionWords, secondOptionWords, chooseFirst,  chooseSecond) => {

      const results = partialResults.map(function (x) {return x.toLowerCase()});
      const matched1 =  firstOptionWords.some(options => results.includes(options));
      const matched2 =  secondOptionWords.some(options => results.includes(options)); 
      const matchedWildCard = partialResults.length > 0 && firstOptionWords.includes('\*');

      try {
            if(testValidation()) {

              await Voice.isRecognizing();

              const voiceIsRecognizing = await Voice.isRecognizing();
              
                  // TODO run checklists and clean up code, and comment where nessecary. Make sure that all promises are resolved and the library functionality is to design spec.
                  if(voiceIsRecognizing) { 

                      if(matched1 || matchedWildCard) {
                          
                          
                          chooseFirst();
                          stopAndDestroy();
                          
          
                      } else if (matched2) {

                         
          
                        chooseSecond();
                        stopAndDestroy();
          
                      } else {
                          
                          stopAndDestroy();
                      }
                    
  
                  } else {
                      
                      console.log('STARTING');
                      startRecognizing();
                  
                  }

            } else {

              console.log('Validation did not pass')
            } 
      } catch (error) {
          
          console.log(error);
      }
  }

  
  useEffect(() => {
    
    testValidation(props.firstOptionWords, props.secondOptionWords, props.chooseFirst, props.chooseSecond); 
    speechRecognizing(props.firstOptionWords, props.secondOptionWords, props.chooseFirst, props.chooseSecond);
      
      
      }, [partialResults, props.enabled]);