コード例 #1
0
ファイル: TestPackageCaching.py プロジェクト: nitehawck/dem
    def test_does_not_need_update_when_md5_hash_match(self):
        self.fs.CreateDirectory(os.path.abspath('base_path'))
        self.fs.CreateDirectory(os.path.join('base_path', '.devenv'))
        self.fs.CreateFile(os.path.join('base_path', 'devenv.yaml'), contents=SAMPLE_YAML_CONTENT)
        self.fs.CreateFile(os.path.join('base_path', '.devenv', 'cache.json'), contents=SAMPLE_CACHE_CONTENT)

        cache = PackageCache('myProject', os.path.abspath('base_path'))
        self.assertFalse(cache.needs_update())
コード例 #2
0
ファイル: TestPackageCaching.py プロジェクト: nitehawck/dem
    def test_will_hash_yaml_file(self):
        self.fs.CreateDirectory(os.path.abspath('base_path'))
        self.fs.CreateDirectory(os.path.join('base_path', '.devenv'))
        self.fs.CreateFile(os.path.join('base_path', 'devenv.yaml'), contents=SAMPLE_YAML_CONTENT)

        cache = PackageCache('myProject', os.path.abspath('base_path'))
        cache.update([])

        hasher = hashlib.md5()
        hasher.update(SAMPLE_YAML_CONTENT.encode('utf-8'))
        expected_hash = hasher.hexdigest()
        print(expected_hash)
        with open(os.path.join('base_path', '.devenv', 'cache.json')) as f:
            data = json.load(f)
            self.assertEqual(data.get('md5', ''), expected_hash)
コード例 #3
0
    def test_will_replace_prefix_variable_in_all_pc_files(self):
        self.setup_files(SAMPLE_YAML_CONTENT, SAMPLE_CACHE_CONTENT)
        self.create_dependency_directory(os.path.join('qt', 'lib'))
        self.create_dependency_directory(os.path.join('qt', 'lib', 'pkgconfig'))
        self.create_dependency_file(os.path.join('qt', 'lib', 'pkgconfig', 'Qt5Core.pc'), SAMPLE_PKG_CONFIG_FILE)

        cache = PackageCache('myProject', self._base_path)
        (_, packages) = reader.devenv_from_file(self._yaml_file)

        PkgConfigProcessor.replace_prefix(cache.install_locations('qt'), packages['qt']['pkg-config'])

        with open(os.path.join(self._deps, 'qt', 'lib', 'pkgconfig', 'Qt5Core.pc')) as f:
            replaced_pkg_config_data = f.readlines()

        self.assertEqual(''.join(replaced_pkg_config_data), EXPECTED_SAMPLE_PKG_CONFIG_FILE)
コード例 #4
0
ファイル: TestPackageCaching.py プロジェクト: nitehawck/dem
 def test_needs_update_when_cache_file_does_not_exist(self):
     self.fs.CreateDirectory(os.path.abspath('base_path'))
     cache = PackageCache('myProject', os.path.abspath('base_path'))
     self.assertTrue(cache.needs_update())