5 let s1 = String.make size 'd'
in
7 let s2 = String.make size 'c'
in
8 set_httppost
h [CURLFORM_CONTENT
("part", s2, DEFAULT
)];
9 assert (get_private
h = s1);
14 let s = String.make size 'a'
in
15 set_mimepost
h [{encoding
=CURLMIME_BINARY
;headers
=[];subparts
=[];data
=CURLMIME_DATA
s}];
22 let s = String.make size 'a'
in
27 encoding
=CURLMIME_BINARY
;
30 data
=CURLMIME_DATA_WITH_NAME
{data
=String
s;name
=Some
"foo";filename
=Some
"bar"};
38 let path = Printf.sprintf
"/proc/%d/statm" (Unix.getpid
()) in
40 let ch = Scanf.Scanning.open_in
path in
41 let n = Scanf.bscanf
ch "%_d %d" (fun x
-> 4*1024*x
) in Scanf.Scanning.close_in
ch; n
42 with exn
-> Printf.eprintf
"Error opening %s (%s), ignoring\n%!" path (Printexc.to_string exn
); 0
44 let check test count leak_size
=
47 for _i
= 0 to pred count
do
52 Printf.printf
"RSS %d -> %d %s\n%!" rss1 rss2 (if rss2 - rss1 < count
* leak_size
/ 10 then "OK" else "LEAKING")
54 Curl.NotImplemented
s -> Printf.printf
"skipping test : libcurl doesn't provide %s\n%!" s
57 let mb = 1024 * 1024 in