# Copyright 2019 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

group("media") {
  testonly = true
  deps = [
    ":tests",
    "audio",
    "lib",
    "playback",
    "sessions",
    "stream_processors",
  ]
}

group("tests") {
  testonly = true

  deps = [
    "audio:tests",
    "sessions:tests",
    "stream_processors:tests",
  ]
}

group("examples") {
  testonly = true
  deps = [
    "sessions:examples",
  ]
}
