public void testModuleName() {
   setFilename("foo/bar");
   testModules(
       "var name = require('other');",
       "goog.provide('module$foo$bar'); var module$foo$bar = {};"
           + "goog.require('module$other');"
           + "var name$$module$foo$bar = module$other;");
   ProcessEs6ModulesTest.testModules(
       this,
       ImmutableList.of(
           SourceFile.fromCode("foo/name.js", ""),
           SourceFile.fromCode("foo/bar.js", "var name = require('./name');")),
       "goog.provide('module$foo$bar');"
           + "var module$foo$bar = {};"
           + "goog.require('module$foo$name');"
           + "var name$$module$foo$bar = module$foo$name;");
 }
 public void testWithoutExports() {
   setFilename("test");
   testModules(
       "var name = require('other');" + "name()",
       "goog.provide('module$test');"
           + "var module$test = {};"
           + "goog.require('module$other');"
           + "var name$$module$test = module$other;"
           + "name$$module$test();");
   setFilename("test/sub");
   ProcessEs6ModulesTest.testModules(
       this,
       ImmutableList.of(
           SourceFile.fromCode("mod/name.js", ""),
           SourceFile.fromCode(
               "test/sub.js", "var name = require('mod/name');" + "(function() { name(); })();")),
       "goog.provide('module$test$sub');"
           + "var module$test$sub = {};"
           + "goog.require('module$mod$name');"
           + "var name$$module$test$sub = module$mod$name;"
           + "(function() { name$$module$test$sub(); })();");
 }
 void testModules(String input, String expected) {
   ProcessEs6ModulesTest.testModules(this, input, expected);
 }