| // Copyright 2014 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:flutter_devicelab/framework/task_result.dart'; |
| |
| import 'common.dart'; |
| |
| void main() { |
| group('TaskResult fromJson', () { |
| test('succeeded', () { |
| final Map<String, dynamic> expectedJson = <String, dynamic>{ |
| 'success': true, |
| 'data': <String, dynamic>{ |
| 'i': 5, |
| 'j': 10, |
| 'not_a_metric': 'something', |
| }, |
| 'benchmarkScoreKeys': <String>['i', 'j'], |
| 'detailFiles': <String>[], |
| }; |
| final TaskResult result = TaskResult.fromJson(expectedJson); |
| expect(result.toJson(), expectedJson); |
| }); |
| |
| test('succeeded with empty data', () { |
| final TaskResult result = TaskResult.fromJson(<String, dynamic>{ |
| 'success': true, |
| }); |
| final Map<String, dynamic> expectedJson = <String, dynamic>{ |
| 'success': true, |
| 'data': null, |
| 'benchmarkScoreKeys': <String>[], |
| 'detailFiles': <String>[], |
| }; |
| expect(result.toJson(), expectedJson); |
| }); |
| |
| test('failed', () { |
| final Map<String, dynamic> expectedJson = <String, dynamic>{ |
| 'success': false, |
| 'reason': 'failure message', |
| }; |
| final TaskResult result = TaskResult.fromJson(expectedJson); |
| expect(result.toJson(), expectedJson); |
| }); |
| }); |
| } |