def test_multipkg_xpd_install(self):

        # Make sure we can access the package tree for building
        os.environ[core.xpkg_tree_var] = self.tree_dir

        # Run the install
        self._xpkg_cmd(['install', os.path.join(self.tree_dir, 'multipkg.xpd')])

        # Run our program to make sure it works
        #output = util.shellcmd(self.hello_bin, echo=False)

        # Make sure our programs exist
        bin_dir = os.path.join(self.env_dir, 'bin')
        self.assertPathExists(os.path.join(bin_dir, 'toola'))
        self.assertPathExists(os.path.join(bin_dir, 'toolb'))

        # Run the list command and parse it to get our list of installed
        # packages (maybe we should just read the DB directly?)
        output = self._xpkg_cmd(['list'], )

        install_info = [l.strip().split(' - ')
                        for l in output.split('\n')
                        if len(l.strip()) > 0]

        # Check the contents of the install info
        self.assertIn(['multi-tools', '1.5.0'], install_info)
        self.assertIn(['libmulti', '1.0.0'], install_info)
        self.assertIn(['libmulti-dev', '1.0.0'], install_info)
        self.assertEqual(4, len(install_info))
Make sure that install the a of multiple package XPD installs all parts.
dataset/ETHPy150Open jlisee/xpkg/python/tests/fulltests.py/FullTests.test_multipkg_xpd_install