Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(733)

Side by Side Diff: packages/usage/test/usage_impl_test.dart

Issue 1400473008: Roll Observatory packages and add a roll script (Closed) Base URL: git@github.com:dart-lang/observatory_pub_packages.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « packages/usage/test/usage_impl_io_test.dart ('k') | packages/usage/test/usage_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
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.
4
5 library usage.impl_test;
6
7 import 'package:unittest/unittest.dart';
8 import 'package:usage/src/usage_impl.dart';
9
10 import 'src/common.dart';
11
12 void defineTests() {
13 group('ThrottlingBucket', () {
14 test('can send', () {
15 ThrottlingBucket bucket = new ThrottlingBucket(20);
16 expect(bucket.removeDrop(), true);
17 });
18
19 test('doesn\'t send too many', () {
20 ThrottlingBucket bucket = new ThrottlingBucket(20);
21 for (int i = 0; i < 20; i++) {
22 expect(bucket.removeDrop(), true);
23 }
24 expect(bucket.removeDrop(), false);
25 });
26 });
27
28 group('AnalyticsImpl', () {
29 test('respects disabled', () {
30 AnalyticsImplMock mock = createMock();
31 mock.optIn = false;
32 mock.sendException('FooBar exception');
33 expect(mock.optIn, false);
34 expect(mock.mockPostHandler.sentValues, isEmpty);
35 });
36
37 test('hasSetOptIn', () {
38 AnalyticsImplMock mock = createMock(setOptIn: false);
39 expect(mock.hasSetOptIn, false);
40 mock.optIn = false;
41 expect(mock.hasSetOptIn, true);
42 });
43
44 test('setSessionValue', () {
45 AnalyticsImplMock mock = createMock();
46 mock.sendScreenView('foo');
47 hasnt(mock.last, 'val');
48 mock.setSessionValue('val', 'ue');
49 mock.sendScreenView('bar');
50 has(mock.last, 'val');
51 mock.setSessionValue('val', null);
52 mock.sendScreenView('baz');
53 hasnt(mock.last, 'val');
54 });
55
56 test('waitForLastPing', () {
57 AnalyticsImplMock mock = createMock();
58 mock.sendScreenView('foo');
59 mock.sendScreenView('bar');
60 mock.sendScreenView('baz');
61 return mock.waitForLastPing(timeout: new Duration(milliseconds: 100));
62 });
63 });
64
65 group('postEncode', () {
66 test('simple', () {
67 Map map = {'foo': 'bar', 'baz': 'qux norf'};
68 expect(postEncode(map), 'foo=bar&baz=qux%20norf');
69 });
70 });
71 }
OLDNEW
« no previous file with comments | « packages/usage/test/usage_impl_io_test.dart ('k') | packages/usage/test/usage_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698