Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

coro channel #533

Merged
merged 3 commits into from
Feb 29, 2024
Merged

coro channel #533

merged 3 commits into from
Feb 29, 2024

Conversation

qicosmos
Copy link
Owner

asio::experimental::channel<void(std::error_code, int)> ch(ctx, 10000);
co_await coro_io::async_send(ch, 41);
co_await coro_io::async_send(ch, 42);

  {
    auto [err, val] = co_await coro_io::async_receive<int>(ch);
    CHECK(!err);
    CHECK(val == 41);
  }

  {
    auto [err, val] = co_await coro_io::async_receive<int>(ch);
    CHECK(!err);
    CHECK(val == 42);
  }

@codecov-commenter
Copy link

codecov-commenter commented Feb 29, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 69.89%. Comparing base (fab9204) to head (427bb64).

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #533      +/-   ##
==========================================
+ Coverage   69.84%   69.89%   +0.05%     
==========================================
  Files         221      235      +14     
  Lines       13515    13847     +332     
==========================================
+ Hits         9439     9679     +240     
- Misses       4076     4168      +92     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link

Code Coverage Report
for detail, goto summary download Artifacts

Filename                              Functions  Missed Functions  Executed       Lines      Missed Lines     Cover    Branches   Missed Branches     Cover
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
cinatra_log_wrapper.hpp                       4                 1    75.00%           9                 1    88.89%           0                 0         -
cookie.hpp                                   15                 2    86.67%          84                 2    97.62%          28                 3    89.29%
coro_http_client.hpp                         86                 4    95.35%        1425               204    85.68%         456               116    74.56%
coro_http_connection.hpp                     36                 2    94.44%         660               161    75.61%         194                63    67.53%
coro_http_request.hpp                        27                 4    85.19%         189                15    92.06%          72                 9    87.50%
coro_http_response.hpp                       27                 6    77.78%         206                64    68.93%          88                37    57.95%
coro_http_router.hpp                         15                 0   100.00%         182                33    81.87%          20                 8    60.00%
coro_http_server.hpp                         40                 1    97.50%         776                66    91.49%         152                38    75.00%
coro_radix_tree.hpp                          17                 1    94.12%         264                45    82.95%         136                33    75.74%
define.h                                      2                 0   100.00%          28                 2    92.86%          20                 1    95.00%
http_parser.hpp                              28                 5    82.14%         196                32    83.67%          54                12    77.78%
mime_types.hpp                                1                 0   100.00%           7                 2    71.43%           2                 1    50.00%
multipart.hpp                                 4                 0   100.00%          86                13    84.88%          20                 4    80.00%
picohttpparser.h                             14                 6    57.14%         467               278    40.47%         210               102    51.43%
response_cv.hpp                               2                 0   100.00%          55                32    41.82%          46                16    65.22%
session.hpp                                  11                 0   100.00%          54                 2    96.30%           4                 1    75.00%
session_manager.hpp                          10                 1    90.00%          67                 5    92.54%          10                 1    90.00%
sha1.hpp                                     12                 0   100.00%         181                 8    95.58%          12                 2    83.33%
string_resize.hpp                             2                 0   100.00%          18                 0   100.00%           2                 0   100.00%
time_util.hpp                                18                 7    61.11%         154                70    54.55%          26                 2    92.31%
uri.hpp                                      17                 5    70.59%         200                57    71.50%         166                49    70.48%
url_encode_decode.hpp                         4                 0   100.00%          85                20    76.47%          48                16    66.67%
utils.hpp                                    14                 0   100.00%         202                22    89.11%         116                43    62.93%
websocket.hpp                                14                 3    78.57%         174                13    92.53%          78                18    76.92%
ylt/coro_io/channel.hpp                      15                 0   100.00%         106                 7    93.40%          30                 5    83.33%
ylt/coro_io/client_pool.hpp                  22                 4    81.82%         324               173    46.60%          72                46    36.11%
ylt/coro_io/coro_file.hpp                    17                 1    94.12%         162                31    80.86%          42                15    64.29%
ylt/coro_io/coro_io.hpp                      40                 2    95.00%         234                16    93.16%           4                 1    75.00%
ylt/coro_io/detail/client_queue.hpp          10                 5    50.00%          47                23    51.06%          10                 4    60.00%
ylt/coro_io/io_context_pool.hpp              30                 6    80.00%         186                36    80.65%          22                 7    68.18%
ylt/util/concurrentqueue.h                   78                27    65.38%        1241               718    42.14%         290               198    31.72%
ylt/util/expected.hpp                         6                 4    33.33%           6                 4    33.33%           0                 0         -
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL                                       638                97    84.80%        8075              2155    73.31%        2430               851    64.98%

Copy link

Code Coverage Report
for detail, goto summary download Artifacts

Filename                              Functions  Missed Functions  Executed       Lines      Missed Lines     Cover    Branches   Missed Branches     Cover
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
cinatra_log_wrapper.hpp                       4                 1    75.00%           9                 1    88.89%           0                 0         -
cookie.hpp                                   15                 2    86.67%          84                 2    97.62%          28                 3    89.29%
coro_http_client.hpp                         86                 4    95.35%        1425               202    85.82%         456               115    74.78%
coro_http_connection.hpp                     36                 2    94.44%         660               161    75.61%         194                63    67.53%
coro_http_request.hpp                        27                 4    85.19%         189                15    92.06%          72                 9    87.50%
coro_http_response.hpp                       27                 6    77.78%         206                64    68.93%          88                37    57.95%
coro_http_router.hpp                         15                 0   100.00%         182                33    81.87%          20                 8    60.00%
coro_http_server.hpp                         40                 1    97.50%         776                66    91.49%         152                38    75.00%
coro_radix_tree.hpp                          17                 1    94.12%         264                45    82.95%         136                33    75.74%
define.h                                      2                 0   100.00%          28                 2    92.86%          20                 1    95.00%
http_parser.hpp                              28                 5    82.14%         196                32    83.67%          54                12    77.78%
mime_types.hpp                                1                 0   100.00%           7                 2    71.43%           2                 1    50.00%
multipart.hpp                                 4                 0   100.00%          86                13    84.88%          20                 4    80.00%
picohttpparser.h                             14                 6    57.14%         467               278    40.47%         210               102    51.43%
response_cv.hpp                               2                 0   100.00%          55                32    41.82%          46                16    65.22%
session.hpp                                  11                 0   100.00%          54                 2    96.30%           4                 1    75.00%
session_manager.hpp                          10                 1    90.00%          67                 5    92.54%          10                 1    90.00%
sha1.hpp                                     12                 0   100.00%         181                 8    95.58%          12                 2    83.33%
string_resize.hpp                             2                 0   100.00%          18                 0   100.00%           2                 0   100.00%
time_util.hpp                                18                 7    61.11%         154                70    54.55%          26                 2    92.31%
uri.hpp                                      17                 5    70.59%         200                57    71.50%         166                49    70.48%
url_encode_decode.hpp                         4                 0   100.00%          85                20    76.47%          48                16    66.67%
utils.hpp                                    14                 0   100.00%         202                22    89.11%         116                43    62.93%
websocket.hpp                                14                 3    78.57%         174                13    92.53%          78                18    76.92%
ylt/coro_io/channel.hpp                      15                 0   100.00%         106                 7    93.40%          30                 5    83.33%
ylt/coro_io/client_pool.hpp                  22                 4    81.82%         324               173    46.60%          72                46    36.11%
ylt/coro_io/coro_file.hpp                    17                 1    94.12%         162                31    80.86%          42                15    64.29%
ylt/coro_io/coro_io.hpp                      40                 2    95.00%         234                16    93.16%           4                 1    75.00%
ylt/coro_io/detail/client_queue.hpp          10                 5    50.00%          47                23    51.06%          10                 4    60.00%
ylt/coro_io/io_context_pool.hpp              30                 6    80.00%         186                36    80.65%          22                 7    68.18%
ylt/util/concurrentqueue.h                   78                27    65.38%        1241               722    41.82%         290               200    31.03%
ylt/util/expected.hpp                         6                 4    33.33%           6                 4    33.33%           0                 0         -
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL                                       638                97    84.80%        8075              2157    73.29%        2430               852    64.94%

Copy link

Code Coverage Report
for detail, goto summary download Artifacts

Filename                              Functions  Missed Functions  Executed       Lines      Missed Lines     Cover    Branches   Missed Branches     Cover
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
cinatra_log_wrapper.hpp                       4                 1    75.00%           9                 1    88.89%           0                 0         -
cookie.hpp                                   15                 2    86.67%          84                 2    97.62%          28                 3    89.29%
coro_http_client.hpp                         86                 4    95.35%        1425               202    85.82%         456               115    74.78%
coro_http_connection.hpp                     36                 2    94.44%         660               161    75.61%         194                63    67.53%
coro_http_request.hpp                        27                 4    85.19%         189                15    92.06%          72                 9    87.50%
coro_http_response.hpp                       27                 6    77.78%         206                64    68.93%          88                37    57.95%
coro_http_router.hpp                         15                 0   100.00%         182                33    81.87%          20                 8    60.00%
coro_http_server.hpp                         40                 1    97.50%         776                66    91.49%         152                38    75.00%
coro_radix_tree.hpp                          17                 1    94.12%         264                45    82.95%         136                33    75.74%
define.h                                      2                 0   100.00%          28                 2    92.86%          20                 1    95.00%
http_parser.hpp                              28                 5    82.14%         196                32    83.67%          54                12    77.78%
mime_types.hpp                                1                 0   100.00%           7                 2    71.43%           2                 1    50.00%
multipart.hpp                                 4                 0   100.00%          86                13    84.88%          20                 4    80.00%
picohttpparser.h                             14                 6    57.14%         467               278    40.47%         210               102    51.43%
response_cv.hpp                               2                 0   100.00%          55                32    41.82%          46                16    65.22%
session.hpp                                  11                 0   100.00%          54                 2    96.30%           4                 1    75.00%
session_manager.hpp                          10                 1    90.00%          67                 5    92.54%          10                 1    90.00%
sha1.hpp                                     12                 0   100.00%         181                 8    95.58%          12                 2    83.33%
string_resize.hpp                             2                 0   100.00%          18                 0   100.00%           2                 0   100.00%
time_util.hpp                                18                 7    61.11%         154                70    54.55%          26                 2    92.31%
uri.hpp                                      17                 5    70.59%         200                57    71.50%         166                49    70.48%
url_encode_decode.hpp                         4                 0   100.00%          85                20    76.47%          48                16    66.67%
utils.hpp                                    14                 0   100.00%         202                22    89.11%         116                43    62.93%
websocket.hpp                                14                 3    78.57%         174                13    92.53%          78                18    76.92%
ylt/coro_io/channel.hpp                      15                 0   100.00%         106                 7    93.40%          30                 5    83.33%
ylt/coro_io/client_pool.hpp                  22                 4    81.82%         324               173    46.60%          72                46    36.11%
ylt/coro_io/coro_file.hpp                    17                 1    94.12%         162                31    80.86%          42                15    64.29%
ylt/coro_io/coro_io.hpp                      40                 2    95.00%         234                16    93.16%           4                 1    75.00%
ylt/coro_io/detail/client_queue.hpp          10                 5    50.00%          47                23    51.06%          10                 4    60.00%
ylt/coro_io/io_context_pool.hpp              30                 6    80.00%         186                36    80.65%          22                 7    68.18%
ylt/util/concurrentqueue.h                   78                27    65.38%        1241               718    42.14%         290               198    31.72%
ylt/util/expected.hpp                         6                 4    33.33%           6                 4    33.33%           0                 0         -
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
TOTAL                                       638                97    84.80%        8075              2153    73.34%        2430               850    65.02%

@qicosmos qicosmos merged commit 9e2e7ef into master Feb 29, 2024
22 checks passed
@qicosmos qicosmos deleted the coro_channel branch February 29, 2024 03:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants