@@ -133,6 +133,39 @@ tape( 'the function resolves an output data type (policy=default)', function tes
133
133
t . end ( ) ;
134
134
} ) ;
135
135
136
+ tape ( 'the function resolves an output data type (policy=default_index)' , function test ( t ) {
137
+ var expected ;
138
+ var values ;
139
+ var dt ;
140
+ var i ;
141
+
142
+ values = [
143
+ 'float64' ,
144
+ 'float32' ,
145
+ 'int32' ,
146
+ 'uint16' ,
147
+ 'generic' ,
148
+ 'int8' ,
149
+ 'complex64'
150
+ ] ;
151
+
152
+ dt = defaults . get ( 'dtypes.default_index' ) ;
153
+ expected = [
154
+ dt ,
155
+ dt ,
156
+ dt ,
157
+ dt ,
158
+ dt ,
159
+ dt ,
160
+ dt
161
+ ] ;
162
+ for ( i = 0 ; i < values . length ; i ++ ) {
163
+ dt = resolve ( values [ i ] , 'default_index' ) ;
164
+ t . strictEqual ( dt , expected [ i ] , 'returns expected value' ) ;
165
+ }
166
+ t . end ( ) ;
167
+ } ) ;
168
+
136
169
tape ( 'the function resolves an output data type (policy=same)' , function test ( t ) {
137
170
var expected ;
138
171
var values ;
@@ -690,3 +723,235 @@ tape( 'the function resolves an output data type (policy=unsigned_integer_and_ge
690
723
}
691
724
t . end ( ) ;
692
725
} ) ;
726
+
727
+ tape ( 'the function resolves an output data type (policy=integer_index)' , function test ( t ) {
728
+ var expected ;
729
+ var values ;
730
+ var dt ;
731
+ var i ;
732
+
733
+ values = [
734
+ 'float64' ,
735
+ 'float32' ,
736
+ 'int32' ,
737
+ 'uint16' ,
738
+ 'generic' ,
739
+ 'int8' ,
740
+ 'complex64'
741
+ ] ;
742
+
743
+ dt = defaults . get ( 'dtypes.integer_index' ) ;
744
+ expected = [
745
+ dt ,
746
+ dt ,
747
+ dt ,
748
+ dt ,
749
+ dt ,
750
+ dt ,
751
+ dt
752
+ ] ;
753
+ for ( i = 0 ; i < values . length ; i ++ ) {
754
+ dt = resolve ( values [ i ] , 'integer_index' ) ;
755
+ t . strictEqual ( dt , expected [ i ] , 'returns expected value' ) ;
756
+ }
757
+ t . end ( ) ;
758
+ } ) ;
759
+
760
+ tape ( 'the function resolves an output data type (policy=integer_index_and_generic)' , function test ( t ) {
761
+ var expected ;
762
+ var values ;
763
+ var dt ;
764
+ var i ;
765
+
766
+ values = [
767
+ 'float64' ,
768
+ 'float32' ,
769
+ 'int32' ,
770
+ 'uint16' ,
771
+ 'generic' ,
772
+ 'int8' ,
773
+ 'complex64'
774
+ ] ;
775
+
776
+ dt = defaults . get ( 'dtypes.integer_index' ) ;
777
+ expected = [
778
+ dt ,
779
+ dt ,
780
+ dt ,
781
+ dt ,
782
+ 'generic' ,
783
+ dt ,
784
+ dt
785
+ ] ;
786
+ for ( i = 0 ; i < values . length ; i ++ ) {
787
+ dt = resolve ( values [ i ] , 'integer_index_and_generic' ) ;
788
+ t . strictEqual ( dt , expected [ i ] , 'returns expected value' ) ;
789
+ }
790
+ t . end ( ) ;
791
+ } ) ;
792
+
793
+ tape ( 'the function resolves an output data type (policy=boolean_index)' , function test ( t ) {
794
+ var expected ;
795
+ var values ;
796
+ var dt ;
797
+ var i ;
798
+
799
+ values = [
800
+ 'float64' ,
801
+ 'float32' ,
802
+ 'int32' ,
803
+ 'uint16' ,
804
+ 'generic' ,
805
+ 'int8' ,
806
+ 'complex64'
807
+ ] ;
808
+
809
+ dt = defaults . get ( 'dtypes.boolean_index' ) ;
810
+ expected = [
811
+ dt ,
812
+ dt ,
813
+ dt ,
814
+ dt ,
815
+ dt ,
816
+ dt ,
817
+ dt
818
+ ] ;
819
+ for ( i = 0 ; i < values . length ; i ++ ) {
820
+ dt = resolve ( values [ i ] , 'boolean_index' ) ;
821
+ t . strictEqual ( dt , expected [ i ] , 'returns expected value' ) ;
822
+ }
823
+ t . end ( ) ;
824
+ } ) ;
825
+
826
+ tape ( 'the function resolves an output data type (policy=boolean_index_and_generic)' , function test ( t ) {
827
+ var expected ;
828
+ var values ;
829
+ var dt ;
830
+ var i ;
831
+
832
+ values = [
833
+ 'float64' ,
834
+ 'float32' ,
835
+ 'int32' ,
836
+ 'uint16' ,
837
+ 'generic' ,
838
+ 'int8' ,
839
+ 'complex64'
840
+ ] ;
841
+
842
+ dt = defaults . get ( 'dtypes.boolean_index' ) ;
843
+ expected = [
844
+ dt ,
845
+ dt ,
846
+ dt ,
847
+ dt ,
848
+ 'generic' ,
849
+ dt ,
850
+ dt
851
+ ] ;
852
+ for ( i = 0 ; i < values . length ; i ++ ) {
853
+ dt = resolve ( values [ i ] , 'boolean_index_and_generic' ) ;
854
+ t . strictEqual ( dt , expected [ i ] , 'returns expected value' ) ;
855
+ }
856
+ t . end ( ) ;
857
+ } ) ;
858
+
859
+ tape ( 'the function resolves an output data type (policy=mask_index)' , function test ( t ) {
860
+ var expected ;
861
+ var values ;
862
+ var dt ;
863
+ var i ;
864
+
865
+ values = [
866
+ 'float64' ,
867
+ 'float32' ,
868
+ 'int32' ,
869
+ 'uint16' ,
870
+ 'generic' ,
871
+ 'int8' ,
872
+ 'complex64'
873
+ ] ;
874
+
875
+ dt = defaults . get ( 'dtypes.mask_index' ) ;
876
+ expected = [
877
+ dt ,
878
+ dt ,
879
+ dt ,
880
+ dt ,
881
+ dt ,
882
+ dt ,
883
+ dt
884
+ ] ;
885
+ for ( i = 0 ; i < values . length ; i ++ ) {
886
+ dt = resolve ( values [ i ] , 'mask_index' ) ;
887
+ t . strictEqual ( dt , expected [ i ] , 'returns expected value' ) ;
888
+ }
889
+ t . end ( ) ;
890
+ } ) ;
891
+
892
+ tape ( 'the function resolves an output data type (policy=mask_index_and_generic)' , function test ( t ) {
893
+ var expected ;
894
+ var values ;
895
+ var dt ;
896
+ var i ;
897
+
898
+ values = [
899
+ 'float64' ,
900
+ 'float32' ,
901
+ 'int32' ,
902
+ 'uint16' ,
903
+ 'generic' ,
904
+ 'int8' ,
905
+ 'complex64'
906
+ ] ;
907
+
908
+ dt = defaults . get ( 'dtypes.mask_index' ) ;
909
+ expected = [
910
+ dt ,
911
+ dt ,
912
+ dt ,
913
+ dt ,
914
+ 'generic' ,
915
+ dt ,
916
+ dt
917
+ ] ;
918
+ for ( i = 0 ; i < values . length ; i ++ ) {
919
+ dt = resolve ( values [ i ] , 'mask_index_and_generic' ) ;
920
+ t . strictEqual ( dt , expected [ i ] , 'returns expected value' ) ;
921
+ }
922
+ t . end ( ) ;
923
+ } ) ;
924
+
925
+ tape ( 'the function resolves an output data type (policy=accumulation)' , function test ( t ) {
926
+ var expected ;
927
+ var values ;
928
+ var dt ;
929
+ var i ;
930
+
931
+ values = [
932
+ 'float64' ,
933
+ 'float32' ,
934
+ 'int32' ,
935
+ 'uint16' ,
936
+ 'generic' ,
937
+ 'int8' ,
938
+ 'complex64' ,
939
+ 'bool'
940
+ ] ;
941
+
942
+ expected = [
943
+ 'float64' ,
944
+ 'float32' ,
945
+ 'int32' ,
946
+ 'uint32' ,
947
+ 'generic' ,
948
+ 'int32' ,
949
+ 'complex64' ,
950
+ 'int32'
951
+ ] ;
952
+ for ( i = 0 ; i < values . length ; i ++ ) {
953
+ dt = resolve ( values [ i ] , 'accumulation' ) ;
954
+ t . strictEqual ( dt , expected [ i ] , 'returns expected value' ) ;
955
+ }
956
+ t . end ( ) ;
957
+ } ) ;
0 commit comments