]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/rapidjson/test/perftest/perftest.h
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / rapidjson / test / perftest / perftest.h
diff --git a/ceph/src/rapidjson/test/perftest/perftest.h b/ceph/src/rapidjson/test/perftest/perftest.h
deleted file mode 100644 (file)
index b098e41..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-// Tencent is pleased to support the open source community by making RapidJSON available.
-// 
-// Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved.
-//
-// Licensed under the MIT License (the "License"); you may not use this file except
-// in compliance with the License. You may obtain a copy of the License at
-//
-// http://opensource.org/licenses/MIT
-//
-// 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.
-
-#ifndef PERFTEST_H_
-#define PERFTEST_H_
-
-#define TEST_RAPIDJSON  1
-#define TEST_PLATFORM   0
-#define TEST_MISC       0
-
-#define TEST_VERSION_CODE(x,y,z) \
-  (((x)*100000) + ((y)*100) + (z))
-
-// __SSE2__ and __SSE4_2__ are recognized by gcc, clang, and the Intel compiler.
-// We use -march=native with gmake to enable -msse2 and -msse4.2, if supported.
-#if defined(__SSE4_2__)
-#  define RAPIDJSON_SSE42
-#elif defined(__SSE2__)
-#  define RAPIDJSON_SSE2
-#endif
-
-#define RAPIDJSON_HAS_STDSTRING 1
-
-////////////////////////////////////////////////////////////////////////////////
-// Google Test
-
-#ifdef __cplusplus
-
-// gtest indirectly included inttypes.h, without __STDC_CONSTANT_MACROS.
-#ifndef __STDC_CONSTANT_MACROS
-#  define __STDC_CONSTANT_MACROS 1 // required by C++ standard
-#endif
-
-#if defined(__clang__) || defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2))
-#if defined(__clang__) || (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
-#pragma GCC diagnostic push
-#endif
-#pragma GCC diagnostic ignored "-Weffc++"
-#endif
-
-#include "gtest/gtest.h"
-
-#if defined(__clang__) || defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
-#pragma GCC diagnostic pop
-#endif
-
-#ifdef _MSC_VER
-#define _CRTDBG_MAP_ALLOC
-#include <crtdbg.h>
-#pragma warning(disable : 4996) // 'function': was declared deprecated
-#endif
-
-//! Base class for all performance tests
-class PerfTest : public ::testing::Test {
-public:
-    PerfTest() : filename_(), json_(), length_(), whitespace_(), whitespace_length_() {}
-
-    virtual void SetUp() {
-        {
-            const char *paths[] = {
-                "data/sample.json",
-                "bin/data/sample.json",
-                "../bin/data/sample.json",
-                "../../bin/data/sample.json",
-                "../../../bin/data/sample.json"
-            };
-
-            FILE *fp = 0;
-            for (size_t i = 0; i < sizeof(paths) / sizeof(paths[0]); i++) {
-                fp = fopen(filename_ = paths[i], "rb");
-                if (fp)
-                    break;
-            }
-            ASSERT_TRUE(fp != 0);
-
-            fseek(fp, 0, SEEK_END);
-            length_ = (size_t)ftell(fp);
-            fseek(fp, 0, SEEK_SET);
-            json_ = (char*)malloc(length_ + 1);
-            ASSERT_EQ(length_, fread(json_, 1, length_, fp));
-            json_[length_] = '\0';
-            fclose(fp);
-        }
-
-        // whitespace test
-        {
-            whitespace_length_ = 1024 * 1024;
-            whitespace_ = (char *)malloc(whitespace_length_  + 4);
-            char *p = whitespace_;
-            for (size_t i = 0; i < whitespace_length_; i += 4) {
-                *p++ = ' ';
-                *p++ = '\n';
-                *p++ = '\r';
-                *p++ = '\t';
-            }
-            *p++ = '[';
-            *p++ = '0';
-            *p++ = ']';
-            *p++ = '\0';
-        }
-
-        // types test
-        {
-            const char *typespaths[] = {
-                "data/types",
-                "bin/types",
-                "../bin/types",
-                "../../bin/types/",
-                "../../../bin/types"
-            };
-
-            const char* typesfilenames[] = {
-                "booleans.json",
-                "floats.json",
-                "guids.json",
-                "integers.json",
-                "mixed.json",
-                "nulls.json",
-                "paragraphs.json"
-            };
-
-            for (size_t j = 0; j < sizeof(typesfilenames) / sizeof(typesfilenames[0]); j++) {
-                types_[j] = 0;
-                for (size_t i = 0; i < sizeof(typespaths) / sizeof(typespaths[0]); i++) {
-                    char filename[256];
-                    sprintf(filename, "%s/%s", typespaths[i], typesfilenames[j]);
-                    if (FILE* fp = fopen(filename, "rb")) {
-                        fseek(fp, 0, SEEK_END);
-                        typesLength_[j] = (size_t)ftell(fp);
-                        fseek(fp, 0, SEEK_SET);
-                        types_[j] = (char*)malloc(typesLength_[j] + 1);
-                        ASSERT_EQ(typesLength_[j], fread(types_[j], 1, typesLength_[j], fp));
-                        types_[j][typesLength_[j]] = '\0';
-                        fclose(fp);
-                        break;
-                    }
-                }
-            }
-        }
-    }
-
-    virtual void TearDown() {
-        free(json_);
-        free(whitespace_);
-        json_ = 0;
-        whitespace_ = 0;
-        for (size_t i = 0; i < 7; i++) {
-            free(types_[i]);
-            types_[i] = 0;
-        }
-    }
-
-private:
-    PerfTest(const PerfTest&);
-    PerfTest& operator=(const PerfTest&);
-
-protected:
-    const char* filename_;
-    char *json_;
-    size_t length_;
-    char *whitespace_;
-    size_t whitespace_length_;
-    char *types_[7];
-    size_t typesLength_[7];
-
-    static const size_t kTrialCount = 1000;
-};
-
-#endif // __cplusplus
-
-#endif // PERFTEST_H_