1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// DesktopShapeTracker tests assume that there is at least one top-level
6// window on-screen.  Currently we assume the presence of the Explorer
7// task bar window.
8
9#include "remoting/host/desktop_shape_tracker.h"
10
11#include "base/memory/scoped_ptr.h"
12#include "testing/gtest/include/gtest/gtest.h"
13#include "third_party/webrtc/modules/desktop_capture/desktop_capture_options.h"
14#include "third_party/webrtc/modules/desktop_capture/desktop_region.h"
15
16namespace remoting {
17
18// Verify that the desktop shape tracker returns a non-empty region.
19TEST(DesktopShapeTrackerTest, Basic) {
20  scoped_ptr<DesktopShapeTracker> shape_tracker = DesktopShapeTracker::Create(
21      webrtc::DesktopCaptureOptions::CreateDefault());
22
23  // Shape tracker is not supported on all platforms yet.
24#if defined(OS_WIN)
25  shape_tracker->RefreshDesktopShape();
26  EXPECT_FALSE(shape_tracker->desktop_shape().is_empty());
27#else
28  EXPECT_FALSE(shape_tracker);
29#endif
30}
31
32}  // namespace remoting
33