Reviewed By: jeremydubreil Differential Revision: D9884184 fbshipit-source-id: 217a96e08master
parent
60784ad045
commit
88bdf7a797
@ -0,0 +1,39 @@
|
||||
(*
|
||||
* Copyright (c) 2018-present, Facebook, Inc.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*)
|
||||
|
||||
open! IStd
|
||||
open OUnit2
|
||||
|
||||
let inputs =
|
||||
[ ("empty", [])
|
||||
; ("0", [0])
|
||||
; ("0s", [0; 0; 0])
|
||||
; ("1", [1])
|
||||
; ("1s", [1; 1])
|
||||
; ("1_2", [1; 2])
|
||||
; ("1_2_3", [1; 2; 3])
|
||||
; ("1_3_2s", [1; 3; 2; 2; 2; 2])
|
||||
; ("3_1_2", [3; 1; 2])
|
||||
; ("0_3_2", [0; 3; 2])
|
||||
; ("3s_1s", [3; 1; 3; 1; 3])
|
||||
; ("4", [4]) ]
|
||||
|
||||
|
||||
let tests =
|
||||
let inter_test input1 input2 _ =
|
||||
let using_list = IList.inter ~cmp:Int.compare input1 input2 in
|
||||
let using_set =
|
||||
IntSet.inter (IntSet.of_list input1) (IntSet.of_list input2) |> IntSet.elements
|
||||
in
|
||||
assert_equal using_list using_set
|
||||
in
|
||||
let tests_ =
|
||||
List.concat_map inputs ~f:(fun (name1, input1) ->
|
||||
List.map inputs ~f:(fun (name2, input2) ->
|
||||
"inter_" ^ name1 ^ "_with_" ^ name2 >:: inter_test input1 input2 ) )
|
||||
in
|
||||
"IList_tests" >::: tests_
|
Loading…
Reference in new issue