Remove yoga/internal/experiments (#1195)
Summary:
Pull Request resolved: https://github.com/facebook/yoga/pull/1195
These files are remnants of experimentation functions from D16687367 (dcfdb955b3
). They do not seem to be included anywhere anymore, and we already have a YGExperimentalFeature setter in config we can use in the more common case.
Changelog:
[Internal]
Reviewed By: christophpurrer
Differential Revision: D42241980
fbshipit-source-id: 482984b9a619dba8042e9166aee02a5e75e761ee
This commit is contained in:
committed by
Facebook GitHub Bot
parent
1813748eaa
commit
287c48f7e3
@@ -1,49 +0,0 @@
|
|||||||
/*
|
|
||||||
* 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 <yoga/internal/experiments-inl.h>
|
|
||||||
|
|
||||||
using namespace facebook::yoga::internal;
|
|
||||||
|
|
||||||
struct YogaInternalTest : public testing::Test {
|
|
||||||
void SetUp() override;
|
|
||||||
};
|
|
||||||
|
|
||||||
TEST_F(YogaInternalTest, experiments_are_initially_disabled) {
|
|
||||||
ASSERT_EQ(isEnabled(Experiment::kDoubleMeasureCallbacks), false);
|
|
||||||
}
|
|
||||||
|
|
||||||
TEST_F(YogaInternalTest, experiments_are_can_be_enabled) {
|
|
||||||
enable(Experiment::kDoubleMeasureCallbacks);
|
|
||||||
ASSERT_EQ(isEnabled(Experiment::kDoubleMeasureCallbacks), true);
|
|
||||||
}
|
|
||||||
|
|
||||||
TEST_F(YogaInternalTest, experiments_are_can_be_disabled) {
|
|
||||||
enable(Experiment::kDoubleMeasureCallbacks);
|
|
||||||
disable(Experiment::kDoubleMeasureCallbacks);
|
|
||||||
|
|
||||||
ASSERT_EQ(isEnabled(Experiment::kDoubleMeasureCallbacks), false);
|
|
||||||
}
|
|
||||||
|
|
||||||
TEST_F(YogaInternalTest, experiments_are_can_be_toggled_on) {
|
|
||||||
disable(Experiment::kDoubleMeasureCallbacks);
|
|
||||||
|
|
||||||
ASSERT_EQ(toggle(Experiment::kDoubleMeasureCallbacks), false);
|
|
||||||
ASSERT_EQ(isEnabled(Experiment::kDoubleMeasureCallbacks), true);
|
|
||||||
}
|
|
||||||
|
|
||||||
TEST_F(YogaInternalTest, experiments_are_can_be_toggled_off) {
|
|
||||||
enable(Experiment::kDoubleMeasureCallbacks);
|
|
||||||
|
|
||||||
ASSERT_EQ(toggle(Experiment::kDoubleMeasureCallbacks), true);
|
|
||||||
ASSERT_EQ(isEnabled(Experiment::kDoubleMeasureCallbacks), false);
|
|
||||||
}
|
|
||||||
|
|
||||||
void YogaInternalTest::SetUp() {
|
|
||||||
disableAllExperiments();
|
|
||||||
}
|
|
@@ -1,32 +0,0 @@
|
|||||||
/*
|
|
||||||
* 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "experiments.h"
|
|
||||||
|
|
||||||
#include <bitset>
|
|
||||||
|
|
||||||
namespace facebook {
|
|
||||||
namespace yoga {
|
|
||||||
namespace internal {
|
|
||||||
|
|
||||||
namespace detail {
|
|
||||||
extern std::bitset<sizeof(int)> enabledExperiments;
|
|
||||||
} // namespace detail
|
|
||||||
|
|
||||||
inline bool isEnabled(Experiment experiment) {
|
|
||||||
return detail::enabledExperiments.test(static_cast<size_t>(experiment));
|
|
||||||
}
|
|
||||||
|
|
||||||
inline void disableAllExperiments() {
|
|
||||||
detail::enabledExperiments = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace internal
|
|
||||||
} // namespace yoga
|
|
||||||
} // namespace facebook
|
|
@@ -1,38 +0,0 @@
|
|||||||
/*
|
|
||||||
* 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 "experiments.h"
|
|
||||||
#include "experiments-inl.h"
|
|
||||||
|
|
||||||
namespace facebook {
|
|
||||||
namespace yoga {
|
|
||||||
namespace internal {
|
|
||||||
|
|
||||||
namespace detail {
|
|
||||||
|
|
||||||
std::bitset<sizeof(int)> enabledExperiments = 0;
|
|
||||||
|
|
||||||
} // namespace detail
|
|
||||||
|
|
||||||
void enable(Experiment experiment) {
|
|
||||||
detail::enabledExperiments.set(static_cast<size_t>(experiment));
|
|
||||||
}
|
|
||||||
|
|
||||||
void disable(Experiment experiment) {
|
|
||||||
detail::enabledExperiments.reset(static_cast<size_t>(experiment));
|
|
||||||
}
|
|
||||||
|
|
||||||
bool toggle(Experiment experiment) {
|
|
||||||
auto bit = static_cast<size_t>(experiment);
|
|
||||||
auto previousState = detail::enabledExperiments.test(bit);
|
|
||||||
detail::enabledExperiments.flip(bit);
|
|
||||||
return previousState;
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace internal
|
|
||||||
} // namespace yoga
|
|
||||||
} // namespace facebook
|
|
@@ -1,26 +0,0 @@
|
|||||||
/*
|
|
||||||
* 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.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <cstddef>
|
|
||||||
|
|
||||||
namespace facebook {
|
|
||||||
namespace yoga {
|
|
||||||
namespace internal {
|
|
||||||
|
|
||||||
enum struct Experiment : size_t {
|
|
||||||
kDoubleMeasureCallbacks,
|
|
||||||
};
|
|
||||||
|
|
||||||
void enable(Experiment);
|
|
||||||
void disable(Experiment);
|
|
||||||
bool toggle(Experiment);
|
|
||||||
|
|
||||||
} // namespace internal
|
|
||||||
} // namespace yoga
|
|
||||||
} // namespace facebook
|
|
Reference in New Issue
Block a user