1effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch/*
2effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch * Copyright 2014 Google Inc.
3effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch *
4effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch * Use of this source code is governed by a BSD-style license that can be
5effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch * found in the LICENSE file.
6effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch */
7effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
8effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch#include "Test.h"
9effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
10f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)#include "../include/record/SkRecording.h"
11effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
12effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch// Minimally exercise the public SkRecording API.
13effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
14effb81e5f8246d0db0270817048dc992db66e9fbBen MurdochDEF_TEST(SkRecording, r) {
15effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch    EXPERIMENTAL::SkRecording recording(1920, 1080);
16effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
175c02ac1a9c1b504631c0a3d2b6e737b5d738bae1Bo Liu    // Some very exciting commands here.
18effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch    recording.canvas()->clipRect(SkRect::MakeWH(320, 240));
19effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
20effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch    SkAutoTDelete<const EXPERIMENTAL::SkPlayback> playback(recording.releasePlayback());
21effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
22effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch    SkCanvas target;
230de6073388f4e2780db8536178b129cd8f6ab386Torne (Richard Coles)    playback->draw(&target);
24effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch
25effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch    // Here's another recording we never call releasePlayback().
26effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch    // However pointless, this should be safe.
27effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch    EXPERIMENTAL::SkRecording pointless(1920, 1080);
28effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch    pointless.canvas()->clipRect(SkRect::MakeWH(320, 240));
290de6073388f4e2780db8536178b129cd8f6ab386Torne (Richard Coles)}
30effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch