title: Directive with templateUrl - testing with ng-html2js
body: <p>I created a directive with inline template, tested it, everything worked fine. Now I have put the template into separated .html file and reference it via <code>templateUrl</code> from directive. Directive works on my page, but the tests are broken saying:</p>
  
  <pre><code>        Error: [$injector:modulerr] Failed to instantiate module source/html/par
  tials/template-directive-my-directive.html due to:
          Error: [$injector:nomod] Module 'source/html/partials/template-directive
  -my-directive.html' is not available! You either misspelled the module name
  or forgot to load it. If registering a module ensure that you specify the depend
  encies as the second argument.
  </code></pre>
  
  <p>I used <a href="https://www.npmjs.org/package/karma-ng-html2js-preprocessor" rel="noreferrer">ng-html2js preprocessor</a> with no luck (the error above), trying different paths and prefixes in my karma config and unit test module loading. Can anybody see what is wrong (which path, or maybe something different?) ?</p>
  
  <p>My structure is:</p>
  
  <pre><code>ui/Gruntfile.js // contains the karma config
  ui/source/html/index.html
  ui/source/html/partials/template-directive-my-directive.html
  ui/source/js/my-directive.js
  ui/source/tests/unit/unit-my-directive.js
  </code></pre>
  
  <p>Inside of Gruntfile.js:</p>
  
  <pre><code>karma : {
      unit : {
          options : {
              files : [
                  'source/lib/angular/angular.js', // angular first
                  'source/lib/angular/*.js', // then any other angular files...
                  'source/lib/x2js/xml2json.min.js',
                  'source/lib/jquery/jquery.js',
                  'source/lib/ui-bootstrap/ui-bootstrap.js',
                  'source/js/*.js',
                  'source/tests/unit/*.js',
                  'source/html/partials/*.html', // because of directive templates
              ],
              autoWatch : true,
              frameworks : ['jasmine', 'detectBrowsers'],
              plugins : [
                  'karma-junit-reporter',
                  'karma-jasmine',
                  'karma-chrome-launcher',
                  'karma-firefox-launcher',
                  'karma-ie-launcher',
                  'karma-safari-launcher',
                  'karma-opera-launcher',
                  'karma-phantomjs-launcher',
                  'karma-detect-browsers'
              ],
              // generate js files from html templates to expose them during testing
              preprocessors : {
                  'source/html/partials/*.html' : 'ng-html2js'
              }
              // ,
              // ngHtml2JsPreprocessor : {
                  // stripPrefix : 'source/html/', // tried this, no luck
                  // moduleName: 'foo' // tried this, no luck
              // }
          }
      }
  }
  </code></pre>
  
  <p>Inside of my test (unit-my-directive.js):</p>
  
  <pre><code>// load the template
  beforeEach(module('source/html/partials/template-directive-my-directive.html'));
  </code></pre>
  
  <p>Inside of my directive (my-directive.js):</p>
  
  <pre><code>templateUrl : 'partials/template-directive-my-directive.html', // this is ok, because actual app works
  </code></pre>
  
  <p>Running the test from within <code>ui</code> folder, where the Gruntfile.js resides</p>