Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 | 5 |
| 6 library logging_test; | 6 library logging_test; |
| 7 | 7 |
| 8 import 'package:logging/logging.dart'; | 8 import 'package:logging/logging.dart'; |
| 9 import 'package:unittest/unittest.dart'; | 9 import 'package:unittest/unittest.dart'; |
| 10 | 10 |
| (...skipping 11 matching lines...) Expand all Loading... | |
| 22 expect(level1 < level2, isTrue); | 22 expect(level1 < level2, isTrue); |
| 23 expect(level2 >= level1, isTrue); | 23 expect(level2 >= level1, isTrue); |
| 24 expect(level2 > level1, isTrue); | 24 expect(level2 > level1, isTrue); |
| 25 | 25 |
| 26 var level3 = const Level('NOT_REAL3', 253); | 26 var level3 = const Level('NOT_REAL3', 253); |
| 27 expect(level1, isNot(same(level3))); // different instances | 27 expect(level1, isNot(same(level3))); // different instances |
| 28 expect(level1, equals(level3)); // same value. | 28 expect(level1, equals(level3)); // same value. |
| 29 }); | 29 }); |
| 30 | 30 |
| 31 test('default levels are in order', () { | 31 test('default levels are in order', () { |
| 32 final levels = const [ | 32 final levels = Level.LEVELS; |
| 33 Level.ALL, Level.FINEST, Level.FINER, Level.FINE, Level.CONFIG, | |
| 34 Level.INFO, Level.WARNING, Level.SEVERE, Level.SHOUT, Level.OFF | |
| 35 ]; | |
| 36 | 33 |
| 37 for (int i = 0; i < levels.length; i++) { | 34 for (int i = 0; i < levels.length; i++) { |
| 38 for (int j = i + 1; j < levels.length; j++) { | 35 for (int j = i + 1; j < levels.length; j++) { |
| 39 expect(levels[i] < levels[j], isTrue); | 36 expect(levels[i] < levels[j], isTrue); |
| 40 } | 37 } |
| 41 } | 38 } |
| 42 }); | 39 }); |
| 43 | 40 |
| 44 test('levels are comparable', () { | 41 test('levels are comparable', () { |
| 45 final unsorted = [ | 42 final unsorted = [ |
| 46 Level.INFO, Level.CONFIG, Level.FINE, Level.SHOUT, Level.OFF, | 43 Level.INFO, Level.CONFIG, Level.FINE, Level.SHOUT, Level.OFF, |
| 47 Level.FINER, Level.ALL, Level.WARNING, Level.FINEST, Level.SEVERE, | 44 Level.FINER, Level.ALL, Level.WARNING, Level.FINEST, Level.SEVERE, |
| 48 ]; | 45 ]; |
| 49 final sorted = const [ | 46 |
| 50 Level.ALL, Level.FINEST, Level.FINER, Level.FINE, Level.CONFIG, | 47 final sorted = Level.LEVELS; |
| 51 Level.INFO, Level.WARNING, Level.SEVERE, Level.SHOUT, Level.OFF | 48 |
| 52 ]; | |
| 53 expect(unsorted, isNot(orderedEquals(sorted))); | 49 expect(unsorted, isNot(orderedEquals(sorted))); |
| 54 | 50 |
| 55 unsorted.sort((a, b) => a.compareTo(b)); | 51 unsorted.sort(); |
|
kevmoo-old
2013/11/26 19:23:13
sort uses static Comparable.compare which calls th
| |
| 56 expect(unsorted, orderedEquals(sorted)); | 52 expect(unsorted, orderedEquals(sorted)); |
| 57 }); | 53 }); |
| 58 | 54 |
| 59 test('levels are hashable', () { | 55 test('levels are hashable', () { |
| 60 var map = new Map<Level, String>(); | 56 var map = new Map<Level, String>(); |
| 61 map[Level.INFO] = 'info'; | 57 map[Level.INFO] = 'info'; |
| 62 map[Level.SHOUT] = 'shout'; | 58 map[Level.SHOUT] = 'shout'; |
| 63 expect(map[Level.INFO], same('info')); | 59 expect(map[Level.INFO], same('info')); |
| 64 expect(map[Level.SHOUT], same('shout')); | 60 expect(map[Level.SHOUT], same('shout')); |
| 65 }); | 61 }); |
| 66 | 62 |
| 67 test('logger name cannot start with a "." ', () { | 63 test('logger name cannot start with a "." ', () { |
| 68 expect(() => new Logger('.c'), throws); | 64 expect(() => new Logger('.c'), throwsArgumentError); |
|
Siggi Cherem (dart-lang)
2013/11/26 19:25:49
mmm. I wonder if this should be an argument error
kevmoo-old
2013/11/26 20:39:33
It's arguable at best. I didn't change the existin
| |
| 69 }); | 65 }); |
| 70 | 66 |
| 71 test('logger naming is hierarchical', () { | 67 test('logger naming is hierarchical', () { |
| 72 Logger c = new Logger('a.b.c'); | 68 Logger c = new Logger('a.b.c'); |
| 73 expect(c.name, equals('c')); | 69 expect(c.name, equals('c')); |
| 74 expect(c.parent.name, equals('b')); | 70 expect(c.parent.name, equals('b')); |
| 75 expect(c.parent.parent.name, equals('a')); | 71 expect(c.parent.parent.name, equals('a')); |
| 76 expect(c.parent.parent.parent.name, equals('')); | 72 expect(c.parent.parent.parent.name, equals('')); |
| 77 expect(c.parent.parent.parent.parent, isNull); | 73 expect(c.parent.parent.parent.parent, isNull); |
| 78 }); | 74 }); |
| (...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 417 'SHOUT: 10'])); | 413 'SHOUT: 10'])); |
| 418 | 414 |
| 419 expect(cMessages, equals([ | 415 expect(cMessages, equals([ |
| 420 // 1 - 7 are lower in the hierarchy | 416 // 1 - 7 are lower in the hierarchy |
| 421 // 'FINE: 8' is not loggable | 417 // 'FINE: 8' is not loggable |
| 422 'WARNING: 9', | 418 'WARNING: 9', |
| 423 'SHOUT: 10'])); | 419 'SHOUT: 10'])); |
| 424 }); | 420 }); |
| 425 }); | 421 }); |
| 426 } | 422 } |
| OLD | NEW |