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

#include "dlcservice/boot_device.h"

#include <gtest/gtest.h>

namespace dlcservice {

class BootDeviceTest : public testing::Test {};

TEST_F(BootDeviceTest, SysfsBlockDeviceTest) {
  BootDevice boot_device;
  EXPECT_EQ("/sys/block/sda", boot_device.SysfsBlockDevice("/dev/sda"));
  EXPECT_EQ("", boot_device.SysfsBlockDevice("/foo/sda"));
  EXPECT_EQ("", boot_device.SysfsBlockDevice("/dev/foo/bar"));
  EXPECT_EQ("", boot_device.SysfsBlockDevice("/"));
  EXPECT_EQ("", boot_device.SysfsBlockDevice("./"));
  EXPECT_EQ("", boot_device.SysfsBlockDevice(""));
}

}  // namespace dlcservice
