Files
sdk/pkg/microlytics/test/dart_microlytics_test.dart
T
lukechurch@google.com 710bf6f401 First cut of basic functionality
This CL addresses comments from the previous Pull Request https://github.com/lukechurch/dart-microlytics/pull/1

It can be used to reporting usage and performance data to Google Analytics.

Known issues:

-> unittest library is still used
-> some comments are still not in full sentences

R=ahe@google.com, danrubel@google.com

Review URL: https://codereview.chromium.org//515993003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39914 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-05 14:00:08 +00:00

120 lines
3.1 KiB
Dart

// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
library microlytics.test;
import 'package:expect/expect.dart';
import 'package:microlytics/microlytics.dart';
import 'test_channel.dart';
void main() {
testBasicEventRead();
testBasicNegativeEventRead();
testBasicTimingRead();
testBasicTimingMultiread();
}
void testBasicEventRead() {
TestChannel c = new TestChannel();
AnalyticsLogger logger = new AnalyticsLogger(
c,
"2cfac780-31e2-11e4-8c21-0800200c9a66",
"UA-53895644-1",
"TestApp",
"0.42");
logger.logAnonymousEvent("video", "play");
Expect.isTrue(c.contains(
"v=1"
"&tid=UA-53895644-1"
"&cid=2cfac780-31e2-11e4-8c21-0800200c9a66"
"&an=TestApp"
"&av=0.42"
"&t=event"
"&ec=video"
"&ea=play"));
}
void testBasicNegativeEventRead() {
TestChannel c = new TestChannel();
AnalyticsLogger logger = new AnalyticsLogger(
c,
"2cfac780-31e2-11e4-8c21-0800200c9a66",
"UA-53895644-1",
"TestApp",
"0.42");
logger.logAnonymousEvent("video", "play");
Expect.isFalse(c.contains(
"v=1"
"&tid=UA-53895644-1"
"&cid=2cfac780-31e2-11e4-8c21-0800200c9a66"
"&an=TestApp"
"&av=XXX"
"&t=event"
"&ec=video"
"&ea=play"));
}
void testBasicTimingRead() {
TestChannel c = new TestChannel();
AnalyticsLogger logger = new AnalyticsLogger(
c,
"2cfac780-31e2-11e4-8c21-0800200c9a66",
"UA-53895644-1",
"TestApp",
"0.42");
logger.logAnonymousTiming("video", "delay", 157);
Expect.isTrue(c.contains(
"v=1"
"&tid=UA-53895644-1"
"&cid=2cfac780-31e2-11e4-8c21-0800200c9a66"
"&an=TestApp"
"&av=0.42"
"&t=timing"
"&utc=video"
"&utv=delay"
"&utt=157"));
}
void testBasicTimingMultiread() {
TestChannel c = new TestChannel();
AnalyticsLogger logger = new AnalyticsLogger(
c,
"2cfac780-31e2-11e4-8c21-0800200c9a66",
"UA-53895644-1",
"TestApp",
"0.42");
logger.logAnonymousTiming("video", "delay", 159);
logger.logAnonymousTiming("video", "delay", 152);
Expect.isTrue(c.contains(
"v=1"
"&tid=UA-53895644-1"
"&cid=2cfac780-31e2-11e4-8c21-0800200c9a66"
"&an=TestApp"
"&av=0.42"
"&t=timing"
"&utc=video"
"&utv=delay"
"&utt=152"));
Expect.isTrue(c.contains(
"v=1"
"&tid=UA-53895644-1"
"&cid=2cfac780-31e2-11e4-8c21-0800200c9a66"
"&an=TestApp"
"&av=0.42"
"&t=timing"
"&utc=video"
"&utv=delay"
"&utt=159"));
Expect.isFalse(c.contains(
"v=1"
"&tid=UA-53895644-1"
"&cid=2cfac780-31e2-11e4-8c21-0800200c9a66"
"&an=TestApp"
"&av=0.42"
"&t=timing"
"&utc=video"
"&utv=delay"
"&utt=19"));
}