docs: function getOptionsToHandle(options, optionsSpec) {
      assert.object(options, 'options');
      assert.object(optionsSpec, 'optionsSpec');
  
      var optionName;
      var optionValue;
      var optionsToHandle = [];
      var testNeedHandlingFn;
  
      for (optionName in options) {
          if (!Object.hasOwnProperty.call(options, optionName)) {
              continue;
          }
  
          if (optionsSpec[optionName] !== undefined) {
              assert.object(optionsSpec[optionName], 'optionsSpec[optionName]');
              testNeedHandlingFn = optionsSpec[optionName].testNeedHandling;
              assert.func(testNeedHandlingFn, 'testNeedHandlingFn');
  
              optionValue = options[optionName];
              if (testNeedHandlingFn(optionValue)) {
                  optionsToHandle.push(optionName);
              }
          }
      }
  
      return (optionsToHandle);
  }