3 Copyright (c) 2013 The Chromium Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style license that can be
5 found in the LICENSE file.
8 <link rel="import" href="/tracing/trace_model/object_instance.html">
9 <link rel="import" href="/tracing/trace_model/object_snapshot.html">
14 tvcm.unittest.testSuite(function() {
15 test('snapshotTypeRegistry', function() {
16 function MySnapshot() {
17 tracing.trace_model.ObjectSnapshot.apply(this, arguments);
18 this.myFoo = this.args.foo;
21 MySnapshot.prototype = {
22 __proto__: tracing.trace_model.ObjectSnapshot.prototype
25 var instance = new tracing.trace_model.ObjectInstance(
26 {}, '0x1000', 'cat', 'MySnapshot', 10);
28 tracing.trace_model.ObjectSnapshot.register('MySnapshot', MySnapshot);
29 var snapshot = instance.addSnapshot(15, {foo: 'bar'});
30 assertTrue(snapshot instanceof MySnapshot);
31 assertEquals('bar', snapshot.myFoo);
33 tracing.trace_model.ObjectSnapshot.unregister('MySnapshot');