mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
add unit tests for EventTarget (#41596)
Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/41596 changelog: [internal] Reviewed By: rshest Differential Revision: D51499449 fbshipit-source-id: 782108edf24af1c91d77c664bc496b466995621e
This commit is contained in:
committed by
Facebook GitHub Bot
parent
a6964b3629
commit
0d715cd016
@@ -0,0 +1,43 @@
|
||||
/*
|
||||
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
#include <hermes/hermes.h>
|
||||
#include <react/renderer/core/EventTarget.h>
|
||||
#include <react/renderer/core/InstanceHandle.h>
|
||||
|
||||
using namespace facebook;
|
||||
using namespace facebook::react;
|
||||
|
||||
TEST(EventTargetTests, getInstanceHandle) {
|
||||
auto runtime = facebook::hermes::makeHermesRuntime();
|
||||
auto object = jsi::Object(*runtime);
|
||||
auto instanceHandle = std::make_shared<InstanceHandle>(
|
||||
*runtime, jsi::Value(*runtime, object), 1);
|
||||
|
||||
EXPECT_EQ(instanceHandle->getTag(), 1);
|
||||
|
||||
auto eventTarget = EventTarget(std::move(instanceHandle));
|
||||
|
||||
EXPECT_EQ(eventTarget.getTag(), 1);
|
||||
|
||||
EXPECT_TRUE(eventTarget.getInstanceHandle(*runtime).isNull());
|
||||
|
||||
eventTarget.retain(*runtime);
|
||||
|
||||
EXPECT_TRUE(eventTarget.getInstanceHandle(*runtime).isNull());
|
||||
|
||||
eventTarget.setEnabled(true);
|
||||
|
||||
eventTarget.retain(*runtime);
|
||||
|
||||
EXPECT_FALSE(eventTarget.getInstanceHandle(*runtime).isNull());
|
||||
|
||||
eventTarget.release(*runtime);
|
||||
|
||||
EXPECT_TRUE(eventTarget.getInstanceHandle(*runtime).isNull());
|
||||
}
|
||||
Reference in New Issue
Block a user