1package com.android.volley.toolbox;
2
3import android.test.InstrumentationTestCase;
4import android.view.ViewGroup.LayoutParams;
5
6public class NetworkImageViewTest extends InstrumentationTestCase {
7    private NetworkImageView mNIV;
8    private MockImageLoader mMockImageLoader;
9
10    @Override
11    protected void setUp() throws Exception {
12        super.setUp();
13        mMockImageLoader = new MockImageLoader();
14        mNIV = new NetworkImageView(getInstrumentation().getContext());
15    }
16
17    public void testSetImageUrl_requestsImage() {
18        mNIV.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
19        mNIV.setImageUrl("http://foo", mMockImageLoader);
20        assertEquals("http://foo", mMockImageLoader.lastRequestUrl);
21        assertEquals(0, mMockImageLoader.lastMaxWidth);
22        assertEquals(0, mMockImageLoader.lastMaxHeight);
23    }
24
25    // public void testSetImageUrl_setsMaxSize() {
26    // // TODO: Not sure how to make getWidth() return something from an
27    // // instrumentation test. Write this test once it's figured out.
28    // }
29
30    private class MockImageLoader extends ImageLoader {
31        public MockImageLoader() {
32            super(null, null);
33        }
34
35        public String lastRequestUrl;
36        public int lastMaxWidth;
37        public int lastMaxHeight;
38
39        public ImageContainer get(String requestUrl, ImageListener imageListener, int maxWidth,
40                int maxHeight) {
41            lastRequestUrl = requestUrl;
42            lastMaxWidth = maxWidth;
43            lastMaxHeight = maxHeight;
44            return null;
45        }
46    }
47}
48