1e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru/*
2e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru * Copyright (C) 2012 The Android Open Source Project
3e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru *
4e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru * Licensed under the Apache License, Version 2.0 (the "License");
5e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru * you may not use this file except in compliance with the License.
6e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru * You may obtain a copy of the License at
7e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru *
8e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru *      http://www.apache.org/licenses/LICENSE-2.0
9e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru *
10e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru * Unless required by applicable law or agreed to in writing, software
11e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru * distributed under the License is distributed on an "AS IS" BASIS,
12e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru * See the License for the specific language governing permissions and
14e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru * limitations under the License.
15e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru */
16e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
17e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Querupackage com.android.volley.toolbox;
18e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
19e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queruimport com.android.volley.Request.Method;
20e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queruimport com.android.volley.mock.TestRequest;
21e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
22e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queruimport org.apache.http.client.methods.HttpDelete;
23e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queruimport org.apache.http.client.methods.HttpGet;
24e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queruimport org.apache.http.client.methods.HttpPost;
25e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queruimport org.apache.http.client.methods.HttpPut;
26e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queruimport org.apache.http.client.methods.HttpUriRequest;
27e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
28e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queruimport android.test.AndroidTestCase;
29e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queruimport android.test.suitebuilder.annotation.SmallTest;
30e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
31e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru@SmallTest
32e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Querupublic class HttpClientStackTest extends AndroidTestCase {
33e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
34e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    @Override
35e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    protected void setUp() throws Exception {
36e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        super.setUp();
37e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        mContext = getContext();
38e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    }
39e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
40e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    public void testCreateDeprecatedGetRequest() throws Exception {
41e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        TestRequest.DeprecatedGet request = new TestRequest.DeprecatedGet();
42e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertEquals(request.getMethod(), Method.DEPRECATED_GET_OR_POST);
43e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
44e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        HttpUriRequest httpRequest = HttpClientStack.createHttpRequest(request, null);
45e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertTrue(httpRequest instanceof HttpGet);
46e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    }
47e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
48e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    public void testCreateDeprecatedPostRequest() throws Exception {
49e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        TestRequest.DeprecatedPost request = new TestRequest.DeprecatedPost();
50e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertEquals(request.getMethod(), Method.DEPRECATED_GET_OR_POST);
51e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
52e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        HttpUriRequest httpRequest = HttpClientStack.createHttpRequest(request, null);
53e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertTrue(httpRequest instanceof HttpPost);
54e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    }
55e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
56e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    public void testCreateGetRequest() throws Exception {
57e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        TestRequest.Get request = new TestRequest.Get();
58e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertEquals(request.getMethod(), Method.GET);
59e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
60e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        HttpUriRequest httpRequest = HttpClientStack.createHttpRequest(request, null);
61e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertTrue(httpRequest instanceof HttpGet);
62e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    }
63e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
64e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    public void testCreatePostRequest() throws Exception {
65e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        TestRequest.Post request = new TestRequest.Post();
66e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertEquals(request.getMethod(), Method.POST);
67e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
68e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        HttpUriRequest httpRequest = HttpClientStack.createHttpRequest(request, null);
69e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertTrue(httpRequest instanceof HttpPost);
70e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    }
71e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
72e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    public void testCreatePostRequestWithBody() throws Exception {
73e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        TestRequest.PostWithBody request = new TestRequest.PostWithBody();
74e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertEquals(request.getMethod(), Method.POST);
75e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
76e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        HttpUriRequest httpRequest = HttpClientStack.createHttpRequest(request, null);
77e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertTrue(httpRequest instanceof HttpPost);
78e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    }
79e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
80e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    public void testCreatePutRequest() throws Exception {
81e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        TestRequest.Put request = new TestRequest.Put();
82e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertEquals(request.getMethod(), Method.PUT);
83e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
84e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        HttpUriRequest httpRequest = HttpClientStack.createHttpRequest(request, null);
85e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertTrue(httpRequest instanceof HttpPut);
86e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    }
87e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
88e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    public void testCreatePutRequestWithBody() throws Exception {
89e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        TestRequest.PutWithBody request = new TestRequest.PutWithBody();
90e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertEquals(request.getMethod(), Method.PUT);
91e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
92e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        HttpUriRequest httpRequest = HttpClientStack.createHttpRequest(request, null);
93e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertTrue(httpRequest instanceof HttpPut);
94e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    }
95e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
96e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    public void testCreateDeleteRequest() throws Exception {
97e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        TestRequest.Delete request = new TestRequest.Delete();
98e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertEquals(request.getMethod(), Method.DELETE);
99e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru
100e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        HttpUriRequest httpRequest = HttpClientStack.createHttpRequest(request, null);
101e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru        assertTrue(httpRequest instanceof HttpDelete);
102e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru    }
103e48f4430bfd3030350aa5ba827b449c37e2fadc9Jean-Baptiste Queru}
104