Пример #1
0
 def test_compatibility_with_timestamps(self):
     the_time = float(floor(time.time()))
     iso = from_timestamp_to_iso8601(the_time)
     old_contents = '{"revisions": [{"revision": "rev1", "time": %s}, ' \
                    '{"revision": "rev2", "time": "%s"}]}' % (the_time, the_time)
     r_list = RevisionList.loads(old_contents)
     when = r_list.get_time("rev1")
     self.assertEqual(when, iso)
Пример #2
0
 def _get_revisions_list(self, rev_file_path):
     if self._storage_adapter.path_exists(rev_file_path):
         rev_file = self._storage_adapter.read_file(
             rev_file_path, lock_file=rev_file_path + ".lock")
         rev_list = RevisionList.loads(rev_file)
         return rev_list
     else:
         return RevisionList()
Пример #3
0
 def _remove_revision(self, rev_file_path, revision):
     rev_file = self._storage_adapter.read_file(rev_file_path,
                                                lock_file=rev_file_path +
                                                ".lock")
     rev_list = RevisionList.loads(rev_file)
     rev_list.remove_revision(revision)
     self._storage_adapter.write_file(rev_file_path,
                                      rev_list.dumps(),
                                      lock_file=rev_file_path + ".lock")
Пример #4
0
    def test_remove_non_latest(self):
        rev = RevisionList()
        rev.add_revision("rev1")
        rev.add_revision("rev2")

        dumped = rev.dumps()
        loaded = RevisionList.loads(dumped)
        loaded.remove_revision("rev1")
        self.assertEqual(loaded.latest_revision().revision, "rev2")
Пример #5
0
 def _update_last_revision(self, rev_file_path, ref):
     if self._storage_adapter.path_exists(rev_file_path):
         rev_file = self._storage_adapter.read_file(
             rev_file_path, lock_file=rev_file_path + ".lock")
         rev_list = RevisionList.loads(rev_file)
     else:
         rev_list = RevisionList()
     if ref.revision is None:
         raise ConanException("Invalid revision for: %s" % ref.full_repr())
     rev_list.add_revision(ref.revision)
     self._storage_adapter.write_file(rev_file_path,
                                      rev_list.dumps(),
                                      lock_file=rev_file_path + ".lock")
Пример #6
0
    def test_remove_latest(self):
        rev = RevisionList()
        rev.add_revision("rev1")
        rev.add_revision("rev2")

        dumped = rev.dumps()
        loaded = RevisionList.loads(dumped)
        self.assertEquals(rev, loaded)
        self.assertEquals(loaded.latest_revision().revision, "rev2")

        loaded.remove_revision("rev2")
        self.assertEquals(loaded.latest_revision().revision, "rev1")
        self.assertIsNotNone(loaded.latest_revision().time)
Пример #7
0
 def _load_package_revision_list(self, pref):
     path = self._package_revisions_file(pref)
     rev_file = self._storage_adapter.read_file(path,
                                                lock_file=path + ".lock")
     return RevisionList.loads(rev_file)
Пример #8
0
 def _load_revision_list(self, reference):
     path = self._recipe_revisions_file(reference)
     rev_file = self._storage_adapter.read_file(path,
                                                lock_file=path + ".lock")
     return RevisionList.loads(rev_file)