Skip to content

Commit

Permalink
Merge pull request #7574 from Maria-12648430/gb_sets_proptest
Browse files Browse the repository at this point in the history
Property-based tests for the `gb_sets` module
  • Loading branch information
bjorng authored Aug 21, 2023
2 parents cead028 + 1dfebf3 commit 5bd165d
Show file tree
Hide file tree
Showing 3 changed files with 401 additions and 0 deletions.
1 change: 1 addition & 0 deletions lib/stdlib/test/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ MODULES= \
filename_SUITE \
fixtable_SUITE \
format_SUITE \
gb_sets_property_test_SUITE \
gen_event_SUITE \
gen_fsm_SUITE \
gen_server_SUITE \
Expand Down
97 changes: 97 additions & 0 deletions lib/stdlib/test/gb_sets_property_test_SUITE.erl
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
%%
%% %CopyrightBegin%
%%
%% Copyright Ericsson AB 2021-2022. All Rights Reserved.
%%
%% Licensed 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.
%%
%% %CopyrightEnd%
%%
-module(gb_sets_property_test_SUITE).

-include_lib("common_test/include/ct.hrl").

-compile(export_all).
-compile(nowarn_export_all).

all() -> [
add_case,
balance_case,
delete_case, delete_any_case,
difference_case,
from_ordset_case,
insert_case,
is_member_case,
iterator_case, iterator_from_case,
largest_case,
singleton_case,
smallest_case,
take_largest_case,
take_smallest_case
].

init_per_suite(Config) ->
ct_property_test:init_per_suite(Config).

end_per_suite(Config) ->
Config.

add_case(Config) ->
do_proptest(prop_add, Config).

balance_case(Config) ->
do_proptest(prop_balance, Config).

delete_case(Config) ->
do_proptest(prop_delete, Config).

delete_any_case(Config) ->
do_proptest(prop_delete_any, Config).

difference_case(Config) ->
do_proptest(prop_difference, Config).

from_ordset_case(Config) ->
do_proptest(prop_from_ordset, Config).

insert_case(Config) ->
do_proptest(prop_insert, Config).

is_member_case(Config) ->
do_proptest(prop_is_member, Config).

iterator_case(Config) ->
do_proptest(prop_iterator, Config).

iterator_from_case(Config) ->
do_proptest(prop_iterator_from, Config).

largest_case(Config) ->
do_proptest(prop_largest, Config).

singleton_case(Config) ->
do_proptest(prop_singleton, Config).

smallest_case(Config) ->
do_proptest(prop_smallest, Config).

take_largest_case(Config) ->
do_proptest(prop_take_largest, Config).

take_smallest_case(Config) ->
do_proptest(prop_take_smallest, Config).

do_proptest(Prop, Config) ->
ct_property_test:quickcheck(
gb_sets_prop:Prop(),
Config).
Loading

0 comments on commit 5bd165d

Please sign in to comment.