cavis/libnd4j/tests_cpu/layers_tests/GraphHolderTests.cpp

86 lines
2.3 KiB
C++
Raw Normal View History

2019-06-06 14:21:15 +02:00
/*******************************************************************************
* Copyright (c) 2015-2018 Skymind, Inc.
*
* This program and the accompanying materials are made available under the
* terms of the Apache License, Version 2.0 which is available at
* https://www.apache.org/licenses/LICENSE-2.0.
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
* SPDX-License-Identifier: Apache-2.0
******************************************************************************/
//
// Created by raver119 on 11.12.17.
//
#include "testlayers.h"
#include <graph/GraphHolder.h>
using namespace sd;
using namespace sd::ops;
using namespace sd::graph;
2019-06-06 14:21:15 +02:00
class GraphHolderTests : public testing::Test {
public:
};
TEST_F(GraphHolderTests, SimpleTests_1) {
Graph graph;
Nd4jLong graphId = 119;
GraphHolder::getInstance()->registerGraph(graphId, &graph);
ASSERT_TRUE(GraphHolder::getInstance()->hasGraph(graphId));
GraphHolder::getInstance()->forgetGraph(graphId);
ASSERT_FALSE(GraphHolder::getInstance()->hasGraph(graphId));
}
TEST_F(GraphHolderTests, SimpleTests_2) {
auto graph = new Graph;
Nd4jLong graphId = 117;
GraphHolder::getInstance()->registerGraph(graphId, graph);
ASSERT_TRUE(GraphHolder::getInstance()->hasGraph(graphId));
auto graph2 = GraphHolder::getInstance()->cloneGraph(graphId);
ASSERT_TRUE(graph != graph2);
ASSERT_TRUE(graph2 != nullptr);
GraphHolder::getInstance()->forgetGraph(graphId);
ASSERT_FALSE(GraphHolder::getInstance()->hasGraph(graphId));
delete graph;
delete graph2;
}
TEST_F(GraphHolderTests, SimpleTests_3) {
auto graph = new Graph;
Nd4jLong graphId = 117;
GraphHolder::getInstance()->registerGraph(graphId, graph);
ASSERT_TRUE(GraphHolder::getInstance()->hasGraph(graphId));
auto graph2 = GraphHolder::getInstance()->cloneGraph(graphId);
ASSERT_TRUE(graph != graph2);
ASSERT_TRUE(graph2 != nullptr);
GraphHolder::getInstance()->dropGraph(graphId);
ASSERT_FALSE(GraphHolder::getInstance()->hasGraph(graphId));
delete graph2;
}