|
@@ -942,6 +942,25 @@ class FetcherNetworkTest(FetcherTest):
|
|
|
self.assertTrue(os.path.exists(os.path.join(repo_path, '.git/modules/extern/json/config')), msg='Missing submodule config "extern/json"')
|
|
|
self.assertTrue(os.path.exists(os.path.join(repo_path, '.git/modules/extern/sanitizers/config')), msg='Missing submodule config "extern/sanitizers"')
|
|
|
|
|
|
+ def test_git_submodule_update_CLI11(self):
|
|
|
+ """ Prevent regression on update detection not finding missing submodule, or modules without needed commits """
|
|
|
+ url = "gitsm://github.com/CLIUtils/CLI11;protocol=git;rev=cf6a99fa69aaefe477cc52e3ef4a7d2d7fa40714"
|
|
|
+ fetcher = bb.fetch.Fetch([url], self.d)
|
|
|
+ fetcher.download()
|
|
|
+
|
|
|
+ # CLI11 that pulls in a newer nlohmann-json
|
|
|
+ url = "gitsm://github.com/CLIUtils/CLI11;protocol=git;rev=49ac989a9527ee9bb496de9ded7b4872c2e0e5ca"
|
|
|
+ fetcher = bb.fetch.Fetch([url], self.d)
|
|
|
+ fetcher.download()
|
|
|
+ # Previous cwd has been deleted
|
|
|
+ os.chdir(os.path.dirname(self.unpackdir))
|
|
|
+ fetcher.unpack(self.unpackdir)
|
|
|
+
|
|
|
+ repo_path = os.path.join(self.tempdir, 'unpacked', 'git')
|
|
|
+ self.assertTrue(os.path.exists(os.path.join(repo_path, '.git/modules/extern/googletest/config')), msg='Missing submodule config "extern/googletest"')
|
|
|
+ self.assertTrue(os.path.exists(os.path.join(repo_path, '.git/modules/extern/json/config')), msg='Missing submodule config "extern/json"')
|
|
|
+ self.assertTrue(os.path.exists(os.path.join(repo_path, '.git/modules/extern/sanitizers/config')), msg='Missing submodule config "extern/sanitizers"')
|
|
|
+
|
|
|
def test_git_submodule_aktualizr(self):
|
|
|
url = "gitsm://github.com/advancedtelematic/aktualizr;branch=master;protocol=git;rev=d00d1a04cc2366d1a5f143b84b9f507f8bd32c44"
|
|
|
fetcher = bb.fetch.Fetch([url], self.d)
|