blob: 67c697e7c780c7a14c839745f1edfbbe70171e7e [file] [log] [blame]
// 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.
#include <lib/zx/object.h>
#include <assert.h>
#include <lib/zx/event.h>
#include <set>
#include <zxtest/zxtest.h>
namespace {
TEST(ZxUnowned, UsableInContainers) {
std::set<zx::unowned_event> set;
zx::event event;
ASSERT_OK(zx::event::create(0u, &event));
set.emplace(event);
EXPECT_EQ(set.size(), 1u);
EXPECT_EQ(*set.begin(), event.get());
}
TEST(ZxObject, BorrowReturnsUnownedObjectOfSameHandle) {
zx::event event;
ASSERT_OK(zx::event::create(0u, &event));
ASSERT_EQ(event.get(), event.borrow());
ASSERT_EQ(zx::unowned_event(event), event.borrow());
}
} // namespace