99import java .util .ArrayList ;
1010import java .util .Iterator ;
1111import java .util .List ;
12+ import java .util .concurrent .CountDownLatch ;
13+ import java .util .concurrent .TimeUnit ;
1214
13- import static junit .framework .TestCase .assertEquals ;
15+ import static junit .framework .TestCase .* ;
1416
1517
1618public class QueryTestCase {
1719
1820 private static final String TAG = AssetTestCase .class .getSimpleName ();
1921 private static final String contentTypeUID = BuildConfig .contentTypeUID ;
22+ private static final String variantUID = BuildConfig .variantUID ;
23+ private static final String [] variantsUID = BuildConfig .variantsUID ;
24+ private static final String variantBranch = BuildConfig .variantBranch ;
2025 private static Query query ;
2126
2227 static {
@@ -116,4 +121,90 @@ public void onCompletion(ResponseType responseType, QueryResult queryresult, Err
116121 });
117122 }
118123
124+ @ Test
125+ public void test_42_variants_single_uid_find () throws Exception {
126+ Assume .assumeFalse ("variantUID not configured" , variantUID == null || variantUID .trim ().isEmpty ());
127+ final Query q = TestCred .stack ().contentType (contentTypeUID ).query ();
128+ q .variants (variantUID );
129+ assertEquals (variantUID .trim (), q .getHeaders ().get ("x-cs-variant-uid" ));
130+ assertNull (q .getHeaders ().get ("branch" ));
131+
132+ final CountDownLatch latch = new CountDownLatch (1 );
133+ q .find (new QueryResultsCallBack () {
134+ @ Override
135+ public void onCompletion (ResponseType responseType , QueryResult queryresult , Error error ) {
136+ if (error == null ) {
137+ Log .d (TAG , "variants single find: " + queryresult .getResultObjects ().size () + " entries" );
138+ }
139+ latch .countDown ();
140+ }
141+ });
142+ assertTrue ("find() callback timed out" , latch .await (30 , TimeUnit .SECONDS ));
143+ }
144+
145+ @ Test
146+ public void test_43_variants_array_find () throws Exception {
147+ Assume .assumeFalse ("variantsUID not configured" , variantsUID == null || variantsUID .length == 0 );
148+ final Query q = TestCred .stack ().contentType (contentTypeUID ).query ();
149+ q .variants (variantsUID );
150+ assertNotNull (q .getHeaders ().get ("x-cs-variant-uid" ));
151+ assertNull (q .getHeaders ().get ("branch" ));
152+
153+ final CountDownLatch latch = new CountDownLatch (1 );
154+ q .find (new QueryResultsCallBack () {
155+ @ Override
156+ public void onCompletion (ResponseType responseType , QueryResult queryresult , Error error ) {
157+ if (error == null ) {
158+ Log .d (TAG , "variants array find: " + queryresult .getResultObjects ().size () + " entries" );
159+ }
160+ latch .countDown ();
161+ }
162+ });
163+ assertTrue ("find() callback timed out" , latch .await (30 , TimeUnit .SECONDS ));
164+ }
165+
166+ @ Test
167+ public void test_44_variants_single_uid_with_branch_find () throws Exception {
168+ Assume .assumeFalse ("variantUID not configured" , variantUID == null || variantUID .trim ().isEmpty ());
169+ Assume .assumeFalse ("variantBranch not configured" , variantBranch == null || variantBranch .trim ().isEmpty ());
170+ final Query q = TestCred .stack ().contentType (contentTypeUID ).query ();
171+ q .variants (variantUID , variantBranch );
172+ assertEquals (variantUID .trim (), q .getHeaders ().get ("x-cs-variant-uid" ));
173+ assertEquals (variantBranch .trim (), q .getHeaders ().get ("branch" ));
174+
175+ final CountDownLatch latch = new CountDownLatch (1 );
176+ q .find (new QueryResultsCallBack () {
177+ @ Override
178+ public void onCompletion (ResponseType responseType , QueryResult queryresult , Error error ) {
179+ if (error == null ) {
180+ Log .d (TAG , "variants single+branch find: " + queryresult .getResultObjects ().size () + " entries" );
181+ }
182+ latch .countDown ();
183+ }
184+ });
185+ assertTrue ("find() callback timed out" , latch .await (30 , TimeUnit .SECONDS ));
186+ }
187+
188+ @ Test
189+ public void test_45_variants_array_with_branch_find () throws Exception {
190+ Assume .assumeFalse ("variantsUID not configured" , variantsUID == null || variantsUID .length == 0 );
191+ Assume .assumeFalse ("variantBranch not configured" , variantBranch == null || variantBranch .trim ().isEmpty ());
192+ final Query q = TestCred .stack ().contentType (contentTypeUID ).query ();
193+ q .variants (variantsUID , variantBranch );
194+ assertNotNull (q .getHeaders ().get ("x-cs-variant-uid" ));
195+ assertEquals (variantBranch .trim (), q .getHeaders ().get ("branch" ));
196+
197+ final CountDownLatch latch = new CountDownLatch (1 );
198+ q .find (new QueryResultsCallBack () {
199+ @ Override
200+ public void onCompletion (ResponseType responseType , QueryResult queryresult , Error error ) {
201+ if (error == null ) {
202+ Log .d (TAG , "variants array+branch find: " + queryresult .getResultObjects ().size () + " entries" );
203+ }
204+ latch .countDown ();
205+ }
206+ });
207+ assertTrue ("find() callback timed out" , latch .await (30 , TimeUnit .SECONDS ));
208+ }
209+
119210}
0 commit comments