ncnn
1// Tencent is pleased to support the open source community by making ncnn available.
2//
3// Copyright (C) 2020 THL A29 Limited, a Tencent company. All rights reserved.
4//
5// Licensed under the BSD 3-Clause License (the "License"); you may not use this file except
6// in compliance with the License. You may obtain a copy of the License at
7//
8// https://opensource.org/licenses/BSD-3-Clause
9//
10// Unless required by applicable law or agreed to in writing, software distributed
11// under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
12// CONDITIONS OF ANY KIND, either express or implied. See the License for the
13// specific language governing permissions and limitations under the License.
14
15#include "testutil.h"16
17static int test_absval(const ncnn::Mat& a)18{
19ncnn::ParamDict pd;20
21std::vector<ncnn::Mat> weights(0);22
23int ret = test_layer("AbsVal", pd, weights, a);24if (ret != 0)25{26fprintf(stderr, "test_absval failed a.dims=%d a=(%d %d %d)\n", a.dims, a.w, a.h, a.c);27}28
29return ret;30}
31
32static int test_absval_0()33{
34return 035|| test_absval(RandomMat(5, 7, 24))36|| test_absval(RandomMat(7, 9, 12))37|| test_absval(RandomMat(3, 5, 13));38}
39
40static int test_absval_1()41{
42return 043|| test_absval(RandomMat(15, 24))44|| test_absval(RandomMat(19, 12))45|| test_absval(RandomMat(17, 15));46}
47
48static int test_absval_2()49{
50return 051|| test_absval(RandomMat(128))52|| test_absval(RandomMat(124))53|| test_absval(RandomMat(127));54}
55
56int main()57{
58SRAND(7767517);59
60return 061|| test_absval_0()62|| test_absval_1()63|| test_absval_2();64}
65