示例#1
0
    def test_assignment_snapshot_upgrades(self):
        good_snapshots = {
            'snapshots': [{
                'data': {},
                'datetime': timezone.now().isoformat(),
                'type': TaskAssignment.SnapshotType.SUBMIT,
                'work_time_seconds': 1
            }],
            '__version':
            2
        }
        old_snapshots = {
            'snapshots': [
                {
                    'data': {},
                    # timezone-naive
                    'datetime': datetime.utcnow().isoformat(),
                    'type': TaskAssignment.SnapshotType.SUBMIT,
                },
                {
                    'data': {},
                    'datetime': timezone.now().isoformat(),
                    'type': TaskAssignment.SnapshotType.SUBMIT,
                    'work_time_seconds': 1
                }
            ]
        }
        upgraded_snapshots = deepcopy(old_snapshots)
        upgraded_snapshots['__version'] = 2
        upgraded_snapshots['snapshots'][0]['work_time_seconds'] = 0
        upgraded_snapshots['snapshots'][0]['datetime'] += '+00:00'

        self.assertEquals(load_snapshots(good_snapshots), good_snapshots)
        self.assertEquals(load_snapshots(old_snapshots), upgraded_snapshots)
示例#2
0
    def test_assignment_snapshot_upgrades(self):
        good_snapshots = {
            'snapshots': [{
                'data': {},
                'datetime': timezone.now().isoformat(),
                'type': TaskAssignment.SnapshotType.SUBMIT,
                'work_time_seconds': 1
            }],
            '__version': 2}
        old_snapshots = {
            'snapshots': [
                {
                    'data': {},
                    # timezone-naive
                    'datetime': datetime.utcnow().isoformat(),
                    'type': TaskAssignment.SnapshotType.SUBMIT,
                }, {
                    'data': {},
                    'datetime': timezone.now().isoformat(),
                    'type': TaskAssignment.SnapshotType.SUBMIT,
                    'work_time_seconds': 1
                }]}
        upgraded_snapshots = deepcopy(old_snapshots)
        upgraded_snapshots['__version'] = 2
        upgraded_snapshots['snapshots'][0]['work_time_seconds'] = 0
        upgraded_snapshots['snapshots'][0]['datetime'] += '+00:00'

        self.assertEquals(load_snapshots(good_snapshots), good_snapshots)
        self.assertEquals(load_snapshots(old_snapshots), upgraded_snapshots)
示例#3
0
def task_assignment_post_init(sender, instance, **kwargs):
    instance.snapshots = load_snapshots(instance.snapshots)
示例#4
0
def task_assignment_post_init(sender, instance, **kwargs):
    instance.snapshots = load_snapshots(instance.snapshots)