diff options
-rw-r--r-- | bitbake/lib/bb/fetch2/crate.py | 4 | ||||
-rw-r--r-- | bitbake/lib/bb/tests/fetch.py | 25 |
2 files changed, 27 insertions, 2 deletions
diff --git a/bitbake/lib/bb/fetch2/crate.py b/bitbake/lib/bb/fetch2/crate.py index 2b8b6bc7a1..3310ed0050 100644 --- a/bitbake/lib/bb/fetch2/crate.py +++ b/bitbake/lib/bb/fetch2/crate.py | |||
@@ -98,8 +98,8 @@ class Crate(Wget): | |||
98 | save_cwd = os.getcwd() | 98 | save_cwd = os.getcwd() |
99 | os.chdir(rootdir) | 99 | os.chdir(rootdir) |
100 | 100 | ||
101 | pn = d.getVar('BPN') | 101 | bp = d.getVar('BP') |
102 | if pn == ud.parm.get('name'): | 102 | if bp == ud.parm.get('name'): |
103 | cmd = "tar -xz --no-same-owner -f %s" % thefile | 103 | cmd = "tar -xz --no-same-owner -f %s" % thefile |
104 | else: | 104 | else: |
105 | cargo_bitbake = self._cargo_bitbake_path(rootdir) | 105 | cargo_bitbake = self._cargo_bitbake_path(rootdir) |
diff --git a/bitbake/lib/bb/tests/fetch.py b/bitbake/lib/bb/tests/fetch.py index 532adb9414..256f0fb788 100644 --- a/bitbake/lib/bb/tests/fetch.py +++ b/bitbake/lib/bb/tests/fetch.py | |||
@@ -2392,6 +2392,31 @@ class CrateTest(FetcherTest): | |||
2392 | self.assertTrue(os.path.exists(self.tempdir + "/cargo_home/bitbake/glob-0.2.11/src/lib.rs")) | 2392 | self.assertTrue(os.path.exists(self.tempdir + "/cargo_home/bitbake/glob-0.2.11/src/lib.rs")) |
2393 | 2393 | ||
2394 | @skipIfNoNetwork() | 2394 | @skipIfNoNetwork() |
2395 | def test_crate_url_matching_recipe(self): | ||
2396 | |||
2397 | self.d.setVar('BP', 'glob-0.2.11') | ||
2398 | |||
2399 | uri = "crate://crates.io/glob/0.2.11" | ||
2400 | self.d.setVar('SRC_URI', uri) | ||
2401 | |||
2402 | uris = self.d.getVar('SRC_URI').split() | ||
2403 | d = self.d | ||
2404 | |||
2405 | fetcher = bb.fetch2.Fetch(uris, self.d) | ||
2406 | ud = fetcher.ud[fetcher.urls[0]] | ||
2407 | |||
2408 | self.assertIn("name", ud.parm) | ||
2409 | self.assertEqual(ud.parm["name"], "glob-0.2.11") | ||
2410 | self.assertIn("downloadfilename", ud.parm) | ||
2411 | self.assertEqual(ud.parm["downloadfilename"], "glob-0.2.11.crate") | ||
2412 | |||
2413 | fetcher.download() | ||
2414 | fetcher.unpack(self.tempdir) | ||
2415 | self.assertEqual(sorted(os.listdir(self.tempdir)), ['download', 'glob-0.2.11', 'unpacked']) | ||
2416 | self.assertEqual(sorted(os.listdir(self.tempdir + "/download")), ['glob-0.2.11.crate', 'glob-0.2.11.crate.done']) | ||
2417 | self.assertTrue(os.path.exists(self.tempdir + "/glob-0.2.11/src/lib.rs")) | ||
2418 | |||
2419 | @skipIfNoNetwork() | ||
2395 | def test_crate_url_params(self): | 2420 | def test_crate_url_params(self): |
2396 | 2421 | ||
2397 | uri = "crate://crates.io/aho-corasick/0.7.20;name=aho-corasick-renamed" | 2422 | uri = "crate://crates.io/aho-corasick/0.7.20;name=aho-corasick-renamed" |