wasp icon indicating copy to clipboard operation
wasp copied to clipboard

How to test Android UI using IdlingResource(Espresso) when using Wasp network requests

Open ghost opened this issue 10 years ago • 1 comments

Hi Orhan Abi,

Espresso is waiting for AsyncTask on network calls. Is it possible to do it on Wasp? There is same problem on Retrofit link below.

http://stackoverflow.com/questions/23142437/how-to-test-android-ui-using-idlingresource-when-using-retrofit-network-requests

Retrofit can do it. The most straightforward solution for this: is to basically swap out Retrofit's Thread-pool executor with an AsyncTask one.

new RestAdapter.Builder() .setEndpoint(LOCLSET_SERVER_URL) .setExecutors(AsyncTask.THREAD_POOL_EXECUTOR, new MainThreadExecutor()) .build();

ghost avatar Oct 23 '15 08:10 ghost

You can also use the same strategy.

    File cacheDir = new File(context.getCacheDir(), "volley");
    Network network = new BasicNetwork(new OkHttpStack(new OkHttpClient()));

    // Inject asynctask executor
    ResponseDelivery delivery = new ExecutorDelivery(ASYNC_EXECUTOR);
    requestQueue = new RequestQueue(new DiskBasedCache(cacheDir), network, 4, delivery);
    requestQueue.start();

//set it during wasp init
...
.setNetworkStack(VolleyNetworkStack.newInstance(requestQueue))

Haven't tried but should work.

orhanobut avatar Oct 23 '15 15:10 orhanobut