Example #1
0
    def test_updates_package_release_modified(self, db_session, tmpdir):
        from belt.refresh import refresh_packages

        modified = Delorean(datetime.datetime(1999, 10, 5), timezone='UTC')
        package = create_releases_for_package(tmpdir.join('lemon-3.0.tar.gz'),
                                              '1.4', '1.2.3',
                                              modified=modified.datetime)
        db_session.add(package)
        db_session.flush()

        original_modification_times = [rel.modified for rel in package.releases]

        with fudge.patch('belt.refresh.package_releases') as package_releases:
            (package_releases.expects_call()
             .with_args('lemon', '/na/lemon', arg.passes_test(version_order))
             .returns([]))

            package = list(refresh_packages(db_session,
                                            datetime.datetime.utcnow(),
                                            '/na'))[0]

        new_modification_times = [rel.modified for rel in package.releases]

        results = [original < new for original, new in zip(original_modification_times,
                                                           new_modification_times)]
        assert all(results)
Example #2
0
def main(location, older_than, session):
    for package in refresh_packages(session, older_than, location):
        log.info(u'Updated ' + unicode(package))
        session.commit()