You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by aa...@apache.org on 2022/08/03 06:06:25 UTC
[rocketmq-clients] branch java_dev updated (6dc4aba -> f7c83a9)
This is an automated email from the ASF dual-hosted git repository.
aaronai pushed a change to branch java_dev
in repository https://gitbox.apache.org/repos/asf/rocketmq-clients.git
discard 6dc4aba test
discard fb7b9fe WIP
omit 923cb40 Remove coverage from readme
new f7c83a9 badge
This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version. This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:
* -- * -- B -- O -- O -- O (6dc4aba)
\
N -- N -- N refs/heads/java_dev (f7c83a9)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.github/workflows/cpp_coverage.yml | 2 +-
.github/workflows/java_coverage.yml | 4 +---
README.md | 3 ++-
3 files changed, 4 insertions(+), 5 deletions(-)
[rocketmq-clients] 01/01: badge
Posted by aa...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
aaronai pushed a commit to branch java_dev
in repository https://gitbox.apache.org/repos/asf/rocketmq-clients.git
commit f7c83a9781a60b5c2a3c0659396b8a54d203447a
Author: Aaron Ai <aa...@apache.org>
AuthorDate: Wed Aug 3 14:06:20 2022 +0800
badge
---
.github/workflows/cpp_coverage.yml | 23 +++
.../workflows/{coverage.yml => java_coverage.yml} | 16 ++-
README.md | 4 +-
cpp/source/base/tests/AssignmentTest.cpp | 2 +-
cpp/source/base/tests/BUILD.bazel | 56 ++++----
cpp/source/base/tests/ConfigurationTest.cpp | 54 -------
cpp/source/base/tests/MessageBuilderTest.cpp | 1 +
cpp/source/base/tests/MessageQueueTest.cpp | 38 -----
cpp/source/base/tests/MixAllTest.cpp | 38 -----
cpp/source/base/tests/RetryPolicyTest.cpp | 38 -----
cpp/source/concurrent/tests/BUILD.bazel | 26 ----
cpp/source/concurrent/tests/CountdownLatchTest.cpp | 72 ----------
cpp/source/rocketmq/tests/BUILD.bazel | 46 ------
cpp/source/rocketmq/tests/ClientImplTest.cpp | 36 -----
cpp/source/rocketmq/tests/SendContextTest.cpp | 33 -----
cpp/source/rocketmq/tests/TimeTest.cpp | 31 -----
cpp/source/stats/tests/BUILD.bazel | 28 ----
cpp/source/stats/tests/PublishStatsTest.cpp | 155 ---------------------
18 files changed, 65 insertions(+), 632 deletions(-)
diff --git a/.github/workflows/cpp_coverage.yml b/.github/workflows/cpp_coverage.yml
new file mode 100644
index 0000000..0edc9e2
--- /dev/null
+++ b/.github/workflows/cpp_coverage.yml
@@ -0,0 +1,23 @@
+name: CPP Coverage
+on:
+ pull_request:
+ types: [opened, reopened, synchronize]
+ push:
+ branches:
+ - java_dev
+# mainly refer to: https://github.com/merkrafter/Merkompiler/blob/development/.github/workflows/quality_assurance.yml
+jobs:
+ calculate-coverage:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - name: Generate coverage report
+ working-directory: ./cpp
+ run: bazel coverage //...
+ - name: Upload to Codecov
+ uses: codecov/codecov-action@v2.0.2
+ with:
+ file: ./cpp/bazel-out/_coverage/_coverage_report.dat
+ flags: cpp
+ fail_ci_if_error: true
+ verbose: true
diff --git a/.github/workflows/coverage.yml b/.github/workflows/java_coverage.yml
similarity index 61%
rename from .github/workflows/coverage.yml
rename to .github/workflows/java_coverage.yml
index 57ca08f..f677dee 100644
--- a/.github/workflows/coverage.yml
+++ b/.github/workflows/java_coverage.yml
@@ -1,25 +1,29 @@
-name: Codecov
+name: Java Coverage
on:
pull_request:
types: [opened, reopened, synchronize]
+ paths:
+ - "java/**"
push:
branches:
- - master
+ - java_dev
+# mainly refer to: https://github.com/merkrafter/Merkompiler/blob/development/.github/workflows/quality_assurance.yml
jobs:
calculate-coverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- - name: Set up JDK 16
+ - name: Set up JDK 11
uses: actions/setup-java@v2
with:
- java-version: '16'
- distribution: 'adopt'
+ java-version: "11"
+ distribution: "adopt"
- name: Generate coverage report
run: mvn test --file ./java/pom.xml
- name: Upload to Codecov
uses: codecov/codecov-action@v2.0.2
with:
file: ./java/client/target/site/jacoco/jacoco.xml
+ flags: java
fail_ci_if_error: true
- verbose: true
\ No newline at end of file
+ verbose: true
diff --git a/README.md b/README.md
index 0914912..158bf5e 100644
--- a/README.md
+++ b/README.md
@@ -5,8 +5,8 @@
[](https://github.com/apache/rocketmq-clients/actions/workflows/csharp_build.yml)
[](https://github.com/apache/rocketmq-clients/actions/workflows/java_build.yml)
[](https://github.com/apache/rocketmq-clients/actions/workflows/golang_build.yml)
-[](https://codecov.io/gh/apache/rocketmq-clients)
-
+[](https://codecov.io/gh/apache/rocketmq-clients)
+[](https://codecov.io/gh/apache/rocketmq-clients)
## Overview
Client bindings for [Apache RocketMQ](https://rocketmq.apache.org/), all of them follow the specification of [rocketmq-apis](https://github.com/apache/rocketmq-apis), replacing 4.x remoting-based counterparts. Clients in this repository are built on top of [Protocol Buffers](https://developers.google.com/protocol-buffers) and [gRPC](https://grpc.io/).
diff --git a/cpp/source/base/tests/AssignmentTest.cpp b/cpp/source/base/tests/AssignmentTest.cpp
index 118e12e..dcb3e58 100644
--- a/cpp/source/base/tests/AssignmentTest.cpp
+++ b/cpp/source/base/tests/AssignmentTest.cpp
@@ -17,7 +17,7 @@
#include "gtest/gtest.h"
#include <algorithm>
-
+#include "rocketmq/RocketMQ.h"
#include "Protocol.h"
ROCKETMQ_NAMESPACE_BEGIN
diff --git a/cpp/source/base/tests/BUILD.bazel b/cpp/source/base/tests/BUILD.bazel
index 4037b9d..9717d61 100644
--- a/cpp/source/base/tests/BUILD.bazel
+++ b/cpp/source/base/tests/BUILD.bazel
@@ -21,34 +21,34 @@ cc_test(
deps = base_deps,
)
-cc_test(
- name = "message_queue_test",
- srcs = [
- "MessageQueueTest.cpp",
- ],
- deps = base_deps,
-)
+# cc_test(
+# name = "message_queue_test",
+# srcs = [
+# "MessageQueueTest.cpp",
+# ],
+# deps = base_deps,
+# )
-cc_test(
- name = "configuration_test",
- srcs = [
- "ConfigurationTest.cpp",
- ],
- deps = base_deps,
-)
+# cc_test(
+# name = "configuration_test",
+# srcs = [
+# "ConfigurationTest.cpp",
+# ],
+# deps = base_deps,
+# )
-cc_test(
- name = "mix_all_test",
- srcs = [
- "MixAllTest.cpp",
- ],
- deps = base_deps,
-)
+# cc_test(
+# name = "mix_all_test",
+# srcs = [
+# "MixAllTest.cpp",
+# ],
+# deps = base_deps,
+# )
-cc_test(
- name = "retry_policy_test",
- srcs = [
- "RetryPolicyTest.cpp",
- ],
- deps = base_deps,
-)
\ No newline at end of file
+# cc_test(
+# name = "retry_policy_test",
+# srcs = [
+# "RetryPolicyTest.cpp",
+# ],
+# deps = base_deps,
+# )
\ No newline at end of file
diff --git a/cpp/source/base/tests/ConfigurationTest.cpp b/cpp/source/base/tests/ConfigurationTest.cpp
deleted file mode 100644
index 9174e39..0000000
--- a/cpp/source/base/tests/ConfigurationTest.cpp
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://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.
- */
-
-#include <chrono>
-#include <memory>
-
-#include "gtest/gtest.h"
-#include "rocketmq/Configuration.h"
-
-ROCKETMQ_NAMESPACE_BEGIN
-
-class ConfigurationTest : public testing::Test {
-public:
-protected:
- std::string endpoints_{"8.8.8.8:80;8.8.4.4:80"};
- std::chrono::milliseconds request_timeout_{std::chrono::seconds(1)};
-};
-
-TEST_F(ConfigurationTest, testEndpoints) {
- auto configuration = Configuration::newBuilder().withEndpoints(endpoints_).build();
- ASSERT_EQ(endpoints_, configuration.endpoints());
-}
-
-TEST_F(ConfigurationTest, testCredentialsProvider) {
- std::string access_key = "ak";
- std::string access_secret = "as";
- auto credentials_provider = std::make_shared<StaticCredentialsProvider>(access_key, access_secret);
- auto configuration = Configuration::newBuilder().withCredentialsProvider(credentials_provider).build();
- auto credentials = configuration.credentialsProvider()->getCredentials();
-
- ASSERT_EQ(access_key, credentials.accessKey());
- ASSERT_EQ(access_secret, credentials.accessSecret());
-}
-
-TEST_F(ConfigurationTest, testRequestTimeout) {
- auto configuration = Configuration::newBuilder().withRequestTimeout(request_timeout_).build();
- ASSERT_EQ(request_timeout_, configuration.requestTimeout());
-}
-
-ROCKETMQ_NAMESPACE_END
\ No newline at end of file
diff --git a/cpp/source/base/tests/MessageBuilderTest.cpp b/cpp/source/base/tests/MessageBuilderTest.cpp
index 9ad4d58..f21bbcb 100644
--- a/cpp/source/base/tests/MessageBuilderTest.cpp
+++ b/cpp/source/base/tests/MessageBuilderTest.cpp
@@ -19,6 +19,7 @@
#include "MessageExt.h"
#include "gtest/gtest.h"
#include "rocketmq/Message.h"
+#include "rocketmq/RocketMQ.h"
ROCKETMQ_NAMESPACE_BEGIN
diff --git a/cpp/source/base/tests/MessageQueueTest.cpp b/cpp/source/base/tests/MessageQueueTest.cpp
deleted file mode 100644
index 805934e..0000000
--- a/cpp/source/base/tests/MessageQueueTest.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://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.
- */
-
-#include <apache/rocketmq/v2/definition.pb.h>
-#include <cstdint>
-
-#include "absl/container/flat_hash_map.h"
-#include "google/protobuf/map.h"
-#include "gtest/gtest.h"
-
-#include "Protocol.h"
-
-ROCKETMQ_NAMESPACE_BEGIN
-
-class MessageQueueTest : public testing::Test {
-public:
- void SetUp() override {
- }
-
- void TearDown() override {
- }
-};
-
-ROCKETMQ_NAMESPACE_END
diff --git a/cpp/source/base/tests/MixAllTest.cpp b/cpp/source/base/tests/MixAllTest.cpp
deleted file mode 100644
index 53b019a..0000000
--- a/cpp/source/base/tests/MixAllTest.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://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.
- */
-#include <system_error>
-
-#include "MixAll.h"
-#include "absl/strings/str_split.h"
-#include "gtest/gtest.h"
-
-ROCKETMQ_NAMESPACE_BEGIN
-
-TEST(MixAllTest, testOsName) {
- const char* os_name = MixAll::osName();
- std::cout << os_name << std::endl;
-}
-
-TEST(MixAllTest, testValidate) {
- auto message = Message::newBuilder().withTopic("").build();
- std::error_code ec;
- MixAll::validate(*message, ec);
- ASSERT_EQ(true, (bool)ec);
- ASSERT_TRUE(absl::StrContains(ec.message(), "illegal"));
-}
-
-ROCKETMQ_NAMESPACE_END
\ No newline at end of file
diff --git a/cpp/source/base/tests/RetryPolicyTest.cpp b/cpp/source/base/tests/RetryPolicyTest.cpp
deleted file mode 100644
index 1e3c7bf..0000000
--- a/cpp/source/base/tests/RetryPolicyTest.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://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.
- */
-#include "RetryPolicy.h"
-#include "gtest/gtest.h"
-
-ROCKETMQ_NAMESPACE_BEGIN
-
-TEST(RetryPolicyTest, testBackoff) {
- RetryPolicy policy;
- policy.max_attempt = 3;
- policy.strategy = BackoffStrategy::Customized;
- policy.initial = absl::Milliseconds(0);
- policy.max = absl::Milliseconds(0);
- policy.multiplier = 0.0f;
- policy.next = {absl::Milliseconds(10), absl::Milliseconds(100), absl::Milliseconds(500)};
-
- ASSERT_EQ(policy.backoff(1), 10);
- ASSERT_EQ(policy.backoff(2), 100);
- ASSERT_EQ(policy.backoff(3), 500);
- ASSERT_EQ(policy.backoff(4), 500);
- ASSERT_EQ(policy.backoff(10000), 500);
-}
-
-ROCKETMQ_NAMESPACE_END
\ No newline at end of file
diff --git a/cpp/source/concurrent/tests/BUILD.bazel b/cpp/source/concurrent/tests/BUILD.bazel
deleted file mode 100644
index c464ca4..0000000
--- a/cpp/source/concurrent/tests/BUILD.bazel
+++ /dev/null
@@ -1,26 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://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.
-#
-cc_test(
- name = "countdown_latch_test",
- deps = [
- "//source/concurrent:countdown_latch_library",
- "@com_google_googletest//:gtest_main",
- ],
- srcs = [
- "CountdownLatchTest.cpp"
- ],
-)
\ No newline at end of file
diff --git a/cpp/source/concurrent/tests/CountdownLatchTest.cpp b/cpp/source/concurrent/tests/CountdownLatchTest.cpp
deleted file mode 100644
index e0d0c4f..0000000
--- a/cpp/source/concurrent/tests/CountdownLatchTest.cpp
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://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.
- */
-#include <chrono>
-#include <cstddef>
-#include <mutex>
-#include <thread>
-
-#include "CountdownLatch.h"
-#include "gtest/gtest.h"
-#include "rocketmq/RocketMQ.h"
-
-ROCKETMQ_NAMESPACE_BEGIN
-
-class CountdownLatchTest : public testing::Test {
-public:
- void SetUp() override {
- countdown_latch_ = absl::make_unique<CountdownLatch>(permit_);
- }
-
- void TearDown() override {
- }
-
-protected:
- const std::size_t permit_{2};
- std::unique_ptr<CountdownLatch> countdown_latch_;
- absl::Mutex mtx_;
-};
-
-TEST_F(CountdownLatchTest, testAwait) {
- int count = 0;
-
- auto lambda = [&]() {
- std::this_thread::sleep_for(std::chrono::milliseconds(100));
- {
- absl::MutexLock lk(&mtx_);
- count++;
- }
- countdown_latch_->countdown();
- };
-
- std::vector<std::thread> threads;
- for (std::size_t i = 0; i < permit_; i++) {
- auto t = std::thread(lambda);
- threads.push_back(std::move(t));
- }
-
- countdown_latch_->await();
-
- ASSERT_EQ(count, permit_);
-
- for (auto& thread : threads) {
- if (thread.joinable()) {
- thread.join();
- }
- }
-}
-
-ROCKETMQ_NAMESPACE_END
\ No newline at end of file
diff --git a/cpp/source/rocketmq/tests/BUILD.bazel b/cpp/source/rocketmq/tests/BUILD.bazel
deleted file mode 100644
index 25303d7..0000000
--- a/cpp/source/rocketmq/tests/BUILD.bazel
+++ /dev/null
@@ -1,46 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://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.
-#
-load("@rules_cc//cc:defs.bzl", "cc_test")
-
-base_deps = [
- "//source/rocketmq:rocketmq_library",
- "@com_google_googletest//:gtest_main",
-]
-
-cc_test(
- name = "time_test",
- srcs = [
- "TimeTest.cpp",
- ],
- deps = base_deps,
-)
-
-cc_test(
- name = "send_context_test",
- srcs = [
- "SendContextTest.cpp",
- ],
- deps = base_deps,
-)
-
-cc_test(
- name = "client_impl_test",
- srcs = [
- "ClientImplTest.cpp",
- ],
- deps = base_deps,
-)
\ No newline at end of file
diff --git a/cpp/source/rocketmq/tests/ClientImplTest.cpp b/cpp/source/rocketmq/tests/ClientImplTest.cpp
deleted file mode 100644
index 3975e6b..0000000
--- a/cpp/source/rocketmq/tests/ClientImplTest.cpp
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://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.
- */
-#include <cstddef>
-#include <unordered_set>
-
-#include "ClientImpl.h"
-#include "gtest/gtest.h"
-#include "rocketmq/RocketMQ.h"
-
-ROCKETMQ_NAMESPACE_BEGIN
-
-TEST(ClientImplTest, testClientId) {
- std::unordered_set<std::string> client_ids;
- for (std::size_t i = 0; i < 128; i++) {
- auto&& client_id = clientId();
- std::cout << client_id << std::endl;
- ASSERT_EQ(client_ids.find(client_id), client_ids.end());
- client_ids.insert(std::move(client_id));
- }
-}
-
-ROCKETMQ_NAMESPACE_END
\ No newline at end of file
diff --git a/cpp/source/rocketmq/tests/SendContextTest.cpp b/cpp/source/rocketmq/tests/SendContextTest.cpp
deleted file mode 100644
index e03c8b7..0000000
--- a/cpp/source/rocketmq/tests/SendContextTest.cpp
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://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.
- */
-#include <memory>
-
-#include "SendContext.h"
-#include "gtest/gtest.h"
-
-ROCKETMQ_NAMESPACE_BEGIN
-
-TEST(SendContextTest, testBasics) {
- auto message = Message::newBuilder().withBody("body").withTopic("topic").withGroup("group0").withTag("TagA").build();
- auto callback = [](const std::error_code&, const SendReceipt&) {};
- std::weak_ptr<ProducerImpl> producer;
- std::vector<rmq::MessageQueue> message_queues;
- auto send_context = std::make_shared<SendContext>(producer, std::move(message), callback, message_queues);
- send_context.reset();
-}
-
-ROCKETMQ_NAMESPACE_END
\ No newline at end of file
diff --git a/cpp/source/rocketmq/tests/TimeTest.cpp b/cpp/source/rocketmq/tests/TimeTest.cpp
deleted file mode 100644
index 898aef0..0000000
--- a/cpp/source/rocketmq/tests/TimeTest.cpp
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://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.
- */
-
-#include "absl/time/time.h"
-#include "gtest/gtest.h"
-#include "rocketmq/RocketMQ.h"
-
-ROCKETMQ_NAMESPACE_BEGIN
-
-TEST(TimeTest, testTimeHelpers) {
- auto duration = absl::Seconds(1) + absl::Nanoseconds(100);
- auto seconds = absl::ToInt64Seconds(duration);
- ASSERT_EQ(1, seconds);
- ASSERT_EQ(100, absl::ToInt64Nanoseconds(duration - absl::Seconds(seconds)));
-}
-
-ROCKETMQ_NAMESPACE_END
\ No newline at end of file
diff --git a/cpp/source/stats/tests/BUILD.bazel b/cpp/source/stats/tests/BUILD.bazel
deleted file mode 100644
index 10005d0..0000000
--- a/cpp/source/stats/tests/BUILD.bazel
+++ /dev/null
@@ -1,28 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://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.
-#
-load("@rules_cc//cc:defs.bzl", "cc_test")
-
-cc_test(
- name = "publish_stats_test",
- srcs = [
- "PublishStatsTest.cpp",
- ],
- deps = [
- "//source/stats",
- "@com_google_googletest//:gtest_main",
- ],
-)
\ No newline at end of file
diff --git a/cpp/source/stats/tests/PublishStatsTest.cpp b/cpp/source/stats/tests/PublishStatsTest.cpp
deleted file mode 100644
index 7c4d997..0000000
--- a/cpp/source/stats/tests/PublishStatsTest.cpp
+++ /dev/null
@@ -1,155 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://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.
- */
-
-#include <chrono>
-#include <iostream>
-#include <mutex>
-#include <thread>
-
-#include "PublishStats.h"
-#include "gtest/gtest.h"
-
-ROCKETMQ_NAMESPACE_BEGIN
-
-class Handler : public opencensus::stats::StatsExporter::Handler {
-public:
- void ExportViewData(
- const std::vector<std::pair<opencensus::stats::ViewDescriptor, opencensus::stats::ViewData>>& data) override {
- std::cout << "================================================================================" << std::endl;
- for (const auto& datum : data) {
- const auto& view_data = datum.second;
- const auto& descriptor = datum.first;
- auto start_times = view_data.start_times();
- auto columns = descriptor.columns();
-
- switch (view_data.type()) {
- case opencensus::stats::ViewData::Type::kInt64: {
- auto data_map = view_data.int_data();
- for (const auto& entry : data_map) {
- absl::Time time = start_times[entry.first];
- std::string line;
- line.append(absl::FormatTime(time)).append(" ");
- line.append(descriptor.name());
- line.append("{");
- for (std::size_t i = 0; i < columns.size(); i++) {
- line.append(columns[i].name()).append("=").append(entry.first[i]);
- if (i < columns.size() - 1) {
- line.append(", ");
- } else {
- line.append("} ==> ");
- }
- }
- line.append(std::to_string(entry.second));
- println(line);
- }
- break;
- }
- case opencensus::stats::ViewData::Type::kDouble: {
- exportDatum(datum.first, view_data.start_time(), view_data.end_time(), view_data.double_data());
- break;
- }
- case opencensus::stats::ViewData::Type::kDistribution: {
- for (const auto& entry : view_data.distribution_data()) {
- std::string line(descriptor.name());
- line.append("{");
- for (std::size_t i = 0; i < columns.size(); i++) {
- line.append(columns[i].name()).append("=").append(entry.first[i]);
- if (i < columns.size() - 1) {
- line.append(", ");
- } else {
- line.append("} ==> ");
- }
- }
- line.append(entry.second.DebugString());
- println(line);
-
- println(absl::StrJoin(entry.second.bucket_boundaries().lower_boundaries(), ","));
- }
- break;
- }
- }
- }
- }
-
- template <typename T>
- void exportDatum(const opencensus::stats::ViewDescriptor& descriptor,
- absl::Time start_time,
- absl::Time end_time,
- const opencensus::stats::ViewData::DataMap<T>& data) {
- if (data.empty()) {
- // std::cout << "No data for " << descriptor.name() << std::endl;
- return;
- }
-
- for (const auto& row : data) {
- for (std::size_t column = 0; column < descriptor.columns().size(); column++) {
- std::cout << descriptor.name() << "[" << descriptor.columns()[column].name() << "=" << row.first[column] << "]"
- << DataToString(row.second) << std::endl;
- }
- }
- }
-
- std::mutex console_mtx;
- void println(const std::string& line) {
- std::lock_guard<std::mutex> lk(console_mtx);
- std::cout << line << std::endl;
- }
-
- // Functions to format data for different aggregation types.
- std::string DataToString(double data) {
- return absl::StrCat(": ", data, "\n");
- }
- std::string DataToString(int64_t data) {
- return absl::StrCat(": ", data, "\n");
- }
- std::string DataToString(const opencensus::stats::Distribution& data) {
- std::string output = "\n";
- std::vector<std::string> lines = absl::StrSplit(data.DebugString(), '\n');
- // Add indent.
- for (const auto& line : lines) {
- absl::StrAppend(&output, " ", line, "\n");
- }
- return output;
- }
-};
-
-TEST(StatsTest, testBasics) {
- std::string t1("T1");
- std::string t2("T2");
- PublishStats metrics;
- opencensus::stats::StatsExporter::SetInterval(absl::Seconds(5));
- opencensus::stats::StatsExporter::RegisterPushHandler(absl::make_unique<Handler>());
- std::atomic_bool stopped{false};
- auto generator = [&]() {
- while (!stopped) {
- for (std::size_t i = 0; i < 10; i++) {
- opencensus::stats::Record({{metrics.latency(), i * 10}},
- {{Tag::topicTag(), t1}, {Tag::clientIdTag(), "client-0"}});
- }
- std::this_thread::sleep_for(std::chrono::seconds(1));
- }
- };
- std::thread feeder(generator);
-
- std::this_thread::sleep_for(std::chrono::seconds(10));
- stopped.store(true);
- if (feeder.joinable()) {
- feeder.join();
- }
-}
-
-ROCKETMQ_NAMESPACE_END