blob: dfb504e5460125fd9aa517b218aebbd30cad0cc3 [file] [log] [blame]
// Copyright 2019 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'package:buildbucket/buildbucket_pb.dart' as bbv2;
import 'package:cocoon_common/task_status.dart';
import 'package:cocoon_service/src/model/bbv2_extension.dart';
import 'package:test/test.dart';
void main() {
const expectedMapping = {
bbv2.Status.CANCELED: TaskStatus.cancelled,
bbv2.Status.FAILURE: TaskStatus.failed,
bbv2.Status.INFRA_FAILURE: TaskStatus.infraFailure,
bbv2.Status.SCHEDULED: TaskStatus.inProgress,
bbv2.Status.STARTED: TaskStatus.inProgress,
bbv2.Status.SUCCESS: TaskStatus.succeeded,
};
for (final MapEntry(key: bbv2, value: expected) in expectedMapping.entries) {
test('$bbv2 -> $expected', () {
expect(bbv2.toTaskStatus(), expected);
});
}
test('refuses to convert unknown status', () {
expect(
() => bbv2.Status.STATUS_UNSPECIFIED.toTaskStatus(),
throwsStateError,
);
});
}