File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -31,7 +31,7 @@ all() -> [
3131 balance_case ,
3232 delete_case , delete_any_case ,
3333 difference_case ,
34- from_ordset_case ,
34+ from_ordset_case , from_ordset_invalid_case ,
3535 insert_case ,
3636 is_member_case ,
3737 iterator_case , iterator_from_case ,
@@ -68,6 +68,9 @@ difference_case(Config) ->
6868from_ordset_case (Config ) ->
6969 do_proptest (prop_from_ordset , Config ).
7070
71+ from_ordset_invalid_case (Config ) ->
72+ do_proptest (prop_from_ordset_invalid , Config ).
73+
7174insert_case (Config ) ->
7275 do_proptest (prop_insert , Config ).
7376
Original file line number Diff line number Diff line change @@ -180,6 +180,24 @@ prop_from_ordset() ->
180180 gb_sets :from_ordset (ordsets :from_list (L )))
181181 ).
182182
183+ prop_from_ordset_invalid () ->
184+ ? FORALL (
185+ L ,
186+ ? CT_SAFE_LIST (),
187+ try
188+ gb_sets :from_ordset (L )
189+ of
190+ _ -> is_usorted (L )
191+ catch
192+ error :{badarg , not_ordset } -> not is_usorted (L )
193+ end
194+ ).
195+
196+ is_usorted ([E1 | [E2 | _ ] = More ]) ->
197+ E1 < E2 andalso is_usorted (More );
198+ is_usorted ([_ ]) -> true ;
199+ is_usorted ([]) -> true .
200+
183201% % --- insert/2 -------------------------------------------------------
184202prop_insert () ->
185203 ? FORALL (
You can’t perform that action at this time.
0 commit comments