title: Mocking LUIS response with LuisRecognizer not working
body: <p>I am trying to mock calls to LUIS via nock, which uses the LuisRecognizer from botbuilder-ai. Here is the relevant information.</p>
  
  <p>The bot itself is calling LUIS and getting the result via <code>const recognizerResult = await this.dispatchRecognizer.recognize(context);</code>. I grabbed the actual result as below:</p>
  
  <pre><code>{"text":"I want to look up my order","intents":{"viewOrder":{"score":0.996454835},"srStatus":{"score":0.0172454268},"expediteOrder":{"score":0.0108480565},"escalate":{"score":0.007967358},"qna":{"score":0.00694736559},"Utilities_Cancel":{"score":0.005627355},"manageProfile":{"score":0.004953466},"getPricing":{"score":0.001781322},"Utilities_Help":{"score":0.0007197641},"getAvailability":{"score":0.0005667514},"None":{"score":0.000321137835}},"entities":{"$instance":{}},"sentiment":{"label":"negative","score":0.171873689},"luisResult":{"query":"I want to look up my order","topScoringIntent":{"intent":"viewOrder","score":0.996454835},"intents":[{"intent":"viewOrder","score":0.996454835},{"intent":"srStatus","score":0.0172454268},{"intent":"expediteOrder","score":0.0108480565},{"intent":"escalate","score":0.007967358},{"intent":"qna","score":0.00694736559},{"intent":"Utilities.Cancel","score":0.005627355},{"intent":"manageProfile","score":0.004953466},{"intent":"getPricing","score":0.001781322},{"intent":"Utilities.Help","score":0.0007197641},{"intent":"getAvailability","score":0.0005667514},{"intent":"None","score":0.000321137835}],"entities":[],"sentimentAnalysis":{"label":"negative","score":0.171873689}}}
  </code></pre>
  
  <p>For the sake of brevity, I'll just call this "recognizerResult" in the below. I'm successfully intercepting the API call in my test file with nock, with the configuration as follows:</p>
  
  <pre><code>nock('https://westus.api.cognitive.microsoft.com')
  .post(/.*/)
  .reply(200,{recognizerResult});
  </code></pre>
  
  <p>I've tried returning both as a JSON object and a string, though I'm almost certain this needs to be JSON object as shown (I'm mocking a call to QnA maker with the same approach that is working). When I run this test via mocha, I get the following error:</p>
  
  <pre><code>TypeError: Cannot read property 'replace' of undefined
      at LuisRecognizerV2.normalizeName (node_modules\botbuilder-ai\src\luisRecognizerOptionsV2.ts:96:21)
      at luisResult.intents.reduce (node_modules\botbuilder-ai\src\luisRecognizerOptionsV2.ts:104:31)
      at Array.reduce (&lt;anonymous&gt;)
      at LuisRecognizerV2.getIntents (node_modules\botbuilder-ai\src\luisRecognizerOptionsV2.ts:102:32)
      at LuisRecognizerV2.&lt;anonymous&gt; (node_modules\botbuilder-ai\src\luisRecognizerOptionsV2.ts:81:27)
      at Generator.next (&lt;anonymous&gt;)
      at fulfilled (node_modules\botbuilder-ai\lib\luisRecognizerOptionsV2.js:11:58)
      at process._tickCallback (internal/process/next_tick.js:68:7)
  </code></pre>
  
  <p>I've looked at the code in question within the luisRecognizerOptionsV2.ts file, but can't see where there's an issue. The replace is part of normalizing the intent name, which is there to replace unsupported characters with an "_". The bot runs normally when deployed to Azure (and locally), and the tests work without mocking the call. However, I really want to be able to test this without making actual LUIS calls. Any ideas why I am getting this error and how to fix?</p>
  
  <p>For reference, here is the mock to QnA Maker that is working, though note that I'm using a simple REST call for that instead of the recognizer.</p>
  
  <pre><code>nock('https://myqnaservicename.azurewebsites.net')
  .post(/.*/)
  .reply(200, {"answers": [{"questions": ["I need an unrecognized utterance for testing"], "answer": "I can hear you now!", "score": 28.48, "id": 1234}]});
  </code></pre>