blob: 04741012cb1899c5dbcf625b5d54fc8f024752aa [file] [log] [blame]
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -04001<?xml version="1.0" encoding="ascii"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5<head>
6 <title>apiclient.http.RequestMockBuilder</title>
7 <link rel="stylesheet" href="epydoc.css" type="text/css" />
8 <script type="text/javascript" src="epydoc.js"></script>
9</head>
10
11<body bgcolor="white" text="black" link="blue" vlink="#204080"
12 alink="#204080">
13<!-- ==================== NAVIGATION BAR ==================== -->
14<table class="navbar" border="0" width="100%" cellpadding="0"
15 bgcolor="#a0c0ff" cellspacing="0">
16 <tr valign="middle">
17
18 <!-- Tree link -->
19 <th>&nbsp;&nbsp;&nbsp;<a
20 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
21
22 <!-- Index link -->
23 <th>&nbsp;&nbsp;&nbsp;<a
24 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
25
26 <!-- Help link -->
27 <th>&nbsp;&nbsp;&nbsp;<a
28 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
29
30 <th class="navbar" width="100%"></th>
31 </tr>
32</table>
33<table width="100%" cellpadding="0" cellspacing="0">
34 <tr valign="top">
35 <td width="100%">
36 <span class="breadcrumbs">
37 <a href="apiclient-module.html">Package&nbsp;apiclient</a> ::
38 <a href="apiclient.http-module.html">Module&nbsp;http</a> ::
39 Class&nbsp;RequestMockBuilder
40 </span>
41 </td>
42 <td>
43 <table cellpadding="0" cellspacing="0">
44 <!-- hide/show private -->
45 <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
46 onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
47 <tr><td align="right"><span class="options"
48 >[<a href="frames.html" target="_top">frames</a
49 >]&nbsp;|&nbsp;<a href="apiclient.http.RequestMockBuilder-class.html"
50 target="_top">no&nbsp;frames</a>]</span></td></tr>
51 </table>
52 </td>
53 </tr>
54</table>
55<!-- ==================== CLASS DESCRIPTION ==================== -->
56<h1 class="epydoc">Class RequestMockBuilder</h1><p class="nomargin-top"><span class="codelink"><a href="apiclient.http-pysrc.html#RequestMockBuilder">source&nbsp;code</a></span></p>
57<center>
Joe Gregorio746096f2012-06-15 10:53:36 -040058<center> <map id="class_hierarchy_for_requestmoc" name="class_hierarchy_for_requestmoc">
59<area shape="rect" href="apiclient.http.RequestMockBuilder-class.html" title="RequestMockBuilder" alt="" coords="5,5,147,32"/>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040060</map>
Joe Gregorio746096f2012-06-15 10:53:36 -040061 <img src="class_hierarchy_for_requestmoc.gif" alt='' usemap="#class_hierarchy_for_requestmoc" ismap="ismap" class="graph-without-title" />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040062</center>
63</center>
64<hr />
65<pre class="literalblock">
66A simple mock of HttpRequest
67
68Pass in a dictionary to the constructor that maps request methodIds to
69tuples of (httplib2.Response, content, opt_expected_body) that should be
70returned when that method is called. None may also be passed in for the
71httplib2.Response, in which case a 200 OK response will be generated.
72If an opt_expected_body (str or dict) is provided, it will be compared to
73the body and UnexpectedBodyError will be raised on inequality.
74
75Example:
76 response = '{&quot;data&quot;: {&quot;id&quot;: &quot;tag:google.c...'
77 requestBuilder = RequestMockBuilder(
78 {
79 'plus.activities.get': (None, response),
80 }
81 )
82 apiclient.discovery.build(&quot;plus&quot;, &quot;v1&quot;, requestBuilder=requestBuilder)
83
84Methods that you do not supply a response for will return a
85200 OK with an empty string as the response content or raise an excpetion
86if check_unexpected is set to True. The methodId is taken from the rpcName
87in the discovery document.
88
89For more details see the project wiki.
90
91</pre>
92
93<!-- ==================== INSTANCE METHODS ==================== -->
94<a name="section-InstanceMethods"></a>
95<table class="summary" border="1" cellpadding="3"
96 cellspacing="0" width="100%" bgcolor="white">
97<tr bgcolor="#70b0f0" class="table-header">
98 <td colspan="2" class="table-header">
99 <table border="0" cellpadding="0" cellspacing="0" width="100%">
100 <tr valign="top">
101 <td align="left"><span class="table-header">Instance Methods</span></td>
102 <td align="right" valign="top"
103 ><span class="options">[<a href="#section-InstanceMethods"
104 class="privatelink" onclick="toggle_private();"
105 >hide private</a>]</span></td>
106 </tr>
107 </table>
108 </td>
109</tr>
110<tr>
111 <td width="15%" align="right" valign="top" class="summary">
112 <span class="summary-type">&nbsp;</span>
113 </td><td class="summary">
114 <table width="100%" cellpadding="0" cellspacing="0" border="0">
115 <tr>
116 <td><span class="summary-sig"><a href="apiclient.http.RequestMockBuilder-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
117 <span class="summary-sig-arg">responses</span>,
118 <span class="summary-sig-arg">check_unexpected</span>=<span class="summary-sig-default">False</span>)</span><br />
119 Constructor for RequestMockBuilder</td>
120 <td align="right" valign="top">
121 <span class="codelink"><a href="apiclient.http-pysrc.html#RequestMockBuilder.__init__">source&nbsp;code</a></span>
122
123 </td>
124 </tr>
125 </table>
126
127 </td>
128 </tr>
129<tr>
130 <td width="15%" align="right" valign="top" class="summary">
131 <span class="summary-type">&nbsp;</span>
132 </td><td class="summary">
133 <table width="100%" cellpadding="0" cellspacing="0" border="0">
134 <tr>
135 <td><span class="summary-sig"><a href="apiclient.http.RequestMockBuilder-class.html#__call__" class="summary-sig-name">__call__</a>(<span class="summary-sig-arg">self</span>,
136 <span class="summary-sig-arg">http</span>,
137 <span class="summary-sig-arg">postproc</span>,
138 <span class="summary-sig-arg">uri</span>,
139 <span class="summary-sig-arg">method</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">GET</code><code class="variable-quote">'</code></span>,
140 <span class="summary-sig-arg">body</span>=<span class="summary-sig-default">None</span>,
141 <span class="summary-sig-arg">headers</span>=<span class="summary-sig-default">None</span>,
142 <span class="summary-sig-arg">methodId</span>=<span class="summary-sig-default">None</span>,
143 <span class="summary-sig-arg">resumable</span>=<span class="summary-sig-default">None</span>)</span><br />
144 Implements the callable interface that discovery.build() expects
145of requestBuilder, which is to build an object compatible with
146HttpRequest.execute().</td>
147 <td align="right" valign="top">
148 <span class="codelink"><a href="apiclient.http-pysrc.html#RequestMockBuilder.__call__">source&nbsp;code</a></span>
149
150 </td>
151 </tr>
152 </table>
153
154 </td>
155 </tr>
156 <tr>
157 <td colspan="2" class="summary">
158 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
159 <code>__delattr__</code>,
160 <code>__format__</code>,
161 <code>__getattribute__</code>,
162 <code>__hash__</code>,
163 <code>__new__</code>,
164 <code>__reduce__</code>,
165 <code>__reduce_ex__</code>,
166 <code>__repr__</code>,
167 <code>__setattr__</code>,
168 <code>__sizeof__</code>,
169 <code>__str__</code>,
170 <code>__subclasshook__</code>
171 </p>
172 </td>
173 </tr>
174</table>
175<!-- ==================== PROPERTIES ==================== -->
176<a name="section-Properties"></a>
177<table class="summary" border="1" cellpadding="3"
178 cellspacing="0" width="100%" bgcolor="white">
179<tr bgcolor="#70b0f0" class="table-header">
180 <td colspan="2" class="table-header">
181 <table border="0" cellpadding="0" cellspacing="0" width="100%">
182 <tr valign="top">
183 <td align="left"><span class="table-header">Properties</span></td>
184 <td align="right" valign="top"
185 ><span class="options">[<a href="#section-Properties"
186 class="privatelink" onclick="toggle_private();"
187 >hide private</a>]</span></td>
188 </tr>
189 </table>
190 </td>
191</tr>
192 <tr>
193 <td colspan="2" class="summary">
194 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
195 <code>__class__</code>
196 </p>
197 </td>
198 </tr>
199</table>
200<!-- ==================== METHOD DETAILS ==================== -->
201<a name="section-MethodDetails"></a>
202<table class="details" border="1" cellpadding="3"
203 cellspacing="0" width="100%" bgcolor="white">
204<tr bgcolor="#70b0f0" class="table-header">
205 <td colspan="2" class="table-header">
206 <table border="0" cellpadding="0" cellspacing="0" width="100%">
207 <tr valign="top">
208 <td align="left"><span class="table-header">Method Details</span></td>
209 <td align="right" valign="top"
210 ><span class="options">[<a href="#section-MethodDetails"
211 class="privatelink" onclick="toggle_private();"
212 >hide private</a>]</span></td>
213 </tr>
214 </table>
215 </td>
216</tr>
217</table>
218<a name="__init__"></a>
219<div>
220<table class="details" border="1" cellpadding="3"
221 cellspacing="0" width="100%" bgcolor="white">
222<tr><td>
223 <table width="100%" cellpadding="0" cellspacing="0" border="0">
224 <tr valign="top"><td>
225 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
226 <span class="sig-arg">responses</span>,
227 <span class="sig-arg">check_unexpected</span>=<span class="sig-default">False</span>)</span>
228 <br /><em class="fname">(Constructor)</em>
229 </h3>
230 </td><td align="right" valign="top"
231 ><span class="codelink"><a href="apiclient.http-pysrc.html#RequestMockBuilder.__init__">source&nbsp;code</a></span>&nbsp;
232 </td>
233 </tr></table>
234
235 <pre class="literalblock">
236Constructor for RequestMockBuilder
237
238The constructed object should be a callable object
239that can replace the class HttpResponse.
240
241responses - A dictionary that maps methodIds into tuples
242 of (httplib2.Response, content). The methodId
243 comes from the 'rpcName' field in the discovery
244 document.
245check_unexpected - A boolean setting whether or not UnexpectedMethodError
246 should be raised on unsupplied method.
247
248</pre>
249 <dl class="fields">
250 <dt>Overrides:
251 object.__init__
252 </dt>
253 </dl>
254</td></tr></table>
255</div>
256<a name="__call__"></a>
257<div>
258<table class="details" border="1" cellpadding="3"
259 cellspacing="0" width="100%" bgcolor="white">
260<tr><td>
261 <table width="100%" cellpadding="0" cellspacing="0" border="0">
262 <tr valign="top"><td>
263 <h3 class="epydoc"><span class="sig"><span class="sig-name">__call__</span>(<span class="sig-arg">self</span>,
264 <span class="sig-arg">http</span>,
265 <span class="sig-arg">postproc</span>,
266 <span class="sig-arg">uri</span>,
267 <span class="sig-arg">method</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">GET</code><code class="variable-quote">'</code></span>,
268 <span class="sig-arg">body</span>=<span class="sig-default">None</span>,
269 <span class="sig-arg">headers</span>=<span class="sig-default">None</span>,
270 <span class="sig-arg">methodId</span>=<span class="sig-default">None</span>,
271 <span class="sig-arg">resumable</span>=<span class="sig-default">None</span>)</span>
272 <br /><em class="fname">(Call operator)</em>
273 </h3>
274 </td><td align="right" valign="top"
275 ><span class="codelink"><a href="apiclient.http-pysrc.html#RequestMockBuilder.__call__">source&nbsp;code</a></span>&nbsp;
276 </td>
277 </tr></table>
278
279 <pre class="literalblock">
280Implements the callable interface that discovery.build() expects
281of requestBuilder, which is to build an object compatible with
282HttpRequest.execute(). See that method for the description of the
283parameters and the expected response.
284
285</pre>
286 <dl class="fields">
287 </dl>
288</td></tr></table>
289</div>
290<br />
291<!-- ==================== NAVIGATION BAR ==================== -->
292<table class="navbar" border="0" width="100%" cellpadding="0"
293 bgcolor="#a0c0ff" cellspacing="0">
294 <tr valign="middle">
295
296 <!-- Tree link -->
297 <th>&nbsp;&nbsp;&nbsp;<a
298 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
299
300 <!-- Index link -->
301 <th>&nbsp;&nbsp;&nbsp;<a
302 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
303
304 <!-- Help link -->
305 <th>&nbsp;&nbsp;&nbsp;<a
306 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
307
308 <th class="navbar" width="100%"></th>
309 </tr>
310</table>
311<table border="0" cellpadding="0" cellspacing="0" width="100%%">
312 <tr>
313 <td align="left" class="footer">
Joe Gregorioebd0b842012-06-15 14:14:17 -0400314 Generated by Epydoc 3.0.1 on Fri Jun 15 13:13:24 2012
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400315 </td>
316 <td align="right" class="footer">
317 <a target="mainFrame" href="http://epydoc.sourceforge.net"
318 >http://epydoc.sourceforge.net</a>
319 </td>
320 </tr>
321</table>
322
323<script type="text/javascript">
324 <!--
325 // Private objects are initially displayed (because if
326 // javascript is turned off then we want them to be
327 // visible); but by default, we want to hide them. So hide
328 // them unless we have a cookie that says to show them.
329 checkCookie();
330 // -->
331</script>
332</body>
333</html>