18 package testsuite.clusterj;
20 import java.util.Arrays;
21 import java.util.HashSet;
23 import com.mysql.clusterj.ClusterJUserException;
25 import testsuite.clusterj.model.AllPrimitives;
82 void createInstances(
int number) {
83 createAllPrimitivesInstances(10);
86 public void testBtreeEqualOrIn() {
87 equalOrInQuery(
"int_not_null_btree", 4,
"int_null_none",
new Object[] {},
"none", 4);
88 equalOrInQuery(
"int_not_null_btree", 4,
"int_null_none",
new Object[] {6, 9},
"none", 4, 6, 9);
89 equalOrInQuery(
"int_null_btree", 4,
"int_null_none",
new Object[] {4, 6, 9},
"none", 4, 6, 9);
90 equalOrInQuery(
"int_null_btree", 4,
"int_null_none",
new Object[] {6, 6, 6, 9},
"none", 4, 6, 9);
92 equalOrInQuery(
"int_not_null_btree", 4,
"int_null_none", Arrays.asList(
new Object[] {}),
"none", 4);
93 equalOrInQuery(
"int_not_null_btree", 4,
"int_null_none", Arrays.asList(
new Integer[] {6, 9}),
"none", 4, 6, 9);
94 equalOrInQuery(
"int_null_btree", 4,
"int_null_none",
new HashSet<Integer>(Arrays.asList(
new Integer[] {4, 6, 9})),
"none", 4, 6, 9);
95 equalOrInQuery(
"int_null_btree", 4,
"int_null_none",
new HashSet<Integer>(Arrays.asList(
new Integer[] {6, 6, 6, 9})),
"none", 4, 6, 9);
99 public void testIn() {
100 inQuery(
"int_not_null_none",
new Object[] {4, 6, 9},
"none", 4, 6, 9);
101 inQuery(
"int_not_null_hash", Arrays.asList(
new Object[] {4, 6, 9}),
"none", 4, 6, 9);
102 inQuery(
"int_not_null_both",
new Object[] {4, 6, 9},
"idx_int_not_null_both", 4, 6, 9);
103 inQuery(
"int_not_null_btree",
new Object[] {4, 6, 9},
"idx_int_not_null_btree", 4, 6, 9);
107 public void testInAndIn() {
108 inAndInQuery(
"int_not_null_none",
new Object[] {4, 6, 9},
"id",
new Object[] {4, 9},
"PRIMARY", 4, 9);
109 inAndInQuery(
"int_not_null_hash",
new Object[] {4, 9},
"int_not_null_both",
new Object[] {6, 9},
"idx_int_not_null_both", 9);
110 inAndInQuery(
"int_not_null_hash",
new Object[] {4, 9},
"int_not_null_btree",
new Object[] {6, 9},
"idx_int_not_null_btree", 9);
111 inAndInQuery(
"int_not_null_both",
new Object[] {4, 9},
"int_not_null_hash",
new Object[] {6, 9},
"idx_int_not_null_both", 9);
112 inAndInQuery(
"int_not_null_btree",
new Object[] {4, 9},
"int_not_null_hash",
new Object[] {6, 9},
"idx_int_not_null_btree", 9);
116 public void testHashEqualOrIn() {
117 equalOrInQuery(
"int_not_null_hash", 4,
"int_null_both",
new Object[] {6, 9},
"none", 4, 6, 9);
118 equalOrInQuery(
"int_null_hash", 4,
"int_null_both",
new Object[] {6, 9},
"none", 4, 6, 9);
122 public void testBothEqualOrIn() {
123 equalOrInQuery(
"int_not_null_both", 4,
"int_null_hash",
new Object[] {6, 9},
"none", 4, 6, 9);
124 equalOrInQuery(
"int_null_both", 4,
"int_null_hash",
new Object[] {6, 9},
"none", 4, 6, 9);
128 public void testNoneEqualOrIn() {
129 equalOrInQuery(
"int_not_null_none", 4,
"int_null_btree",
new Object[] {6, 9},
"none", 4, 6, 9);
130 equalOrInQuery(
"int_null_none", 4,
"int_null_btree",
new Object[] {6, 9},
"none", 4, 6, 9);
134 public void testNullParameterForIn() {
136 equalOrInQuery(
"int_not_null_btree", 4,
"int_null_none", null,
"none", 4);
137 fail(
"testNullParameterForIn should throw ClusterJUserException.");
138 }
catch (ClusterJUserException ex) {