# Copyright 2020 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.

import("//build/components.gni")
import("//build/test.gni")

group("tests") {
  testonly = true
  deps = [ ":ram-crashlog-test-pkg" ]
}

test("ram-crashlog-test") {
  output_name = "ram-crashlog-test"

  sources = [ "ram-crashlog-tests.cc" ]

  deps = [
    "//zircon/system/ulib/ram-crashlog",
    "//zircon/system/ulib/zxtest",
    "//zircon/third_party/ulib/cksum",
  ]
}

fuchsia_unittest_package("ram-crashlog-test-pkg") {
  package_name = "ram-crashlog-test"
  deps = [ ":ram-crashlog-test" ]
}
