Skip to content

Extend window_toggle tests#507

Merged
victimsnino merged 9 commits into
v2from
extend_tests
Feb 9, 2024
Merged

Extend window_toggle tests#507
victimsnino merged 9 commits into
v2from
extend_tests

Conversation

@victimsnino
Copy link
Copy Markdown
Owner

No description provided.

@victimsnino victimsnino marked this pull request as ready for review January 15, 2024 19:40
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Jan 16, 2024

BENCHMARK RESULTS (AUTOGENERATED)

ci-ubuntu-gcc

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 353.31 ns 2.16 ns 2.16 ns 1.00
Subscribe empty callbacks to empty observable via pipe operator 320.09 ns 2.16 ns 2.16 ns 1.00

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 814.76 ns 0.31 ns 0.31 ns 1.00
from array of 1 - create + subscribe + current_thread 1185.63 ns 5.25 ns 5.25 ns 1.00
concat_as_source of just(1 immediate) create + subscribe 2721.09 ns 116.38 ns 123.60 ns 0.94
defer from array of 1 - defer + create + subscribe + immediate 834.08 ns 0.31 ns 0.31 ns 1.00
interval - interval + take(3) + subscribe + immediate 2186.29 ns 58.08 ns 57.99 ns 1.00
interval - interval + take(3) + subscribe + current_thread 3339.80 ns 32.10 ns 32.11 ns 1.00

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 1233.87 ns 0.31 ns 0.31 ns 1.00
immediate_just+filter(true)+subscribe 897.78 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 1068.44 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,1,2)+distinct_until_changed()+subscribe 1003.81 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+first()+subscribe 1419.17 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+last()+subscribe 991.99 ns 0.31 ns 0.31 ns 1.00
immediate_just+take_last(1)+subscribe 1195.61 ns 18.82 ns 19.13 ns 0.98

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 274.71 ns 2.16 ns 2.16 ns 1.00
current_thread scheduler create worker + schedule 400.76 ns 7.10 ns 7.10 ns 1.00
current_thread scheduler create worker + schedule + recursive schedule 990.57 ns 64.44 ns 63.89 ns 1.01

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 946.70 ns 0.31 ns 0.31 ns 1.00
immediate_just+scan(10, std::plus)+subscribe 1337.38 ns 0.31 ns 0.31 ns 1.00
immediate_just+flat_map(immediate_just(v*2))+subscribe 2794.98 ns 167.77 ns 161.26 ns 1.04
immediate_just+buffer(2)+subscribe 1678.60 ns 14.50 ns 14.83 ns 0.98
immediate_just+window(2)+subscribe + subscsribe inner 2451.39 ns 1198.01 ns 1011.29 ns 1.18

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 938.75 ns - - 0.00
immediate_just+take_while(true)+subscribe 1018.18 ns 0.31 ns 0.31 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 2095.37 ns 0.31 ns 0.31 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 3656.54 ns 175.13 ns 178.85 ns 0.98
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 3794.52 ns 163.10 ns 164.47 ns 0.99
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 134.66 ns 136.78 ns 0.98
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 3887.70 ns 1061.22 ns 995.84 ns 1.07

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 34.57 ns 11.71 ns 12.03 ns 0.97

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1367.94 ns 14.20 ns 14.20 ns 1.00
basic sample with immediate scheduler 1367.58 ns 5.55 ns 5.55 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 991.24 ns 0.31 ns 0.31 ns 1.00

ci-macos

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 1494.93 ns 5.74 ns 5.13 ns 1.12
Subscribe empty callbacks to empty observable via pipe operator 1480.21 ns 5.80 ns 4.72 ns 1.23

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 3013.28 ns 0.35 ns 0.28 ns 1.25
from array of 1 - create + subscribe + current_thread 3655.46 ns 38.13 ns 28.97 ns 1.32
concat_as_source of just(1 immediate) create + subscribe 8382.42 ns 492.67 ns 376.26 ns 1.31
defer from array of 1 - defer + create + subscribe + immediate 2998.44 ns 0.42 ns 0.27 ns 1.58
interval - interval + take(3) + subscribe + immediate 8069.93 ns 216.74 ns 129.26 ns 1.68
interval - interval + take(3) + subscribe + current_thread 9307.97 ns 166.38 ns 118.42 ns 1.41

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 4268.64 ns 0.35 ns 0.23 ns 1.50
immediate_just+filter(true)+subscribe 3176.91 ns 0.35 ns 0.23 ns 1.49
immediate_just(1,2)+skip(1)+subscribe 4117.85 ns 0.35 ns 0.22 ns 1.55
immediate_just(1,1,2)+distinct_until_changed()+subscribe 3141.99 ns 0.69 ns 0.45 ns 1.55
immediate_just(1,2)+first()+subscribe 4765.14 ns 0.35 ns 0.23 ns 1.49
immediate_just(1,2)+last()+subscribe 3551.31 ns 0.35 ns 0.23 ns 1.49
immediate_just+take_last(1)+subscribe 4497.31 ns 102.73 ns 69.33 ns 1.48

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 1330.77 ns 9.13 ns 4.68 ns 1.95
current_thread scheduler create worker + schedule 1793.04 ns 60.06 ns 41.46 ns 1.45
current_thread scheduler create worker + schedule + recursive schedule 3058.94 ns 479.93 ns 219.55 ns 2.19

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 3282.46 ns 0.35 ns 0.24 ns 1.47
immediate_just+scan(10, std::plus)+subscribe 4801.28 ns 0.86 ns 0.47 ns 1.84
immediate_just+flat_map(immediate_just(v*2))+subscribe 11356.20 ns 632.42 ns 414.36 ns 1.53
immediate_just+buffer(2)+subscribe 3931.56 ns 104.23 ns 68.60 ns 1.52
immediate_just+window(2)+subscribe + subscsribe inner 8680.45 ns 3488.72 ns 2169.77 ns 1.61

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 3208.26 ns - - 0.00
immediate_just+take_while(true)+subscribe 3207.74 ns 0.35 ns 0.24 ns 1.45

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 7485.79 ns 0.35 ns 0.22 ns 1.58

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 11521.40 ns 679.63 ns 561.99 ns 1.21
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 13661.67 ns 673.56 ns 455.78 ns 1.48
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 878.21 ns 487.28 ns 1.80
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 12315.35 ns 3722.40 ns 1971.51 ns 1.89

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 109.34 ns 73.47 ns 49.47 ns 1.49

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 4215.14 ns 165.22 ns 112.81 ns 1.46
basic sample with immediate scheduler 5577.61 ns 22.56 ns 15.41 ns 1.46

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 3674.12 ns 0.35 ns 0.23 ns 1.49

ci-ubuntu-clang

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 269.42 ns 0.88 ns 0.88 ns 1.00
Subscribe empty callbacks to empty observable via pipe operator 268.11 ns 0.88 ns 0.88 ns 1.01

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 559.24 ns 0.31 ns 0.31 ns 1.00
from array of 1 - create + subscribe + current_thread 793.48 ns 5.56 ns 5.55 ns 1.00
concat_as_source of just(1 immediate) create + subscribe 1908.78 ns 112.67 ns 112.73 ns 1.00
defer from array of 1 - defer + create + subscribe + immediate 584.74 ns 0.31 ns 0.31 ns 1.00
interval - interval + take(3) + subscribe + immediate 1534.85 ns 57.07 ns 57.09 ns 1.00
interval - interval + take(3) + subscribe + current_thread 2081.02 ns 30.88 ns 30.88 ns 1.00

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 943.59 ns 0.31 ns 0.31 ns 1.00
immediate_just+filter(true)+subscribe 681.51 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 856.44 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,1,2)+distinct_until_changed()+subscribe 697.95 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+first()+subscribe 1093.03 ns 0.31 ns 0.31 ns 1.00
immediate_just(1,2)+last()+subscribe 756.03 ns 0.31 ns 0.31 ns 1.00
immediate_just+take_last(1)+subscribe 960.89 ns 0.31 ns 0.31 ns 1.00

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 196.15 ns 0.88 ns 0.88 ns 1.00
current_thread scheduler create worker + schedule 310.13 ns 5.57 ns 5.89 ns 0.95
current_thread scheduler create worker + schedule + recursive schedule 626.86 ns 60.32 ns 58.61 ns 1.03

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 688.19 ns 0.31 ns 0.31 ns 1.00
immediate_just+scan(10, std::plus)+subscribe 720.60 ns 0.31 ns 0.31 ns 1.00
immediate_just+flat_map(immediate_just(v*2))+subscribe 1840.30 ns 119.04 ns 119.72 ns 0.99
immediate_just+buffer(2)+subscribe 1372.08 ns 14.81 ns 15.12 ns 0.98
immediate_just+window(2)+subscribe + subscsribe inner 2200.28 ns 757.20 ns 769.10 ns 0.98

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 649.60 ns - - 0.00
immediate_just+take_while(true)+subscribe 672.09 ns 0.31 ns 0.31 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 1613.91 ns 0.31 ns 0.31 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 2638.14 ns 125.28 ns 125.68 ns 1.00
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 3048.49 ns 121.22 ns 123.16 ns 0.98
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 113.26 ns 117.21 ns 0.97
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 2686.64 ns 731.76 ns 724.46 ns 1.01

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 26.33 ns 12.95 ns 12.66 ns 1.02

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1047.75 ns 14.20 ns 14.19 ns 1.00
basic sample with immediate scheduler 1031.92 ns 6.17 ns 6.17 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 743.57 ns 0.31 ns 0.31 ns 1.00

ci-windows

General

name rxcpp rpp prev rpp ratio
Subscribe empty callbacks to empty observable 578.94 ns 4.94 ns 4.01 ns 1.23
Subscribe empty callbacks to empty observable via pipe operator 590.52 ns 4.94 ns 4.02 ns 1.23

Sources

name rxcpp rpp prev rpp ratio
from array of 1 - create + subscribe + immediate 1187.04 ns 4.93 ns 4.93 ns 1.00
from array of 1 - create + subscribe + current_thread 1467.26 ns 20.05 ns 19.76 ns 1.01
concat_as_source of just(1 immediate) create + subscribe 4695.77 ns 171.29 ns 172.35 ns 0.99
defer from array of 1 - defer + create + subscribe + immediate 1212.83 ns 4.93 ns 4.94 ns 1.00
interval - interval + take(3) + subscribe + immediate 3084.05 ns 131.72 ns 129.70 ns 1.02
interval - interval + take(3) + subscribe + current_thread 3507.05 ns 59.57 ns 60.75 ns 0.98

Filtering Operators

name rxcpp rpp prev rpp ratio
immediate_just+take(1)+subscribe 1854.67 ns 12.88 ns 12.87 ns 1.00
immediate_just+filter(true)+subscribe 1330.05 ns 12.39 ns 12.40 ns 1.00
immediate_just(1,2)+skip(1)+subscribe 1771.23 ns 13.03 ns 13.62 ns 0.96
immediate_just(1,1,2)+distinct_until_changed()+subscribe 1383.92 ns 15.81 ns 16.41 ns 0.96
immediate_just(1,2)+first()+subscribe 2410.89 ns 12.64 ns 12.95 ns 0.98
immediate_just(1,2)+last()+subscribe 1485.26 ns 14.09 ns 14.10 ns 1.00
immediate_just+take_last(1)+subscribe 2094.04 ns 59.27 ns 59.40 ns 1.00

Schedulers

name rxcpp rpp prev rpp ratio
immediate scheduler create worker + schedule 488.51 ns 7.12 ns 7.28 ns 0.98
current_thread scheduler create worker + schedule 667.11 ns 17.59 ns 18.20 ns 0.97
current_thread scheduler create worker + schedule + recursive schedule 1098.11 ns 110.08 ns 110.78 ns 0.99

Transforming Operators

name rxcpp rpp prev rpp ratio
immediate_just+map(v*2)+subscribe 1330.03 ns 12.34 ns 12.27 ns 1.01
immediate_just+scan(10, std::plus)+subscribe 1443.98 ns 21.60 ns 21.29 ns 1.01
immediate_just+flat_map(immediate_just(v*2))+subscribe 3551.32 ns 228.58 ns 227.60 ns 1.00
immediate_just+buffer(2)+subscribe 2659.90 ns 60.67 ns 60.50 ns 1.00
immediate_just+window(2)+subscribe + subscsribe inner 4104.51 ns 1128.90 ns 1132.92 ns 1.00

Conditional Operators

name rxcpp rpp prev rpp ratio
immediate_just+take_while(false)+subscribe 1584.91 ns 11.47 ns 11.47 ns 1.00
immediate_just+take_while(true)+subscribe 1346.50 ns 12.37 ns 12.37 ns 1.00

Utility Operators

name rxcpp rpp prev rpp ratio
immediate_just(1)+subscribe_on(immediate)+subscribe 3275.58 ns 7.40 ns 7.40 ns 1.00

Combining Operators

name rxcpp rpp prev rpp ratio
immediate_just(immediate_just(1), immediate_just(1)) + merge() + subscribe 5243.52 ns 243.20 ns 243.53 ns 1.00
immediate_just(1) + merge_with(immediate_just(2)) + subscribe 6474.43 ns 238.95 ns 242.09 ns 0.99
immediate_just(1) + with_latest_from(immediate_just(2)) + subscribe - 222.50 ns 222.89 ns 1.00
immediate_just(immediate_just(1),immediate_just(1)) + switch_on_next() + subscribe 6288.34 ns 970.33 ns 960.23 ns 1.01

Subjects

name rxcpp rpp prev rpp ratio
publish_subject with 1 observer - on_next 36.28 ns 25.30 ns 25.28 ns 1.00

Scenarios

name rxcpp rpp prev rpp ratio
basic sample 1943.33 ns 59.77 ns 61.45 ns 0.97
basic sample with immediate scheduler 1926.27 ns 37.05 ns 37.03 ns 1.00

Aggregating Operators

name rxcpp rpp prev rpp ratio
immediate_just+reduce(10, std::plus)+subscribe 1801.57 ns 19.98 ns 19.98 ns 1.00

@codecov
Copy link
Copy Markdown

codecov Bot commented Jan 16, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (a1f5d1b) 95.51% compared to head (dada761) 95.52%.
Report is 3 commits behind head on v2.

❗ Current head dada761 differs from pull request most recent head 9fbc1d2. Consider uploading reports for the commit 9fbc1d2 to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##               v2     #507   +/-   ##
=======================================
  Coverage   95.51%   95.52%           
=======================================
  Files          80       80           
  Lines        2096     2099    +3     
=======================================
+ Hits         2002     2005    +3     
  Misses         94       94           

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

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented Feb 9, 2024

@victimsnino victimsnino merged commit d8dfceb into v2 Feb 9, 2024
@victimsnino victimsnino deleted the extend_tests branch February 9, 2024 18:59
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.

1 participant