def testNonExistentDirectory(self):
   tempdir = self.get_temp_dir()
   fake_dir = os.path.join(tempdir, "nonexistent_dir")
   self.assertEqual([], plugin_asset_util.ListPlugins(fake_dir))
   self.assertEqual([], plugin_asset_util.ListAssets(fake_dir, "fake_plugin"))
   with self.assertRaises(KeyError):
     plugin_asset_util.RetrieveAsset(fake_dir, "fake_plugin", "fake_asset")
    def PluginAssets(self, plugin_name):
        """Return a list of all plugin assets for the given plugin.

    Args:
      plugin_name: The string name of a plugin to retrieve assets for.

    Returns:
      A list of string plugin asset names, or empty list if none are available.
      If the plugin was not registered, an empty list is returned.
    """
        return plugin_asset_util.ListAssets(self.path, plugin_name)
 def testSimplePluginCase(self):
   tempdir = self.get_temp_dir()
   with ops.Graph().as_default() as g:
     plugin_asset.get_plugin_asset(PluginAlpha)
     fw = writer.FileWriter(tempdir)
     fw.add_graph(g)
   self.assertEqual(["Alpha"], plugin_asset_util.ListPlugins(tempdir))
   assets = plugin_asset_util.ListAssets(tempdir, "Alpha")
   self.assertEqual(["contents.txt"], assets)
   contents = plugin_asset_util.RetrieveAsset(tempdir, "Alpha", "contents.txt")
   self.assertEqual("hello world", contents)