@@ -1,105 +0,0 @@
-## HOW TO CONTRIBUTE
-
-Thank you for considering contributing to this distribution. This file
-contains instructions that will help you work with the source code.
-
-The distribution is managed with Dist::Zilla. This means than many of the
-usual files you might expect are not in the repository, but are generated at
-release time (e.g. Makefile.PL).
-
-Generally, **you do not need Dist::Zilla to contribute patches**. You do need
-Dist::Zilla to create a tarball and/or install from the repository. See below
-for guidance.
-
-### Acceptable contributions
-
-HTTP::Tiny is considered nearly feature-complete. The only features likely to
-be added are those that improve compliance with RFC 2616. If you have ideas
-for other features, please look at
-[HTTP::Tiny::UA](http://p3rl.org/HTTP::Tiny::UA/) and consider adding your
-feature there.
-
-Bug fixes and performance improvements that do not bloat the code will be
-considered for inclusion.
-
-### Getting dependencies
-
-See the included `cpanfile` file for a list of dependencies. If you have
-App::cpanminus 1.6 or later installed, you can use `cpanm` to satisfy
-dependencies like this:
-
- $ cpanm --installdeps .
-
-Otherwise, you can install Module::CPANfile 1.0002 or later and then satisfy
-dependencies with the regular `cpan` client and `cpanfile-dump`:
-
- $ cpan `cpanfile-dump`
-
-### Running tests
-
-You can run tests directly using the `prove` tool:
-
- $ prove -l
- $ prove -lv t/some_test_file.t
-
-For most of my distributions, `prove` is entirely sufficient for you to test any
-patches you have. I use `prove` for 99% of my testing during development.
-
-### Code style and tidying
-
-Please try to match any existing coding style.
-
-### Patching documentation
-
-Much of the documentation Pod is generated at release time.
-
-If you would like to submit a documentation edit, please limit yourself to the
-documentation you see.
-
-If you see typos or documentation issues in the generated docs, please
-email or open a bug ticket instead of patching.
-
-### Installing from the repository
-
-If you want to install directly from the repository, you need to have
-Dist::Zilla installed (see below). If this is a burden to you, I welcome
-patches against a CPAN tarball instead of the repository.
-
-### Installing and using Dist::Zilla
-
-Dist::Zilla is a very powerful authoring tool, optimized for maintaining a
-large number of distributions with a high degree of automation, but it has a
-large dependency chain, a bit of a learning curve and requires a number of
-author-specific plugins.
-
-To install it from CPAN, I recommend one of the following approaches for
-the quickest installation:
-
- # using CPAN.pm, but bypassing non-functional pod tests
- $ cpan TAP::Harness::Restricted
- $ PERL_MM_USE_DEFAULT=1 HARNESS_CLASS=TAP::Harness::Restricted cpan Dist::Zilla
-
- # using cpanm, bypassing *all* tests
- $ cpanm -n Dist::Zilla
-
-In either case, it's probably going to take about 10 minutes. Go for a walk,
-go get a cup of your favorite beverage, take a bathroom break, or whatever.
-When you get back, Dist::Zilla should be ready for you.
-
-Then you need to install any plugins specific to this distribution:
-
- $ cpan `dzil authordeps`
- $ dzil authordeps | cpanm
-
-Once installed, here are some dzil commands you might try:
-
- $ dzil build
- $ dzil test
- $ dzil xtest
-
-To install from the repository, use:
-
- $ dzil install
-
-You can learn more about Dist::Zilla at http://dzil.org/
-
@@ -0,0 +1,87 @@
+## HOW TO CONTRIBUTE
+
+Thank you for considering contributing to this distribution. This file
+contains instructions that will help you work with the source code.
+
+The distribution is managed with Dist::Zilla. This means than many of the
+usual files you might expect are not in the repository, but are generated at
+release time, as is much of the documentation. Some generated files are
+kept in the repository as a convenience (e.g. Makefile.PL or cpanfile).
+
+Generally, **you do not need Dist::Zilla to contribute patches**. You do need
+Dist::Zilla to create a tarball. See below for guidance.
+
+### Getting dependencies
+
+If you have App::cpanminus 1.6 or later installed, you can use `cpanm` to
+satisfy dependencies like this:
+
+ $ cpanm --installdeps .
+
+Otherwise, look for either a `Makefile.PL` or `cpanfile` file for
+a list of dependencies to satisfy.
+
+### Running tests
+
+You can run tests directly using the `prove` tool:
+
+ $ prove -l
+ $ prove -lv t/some_test_file.t
+
+For most of my distributions, `prove` is entirely sufficient for you to test any
+patches you have. I use `prove` for 99% of my testing during development.
+
+### Code style and tidying
+
+Please try to match any existing coding style. If there is a `.perltidyrc`
+file, please install Perl::Tidy and use perltidy before submitting patches.
+
+If there is a `tidyall.ini` file, you can also install Code::TidyAll and run
+`tidyall` on a file or `tidyall -a` to tidy all files.
+
+### Patching documentation
+
+Much of the documentation Pod is generated at release time. Some is
+generated boilerplate; other documentation is built from pseudo-POD
+directives in the source like C<=method> or C<=func>.
+
+If you would like to submit a documentation edit, please limit yourself to
+the documentation you see.
+
+If you see typos or documentation issues in the generated docs, please
+email or open a bug ticket instead of patching.
+
+### Installing and using Dist::Zilla
+
+Dist::Zilla is a very powerful authoring tool, optimized for maintaining a
+large number of distributions with a high degree of automation, but it has a
+large dependency chain, a bit of a learning curve and requires a number of
+author-specific plugins.
+
+To install it from CPAN, I recommend one of the following approaches for
+the quickest installation:
+
+ # using CPAN.pm, but bypassing non-functional pod tests
+ $ cpan TAP::Harness::Restricted
+ $ PERL_MM_USE_DEFAULT=1 HARNESS_CLASS=TAP::Harness::Restricted cpan Dist::Zilla
+
+ # using cpanm, bypassing *all* tests
+ $ cpanm -n Dist::Zilla
+
+In either case, it's probably going to take about 10 minutes. Go for a walk,
+go get a cup of your favorite beverage, take a bathroom break, or whatever.
+When you get back, Dist::Zilla should be ready for you.
+
+Then you need to install any plugins specific to this distribution:
+
+ $ cpan `dzil authordeps`
+ $ dzil authordeps | cpanm
+
+Once installed, here are some dzil commands you might try:
+
+ $ dzil build
+ $ dzil test
+ $ dzil xtest
+
+You can learn more about Dist::Zilla at http://dzil.org/
+
@@ -1,5 +1,11 @@
Release notes for HTTP-Tiny
+0.051 2014-11-17 22:58:44-05:00 America/New_York
+
+ [FIXED]
+
+ - Checks for threads without loading threads.pm
+
0.050 2014-09-23 15:30:18-04:00 America/New_York
[FIXED]
@@ -1,5 +1,5 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.020.
-CONTRIBUTING
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.025.
+CONTRIBUTING.mkdn
Changes
LICENSE
MANIFEST
@@ -7,6 +7,72 @@ META.json
META.yml
Makefile.PL
README
+corpus/auth-01.txt
+corpus/auth-02.txt
+corpus/auth-03.txt
+corpus/auth-04.txt
+corpus/auth-05.txt
+corpus/cookies-01.txt
+corpus/cookies-02.txt
+corpus/cookies-03.txt
+corpus/cookies-04.txt
+corpus/cookies-05.txt
+corpus/cookies-06.txt
+corpus/cookies-07.txt
+corpus/delete-01.txt
+corpus/form-01.txt
+corpus/form-02.txt
+corpus/form-03.txt
+corpus/form-04.txt
+corpus/form-05.txt
+corpus/get-01.txt
+corpus/get-02.txt
+corpus/get-03.txt
+corpus/get-04.txt
+corpus/get-05.txt
+corpus/get-06.txt
+corpus/get-07.txt
+corpus/get-08.txt
+corpus/get-09.txt
+corpus/get-10.txt
+corpus/get-11.txt
+corpus/get-12.txt
+corpus/get-13.txt
+corpus/get-14.txt
+corpus/get-15.txt
+corpus/get-16.txt
+corpus/get-17.txt
+corpus/get-18.txt
+corpus/get-19.txt
+corpus/get-20.txt
+corpus/get-21.txt
+corpus/head-01.txt
+corpus/keepalive-01.txt
+corpus/keepalive-02.txt
+corpus/keepalive-03.txt
+corpus/keepalive-04.txt
+corpus/keepalive-05.txt
+corpus/mirror-01.txt
+corpus/mirror-02.txt
+corpus/mirror-03.txt
+corpus/mirror-04.txt
+corpus/mirror-05.txt
+corpus/post-01.txt
+corpus/proxy-auth-01.txt
+corpus/put-01.txt
+corpus/put-02.txt
+corpus/put-03.txt
+corpus/put-04.txt
+corpus/put-05.txt
+corpus/redirect-01.txt
+corpus/redirect-02.txt
+corpus/redirect-03.txt
+corpus/redirect-04.txt
+corpus/redirect-05.txt
+corpus/redirect-06.txt
+corpus/redirect-07.txt
+corpus/redirect-08.txt
+corpus/redirect-09.txt
cpanfile
dist.ini
eg/get.pl
@@ -47,72 +113,6 @@ t/210_live_ssl.t
t/BrokenCookieJar.pm
t/SimpleCookieJar.pm
t/Util.pm
-t/cases/auth-01.txt
-t/cases/auth-02.txt
-t/cases/auth-03.txt
-t/cases/auth-04.txt
-t/cases/auth-05.txt
-t/cases/cookies-01.txt
-t/cases/cookies-02.txt
-t/cases/cookies-03.txt
-t/cases/cookies-04.txt
-t/cases/cookies-05.txt
-t/cases/cookies-06.txt
-t/cases/cookies-07.txt
-t/cases/delete-01.txt
-t/cases/form-01.txt
-t/cases/form-02.txt
-t/cases/form-03.txt
-t/cases/form-04.txt
-t/cases/form-05.txt
-t/cases/get-01.txt
-t/cases/get-02.txt
-t/cases/get-03.txt
-t/cases/get-04.txt
-t/cases/get-05.txt
-t/cases/get-06.txt
-t/cases/get-07.txt
-t/cases/get-08.txt
-t/cases/get-09.txt
-t/cases/get-10.txt
-t/cases/get-11.txt
-t/cases/get-12.txt
-t/cases/get-13.txt
-t/cases/get-14.txt
-t/cases/get-15.txt
-t/cases/get-16.txt
-t/cases/get-17.txt
-t/cases/get-18.txt
-t/cases/get-19.txt
-t/cases/get-20.txt
-t/cases/get-21.txt
-t/cases/head-01.txt
-t/cases/keepalive-01.txt
-t/cases/keepalive-02.txt
-t/cases/keepalive-03.txt
-t/cases/keepalive-04.txt
-t/cases/keepalive-05.txt
-t/cases/mirror-01.txt
-t/cases/mirror-02.txt
-t/cases/mirror-03.txt
-t/cases/mirror-04.txt
-t/cases/mirror-05.txt
-t/cases/post-01.txt
-t/cases/proxy-auth-01.txt
-t/cases/put-01.txt
-t/cases/put-02.txt
-t/cases/put-03.txt
-t/cases/put-04.txt
-t/cases/put-05.txt
-t/cases/redirect-01.txt
-t/cases/redirect-02.txt
-t/cases/redirect-03.txt
-t/cases/redirect-04.txt
-t/cases/redirect-05.txt
-t/cases/redirect-06.txt
-t/cases/redirect-07.txt
-t/cases/redirect-08.txt
-t/cases/redirect-09.txt
xt/author/00-compile.t
xt/author/critic.t
xt/author/pod-spell.t
@@ -5,7 +5,7 @@
"David Golden <dagolden@cpan.org>"
],
"dynamic_config" : 0,
- "generated_by" : "Dist::Zilla version 5.020, CPAN::Meta::Converter version 2.140640",
+ "generated_by" : "Dist::Zilla version 5.025, CPAN::Meta::Converter version 2.142690",
"license" : [
"perl_5"
],
@@ -28,7 +28,8 @@
"prereqs" : {
"configure" : {
"requires" : {
- "ExtUtils::MakeMaker" : "6.17"
+ "ExtUtils::MakeMaker" : "6.17",
+ "perl" : "5.006"
}
},
"develop" : {
@@ -36,7 +37,7 @@
"Dist::Zilla" : "5",
"Dist::Zilla::Plugin::Prereqs" : "0",
"Dist::Zilla::Plugin::RemovePrereqs" : "0",
- "Dist::Zilla::PluginBundle::DAGOLDEN" : "0.068",
+ "Dist::Zilla::PluginBundle::DAGOLDEN" : "0.072",
"File::Spec" : "0",
"File::Temp" : "0",
"IO::Handle" : "0",
@@ -88,14 +89,15 @@
"IO::Socket::INET" : "0",
"IPC::Cmd" : "0",
"Test::More" : "0.96",
- "open" : "0"
+ "open" : "0",
+ "perl" : "5.006"
}
}
},
"provides" : {
"HTTP::Tiny" : {
"file" : "lib/HTTP/Tiny.pm",
- "version" : "0.050"
+ "version" : "0.051"
}
},
"release_status" : "stable",
@@ -110,14 +112,14 @@
"web" : "https://github.com/chansen/p5-http-tiny"
}
},
- "version" : "0.050",
+ "version" : "0.051",
"x_authority" : "cpan:DAGOLDEN",
"x_contributors" : [
"Alan Gardner <gardner@pythian.com>",
"Alessandro Ghedini <al3xbio@gmail.com>",
"Brad Gilbert <bgills@cpan.org>",
"Chris Nehren <apeiron@cpan.org>",
- "Chris Weyl <rsrchboy@cpan.org>",
+ "Chris Weyl <cweyl@alumni.drew.edu>",
"Claes Jakobsson <claes@surfar.nu>",
"Clinton Gormley <clint@traveljury.com>",
"Craig Berry <cberry@cpan.org>",
@@ -132,8 +134,8 @@
"Mike Doherty <doherty@cpan.org>",
"Petr Písař <ppisar@redhat.com>",
"Serguei Trouchelle <stro@cpan.org>",
- "Syohei YOSHIDA <syohex@gmail.com>",
"Sören Kornetzki <soeren.kornetzki@delti.com>",
+ "Syohei YOSHIDA <syohex@gmail.com>",
"Tom Hukins <tom@eborcom.com>",
"Tony Cook <tony@develop-help.com>"
]
@@ -16,10 +16,12 @@ build_requires:
IPC::Cmd: '0'
Test::More: '0.96'
open: '0'
+ perl: '5.006'
configure_requires:
ExtUtils::MakeMaker: '6.17'
+ perl: '5.006'
dynamic_config: 0
-generated_by: 'Dist::Zilla version 5.020, CPAN::Meta::Converter version 2.140640'
+generated_by: 'Dist::Zilla version 5.025, CPAN::Meta::Converter version 2.142690'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -36,7 +38,7 @@ no_index:
provides:
HTTP::Tiny:
file: lib/HTTP/Tiny.pm
- version: '0.050'
+ version: '0.051'
recommends:
HTTP::CookieJar: '0.001'
IO::Socket::IP: '0.25'
@@ -57,14 +59,14 @@ resources:
bugtracker: https://github.com/chansen/p5-http-tiny/issues
homepage: https://github.com/chansen/p5-http-tiny
repository: https://github.com/chansen/p5-http-tiny.git
-version: '0.050'
+version: '0.051'
x_authority: cpan:DAGOLDEN
x_contributors:
- 'Alan Gardner <gardner@pythian.com>'
- 'Alessandro Ghedini <al3xbio@gmail.com>'
- 'Brad Gilbert <bgills@cpan.org>'
- 'Chris Nehren <apeiron@cpan.org>'
- - 'Chris Weyl <rsrchboy@cpan.org>'
+ - 'Chris Weyl <cweyl@alumni.drew.edu>'
- 'Claes Jakobsson <claes@surfar.nu>'
- 'Clinton Gormley <clint@traveljury.com>'
- 'Craig Berry <cberry@cpan.org>'
@@ -79,7 +81,7 @@ x_contributors:
- 'Mike Doherty <doherty@cpan.org>'
- 'Petr Písař <ppisar@redhat.com>'
- 'Serguei Trouchelle <stro@cpan.org>'
- - 'Syohei YOSHIDA <syohex@gmail.com>'
- 'Sören Kornetzki <soeren.kornetzki@delti.com>'
+ - 'Syohei YOSHIDA <syohex@gmail.com>'
- 'Tom Hukins <tom@eborcom.com>'
- 'Tony Cook <tony@develop-help.com>'
@@ -1,5 +1,5 @@
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.020.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.025.
use strict;
use warnings;
@@ -18,6 +18,7 @@ my %WriteMakefileArgs = (
"DISTNAME" => "HTTP-Tiny",
"EXE_FILES" => [],
"LICENSE" => "perl",
+ "MIN_PERL_VERSION" => "5.006",
"NAME" => "HTTP::Tiny",
"PREREQ_PM" => {
"Carp" => 0,
@@ -43,7 +44,7 @@ my %WriteMakefileArgs = (
"Test::More" => "0.96",
"open" => 0
},
- "VERSION" => "0.050",
+ "VERSION" => "0.051",
"test" => {
"TESTS" => "t/*.t"
}
@@ -54,7 +55,7 @@ my %FallbackPrereqs = (
"Carp" => 0,
"Data::Dumper" => 0,
"Exporter" => 0,
- "ExtUtils::MakeMaker" => 0,
+ "ExtUtils::MakeMaker" => "6.17",
"Fcntl" => 0,
"File::Basename" => 0,
"File::Spec" => 0,
@@ -2,7 +2,7 @@ NAME
HTTP::Tiny - A small, simple, correct HTTP/1.1 client
VERSION
- version 0.050
+ version 0.051
SYNOPSIS
use HTTP::Tiny;
@@ -437,6 +437,24 @@ AUTHORS
CONTRIBUTORS
* Alan Gardner <gardner@pythian.com>
+ * Alessandro Ghedini <al3xbio@gmail.com>
+
+ * Brad Gilbert <bgills@cpan.org>
+
+ * Chris Nehren <apeiron@cpan.org>
+
+ * Chris Weyl <cweyl@alumni.drew.edu>
+
+ * Claes Jakobsson <claes@surfar.nu>
+
+ * Clinton Gormley <clint@traveljury.com>
+
+ * Craig Berry <cberry@cpan.org>
+
+ * David Mitchell <davem@iabyn.com>
+
+ * Dean Pearce <pearce@pythian.com>
+
* Edward Zborowski <ed@rubensteintech.com>
* James Raspass <jraspass@gmail.com>
@@ -455,32 +473,14 @@ CONTRIBUTORS
* Serguei Trouchelle <stro@cpan.org>
- * Syohei YOSHIDA <syohex@gmail.com>
-
- * Alessandro Ghedini <al3xbio@gmail.com>
-
* Sören Kornetzki <soeren.kornetzki@delti.com>
+ * Syohei YOSHIDA <syohex@gmail.com>
+
* Tom Hukins <tom@eborcom.com>
* Tony Cook <tony@develop-help.com>
- * Brad Gilbert <bgills@cpan.org>
-
- * Chris Nehren <apeiron@cpan.org>
-
- * Chris Weyl <rsrchboy@cpan.org>
-
- * Claes Jakobsson <claes@surfar.nu>
-
- * Clinton Gormley <clint@traveljury.com>
-
- * Craig Berry <cberry@cpan.org>
-
- * David Mitchell <davem@iabyn.com>
-
- * Dean Pearce <pearce@pythian.com>
-
COPYRIGHT AND LICENSE
This software is copyright (c) 2014 by Christian Hansen.
@@ -0,0 +1,18 @@
+url
+ http://foo:bar@example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Authorization: Basic Zm9vOmJhcg==
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,18 @@
+url
+ http://Aladdin:open sesame@example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,36 @@
+url
+ http://foo:bar@example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+expected_url
+ http://example.com/index2.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Authorization: Basic Zm9vOmJhcg==
+
+----------
+HTTP/1.1 302 Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index2.html
+
+<a href="http://example.com/index2.html">redirect</a>
+
+----------
+GET /index2.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,18 @@
+url
+ http://rjbs%40cpan.org:password@example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Authorization: Basic cmpic0BjcGFuLm9yZzpwYXNzd29yZA==
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,20 @@
+url
+ http://foo:bar@example.com/index.html
+headers
+ authorization: Whatever
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Authorization: Whatever
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,34 @@
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname=cvalue
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,52 @@
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue01; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname=cvalue01
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue02; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname=cvalue02
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue02; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,87 @@
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue01; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname=cvalue01
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue02; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index02.html
+----------
+GET /index02.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue03; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname=cvalue02
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue02; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index02.html
+----------
+GET /index02.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname=cvalue03
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue03; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,37 @@
+url
+ http://example.com/index.html
+headers
+ Cookie: cname=cvalue05; domain=example.com; path=/
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname=cvalue05
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue06; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname=cvalue06
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue06; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,35 @@
+url
+ http://example.com/index.html
+headers
+ No-Cookie-Jar: 1
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue06; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname=cvalue06; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,51 @@
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname1=cvalue01; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname1=cvalue01
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname2=cvalue02; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname1=cvalue01; cname2=cvalue02
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,34 @@
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Set-Cookie: cname1=cvalue01; domain=example.com; path=/
+Set-Cookie: cname2=cvalue02; domain=example.com; path=/
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Cookie: cname1=cvalue01; cname2=cvalue02
+
+----------
+HTTP/1.1 200 OK
+Date: Sat, 02 Mar 2013 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,15 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+DELETE /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Length: 0
+
@@ -0,0 +1,23 @@
+url
+ http://example.com/new
+headers
+ Content-Type: text/plain
+content
+ key|value|name|John Doe|noise|!@#$%^&*()
+datatype
+ ARRAY
+----------
+POST /new HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: application/x-www-form-urlencoded
+Content-Length: 60
+
+key=value&name=John+Doe&noise=%21%40%23%24%25%5E%26%2A%28%29
+----------
+HTTP/1.1 201 Created
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Location: http://example.com/new/01.txt
+Content-Length: 0
+
@@ -0,0 +1,21 @@
+url
+ http://example.com/new
+content
+ key|value|name|John Doe|noise|!@#$%^&*()
+datatype
+ HASH
+----------
+POST /new HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: application/x-www-form-urlencoded
+Content-Length: 60
+
+key=value&name=John+Doe&noise=%21%40%23%24%25%5E%26%2A%28%29
+----------
+HTTP/1.1 201 Created
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Location: http://example.com/new/01.txt
+Content-Length: 0
+
@@ -0,0 +1,21 @@
+url
+ http://example.com/new
+content
+ bar|baz|ack|foo
+datatype
+ HASH
+----------
+POST /new HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: application/x-www-form-urlencoded
+Content-Length: 15
+
+ack=foo&bar=baz
+----------
+HTTP/1.1 201 Created
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Location: http://example.com/new/01.txt
+Content-Length: 0
+
@@ -0,0 +1,21 @@
+url
+ http://example.com/new
+content
+ utf8|☺
+datatype
+ ARRAY
+----------
+POST /new HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: application/x-www-form-urlencoded
+Content-Length: 23
+
+utf8=%C3%A2%C2%98%C2%BA
+----------
+HTTP/1.1 201 Created
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Location: http://example.com/new/01.txt
+Content-Length: 0
+
@@ -0,0 +1,21 @@
+url
+ http://example.com/new
+content
+ bar|baz|ack|foo
+datatype
+ ARRAY
+----------
+POST /new HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: application/x-www-form-urlencoded
+Content-Length: 15
+
+bar=baz&ack=foo
+----------
+HTTP/1.1 201 Created
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Location: http://example.com/new/01.txt
+Content-Length: 0
+
@@ -0,0 +1,17 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,22 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+headers
+ Accept: */*
+ X-Custom: This is a custom header
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Accept: */*
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+X-Custom: This is a custom header
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,13 @@
+url
+ http://example.com/missing.html
+----------
+GET /missing.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 404 Not Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Length: 0
+
@@ -0,0 +1,17 @@
+url
+ http://example.com:9000/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /index.html HTTP/1.1
+Host: example.com:9000
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,21 @@
+url
+ http://example.com/chunked.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /chunked.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Transfer-Encoding: chunked
+
+2C
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
+0
+
@@ -0,0 +1,19 @@
+url
+ http://example.com/cb.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+data_cb
+ sub { $main::data .= $_[0] }
+----------
+GET /cb.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,19 @@
+new_args
+ proxy: http://proxy.example.com:8080/
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET http://example.com/index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,21 @@
+new_args
+ max_size: 26
+url
+ http://example.com/index.html
+expected_rc
+ 599
+expected_like
+ Size of response body exceeds the maximum allowed of 26
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,16 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,21 @@
+url
+ http://example.com/chunked.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /chunked.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Transfer-Encoding: CHUNKED
+
+2C
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
+0
+
@@ -0,0 +1,22 @@
+url
+ http://example.com/chunked.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /chunked.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 1024
+Transfer-Encoding: chunked
+
+2C
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
+0
+
@@ -0,0 +1,17 @@
+url
+ http:///index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /index.html HTTP/1.1
+Host: localhost
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,21 @@
+url
+ http://example.com/chunked.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /chunked.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Transfer-Encoding: chunked
+
+2C; this_extension=foo
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
+0
+
@@ -0,0 +1,22 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+headers
+ X-Foo: one
+ X-Foo: two
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+X-Foo: one
+X-Foo: two
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,17 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/01.01 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,19 @@
+url
+ http://example.com/index.html
+expected_rc
+ 599
+expected_like
+ Malformed Status-Line
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/0 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,19 @@
+url
+ http://example.com/index.html
+expected_rc
+ 599
+expected_like
+ Unsupported HTTP protocol
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.2 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,36 @@
+url
+ http://example.com/chunked.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+expected_headers
+ transfer-encoding: chunked
+ x-a: Foo
+ x-a: Bar
+ x-a: Baz
+ x-b: Foo
+ x-b: Bar
+ x-b: Baz
+ x-c: Foo
+
+----------
+GET /chunked.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Transfer-Encoding: chunked
+X-A: Foo
+X-B: Foo
+X-B: Bar
+
+2C
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
+0
+X-A: Bar
+X-A: Baz
+X-B: Baz
+X-C: Foo
+
@@ -0,0 +1,22 @@
+url
+ http://example.com/chunked.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /chunked.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Transfer-Encoding: wacky
+Transfer-Encoding: chunked
+
+2C
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
+0
+
@@ -0,0 +1,21 @@
+url
+ http://example.com/index.html
+headers
+ connection: X-Foo
+ X-Foo: bar
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+X-Foo: bar
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,23 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+expected_rc
+ 200
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 100 Continue
+
+HTTP/1.1 110 Arbitrary 1XX status code
+
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,16 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+HEAD /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 44
+
@@ -0,0 +1,9 @@
+No content length
+----------
+0
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+
+0123456789
@@ -0,0 +1,10 @@
+Wrong content length
+----------
+0
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 10
+
+01234567890123456789
@@ -0,0 +1,11 @@
+Connection close
+----------
+0
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 10
+Connection: close
+
+0123456789
@@ -0,0 +1,10 @@
+Not HTTP/1.1
+----------
+0
+----------
+HTTP/1.0 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 10
+
+0123456789
@@ -0,0 +1,11 @@
+Not HTTP/1.1 with keep-alive
+----------
+0
+----------
+HTTP/1.0 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 10
+Connection: keep-alive
+
+0123456789
@@ -0,0 +1,18 @@
+url
+ http://example.com/modified.txt
+----------
+GET /modified.txt HTTP/1.1
+Host: example.com
+Connection: close
+If-Modified-Since: Tue, 01 Feb 1994 00:00:00 GMT
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Last-Modified: Wed, 02 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,14 @@
+url
+ http://example.com/not-modified.txt
+----------
+GET /not-modified.txt HTTP/1.1
+Host: example.com
+Connection: close
+If-Modified-Since: Tue, 01 Feb 1994 00:00:00 GMT
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 304 Not Modified
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Last-Modified: Tue, 01 Feb 1994 00:00:00 GMT
+
@@ -0,0 +1,17 @@
+url
+ http://example.com/new.txt
+----------
+GET /new.txt HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Last-Modified: Tue, 01 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,13 @@
+url
+ http://example.com/missing.txt
+----------
+GET /missing.txt HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 404 Not Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Length: 0
+
@@ -0,0 +1,20 @@
+url
+ http://example.com/modified.txt
+headers
+ if-modified-since: Tue, 01 Feb 1994 12:00:00 GMT
+----------
+GET /modified.txt HTTP/1.1
+Host: example.com
+Connection: close
+If-Modified-Since: Tue, 01 Feb 1994 12:00:00 GMT
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Last-Modified: Wed, 02 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,24 @@
+url
+ http://example.com/index.html
+headers
+ Content-Type: text/plain
+ Content-Length: 42
+content
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+POST /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,21 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+new_args
+ proxy: http://foo:bar@proxy.example.com/
+
+----------
+GET http://example.com/index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Proxy-Authorization: Basic Zm9vOmJhcg==
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -0,0 +1,22 @@
+url
+ http://example.com/new.txt
+headers
+ Content-Type: text/plain
+content
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+PUT /new.txt HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
+----------
+HTTP/1.1 201 Created
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Location: http://example.com/new.txt
+Content-Length: 0
+
@@ -0,0 +1,24 @@
+url
+ http://example.com/callback.txt
+headers
+ Content-Type: text/plain
+ Content-Length: 42
+content_cb
+ my @content = qq{abcdefghijklmnopqrstuvwxyz1234567890abcdef};
+ sub { shift @content }
+----------
+PUT /callback.txt HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
+----------
+HTTP/1.1 201 Created
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Location: http://example.com/callback.txt
+Content-Length: 0
+
@@ -0,0 +1,25 @@
+url
+ http://example.com/chunked.txt
+headers
+ Content-Type: text/plain
+content_cb
+ my @content = qq{abcdefghijklmnopqrstuvwxyz1234567890abcdef};
+ sub { shift @content }
+----------
+PUT /chunked.txt HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: text/plain
+Transfer-Encoding: chunked
+
+2A
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+0
+
+----------
+HTTP/1.1 201 Created
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Location: http://example.com/chunked.txt
+Content-Length: 0
+
@@ -0,0 +1,19 @@
+url
+ http://example.com/new.txt
+content
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+PUT /new.txt HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: application/octet-stream
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+----------
+HTTP/1.1 201 Created
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Location: http://example.com/new.txt
+Content-Length: 0
+
@@ -0,0 +1,27 @@
+url
+ http://example.com/chunked.txt
+headers
+ Content-Type: text/plain
+content_cb
+ my @content = qq{abcdefghijklmnopqrstuvwxyz1234567890abcdef};
+ sub { shift @content }
+trailer_cb
+ sub { return { 'x-foo' => 'bar' } }
+----------
+PUT /chunked.txt HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+Content-Type: text/plain
+Transfer-Encoding: chunked
+
+2A
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+0
+X-Foo: bar
+----------
+HTTP/1.1 201 Created
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Location: http://example.com/chunked.txt
+Content-Length: 0
+
@@ -0,0 +1,35 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+expected_url
+ http://example.com/index2.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 302 Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index2.html
+
+<a href="http://example.com/index2.html">redirect</a>
+
+----------
+GET /index2.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,52 @@
+new_args
+ max_redirect: 0
+url
+ http://example.com/index.html
+expected
+ <a href="http://example.com/index2.html">redirect</a>
+expected_url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 302 Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index2.html
+
+<a href="http://example.com/index2.html">redirect</a>
+
+----------
+GET /index2.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 302 Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index3.html
+
+<a href="http://example.com/index3.html">redirect</a>
+
+----------
+GET /index3.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,52 @@
+new_args
+ max_redirect: 1
+url
+ http://example.com/index.html
+expected
+ <a href="http://example.com/index3.html">redirect</a>
+expected_url
+ http://example.com/index2.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 302 Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index2.html
+
+<a href="http://example.com/index2.html">redirect</a>
+
+----------
+GET /index2.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 302 Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index3.html
+
+<a href="http://example.com/index3.html">redirect</a>
+
+----------
+GET /index3.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,52 @@
+new_args
+ max_redirect: 2
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+expected_url
+ http://example.com/index3.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 302 Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index2.html
+
+<a href="http://example.com/index2.html">redirect</a>
+
+----------
+GET /index2.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 302 Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index3.html
+
+<a href="http://example.com/index3.html">redirect</a>
+
+----------
+GET /index3.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,50 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+expected_url
+ http://example.com/index3.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 302 Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index2.html
+
+<a href="http://example.com/index2.html">redirect</a>
+
+----------
+GET /index2.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 301 Found
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: /index3.html
+
+<a href="http://example.com/index3.html">redirect</a>
+
+----------
+GET /index3.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,35 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+expected_url
+ http://example.com/index2.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 303 See Other
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index2.html
+
+<a href="http://example.com/index2.html">redirect</a>
+
+----------
+GET /index2.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,35 @@
+url
+ http://example.com/index.html
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+expected_url
+ http://example.com/index2.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 307 Temporary Redirect
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index2.html
+
+<a href="http://example.com/index2.html">redirect</a>
+
+----------
+GET /index2.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -0,0 +1,21 @@
+url
+ http://example.com/index.html
+expected
+ <a href="http://example.com/index2.html">redirect</a>
+expected_url
+ http://example.com/index.html
+----------
+GET /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 305 Use Proxy
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index2.html
+
+<a href="http://example.com/index2.html">redirect</a>
+
@@ -0,0 +1,37 @@
+url
+ http://example.com/index.html
+method
+ POST
+expected
+ abcdefghijklmnopqrstuvwxyz1234567890abcdef
+expected_url
+ http://example.com/index2.html
+----------
+POST /index.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 303 See Other
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/html
+Content-Length: 53
+Location: http://example.com/index2.html
+
+<a href="http://example.com/index2.html">redirect</a>
+
+----------
+GET /index2.html HTTP/1.1
+Host: example.com
+Connection: close
+User-Agent: HTTP-Tiny/VERSION
+
+----------
+HTTP/1.1 200 OK
+Date: Thu, 03 Feb 1994 00:00:00 GMT
+Content-Type: text/plain
+Content-Length: 42
+
+abcdefghijklmnopqrstuvwxyz1234567890abcdef
+
@@ -27,6 +27,7 @@ on 'test' => sub {
requires "IPC::Cmd" => "0";
requires "Test::More" => "0.96";
requires "open" => "0";
+ requires "perl" => "5.006";
};
on 'test' => sub {
@@ -35,13 +36,14 @@ on 'test' => sub {
on 'configure' => sub {
requires "ExtUtils::MakeMaker" => "6.17";
+ requires "perl" => "5.006";
};
on 'develop' => sub {
requires "Dist::Zilla" => "5";
requires "Dist::Zilla::Plugin::Prereqs" => "0";
requires "Dist::Zilla::Plugin::RemovePrereqs" => "0";
- requires "Dist::Zilla::PluginBundle::DAGOLDEN" => "0.068";
+ requires "Dist::Zilla::PluginBundle::DAGOLDEN" => "0.072";
requires "File::Spec" => "0";
requires "File::Temp" => "0";
requires "IO::Handle" => "0";
@@ -5,7 +5,7 @@ license = Perl_5
copyright_holder = Christian Hansen
[@DAGOLDEN]
-:version = 0.068
+:version = 0.072
stopwords = CA
stopwords = UA
stopwords = proxying
@@ -3,7 +3,8 @@ package HTTP::Tiny;
use strict;
use warnings;
# ABSTRACT: A small, simple, correct HTTP/1.1 client
-our $VERSION = '0.050'; # VERSION
+
+our $VERSION = '0.051';
use Carp ();
@@ -471,7 +472,7 @@ my %DefaultPort = (
sub _agent {
my $class = ref($_[0]) || $_[0];
(my $default_agent = $class) =~ s{::}{-}g;
- return $default_agent . "/" . ($class->VERSION || 0);
+ return $default_agent . "/" . $class->VERSION;
}
sub _request {
@@ -862,15 +863,6 @@ use warnings;
use Errno qw[EINTR EPIPE];
use IO::Socket qw[SOCK_STREAM];
-# for thread safety, we need to know thread id or else fake it;
-# requires "threads.pm" to hide it from the minimum version detector
-if ( eval { require "threads.pm"; 1 } ) { ## no critic
- *_get_tid = sub { threads->tid };
-}
-else {
- *_get_tid = sub () { 0 };
-}
-
# PERL_HTTP_TINY_IPV4_ONLY is a private environment variable to force old
# behavior if someone is unable to boostrap CPAN from a new perl install; it is
# not intended for general, per-client use and may be removed in the future
@@ -1414,6 +1406,12 @@ sub _find_CA_file {
. qq/Try installing Mozilla::CA from CPAN\n/;
}
+# for thread safety, we need to know thread id if threads are loaded
+sub _get_tid {
+ no warnings 'reserved'; # for 'threads'
+ return threads->can("tid") ? threads->tid : 0;
+}
+
sub _ssl_args {
my ($self, $host) = @_;
@@ -1458,7 +1456,7 @@ HTTP::Tiny - A small, simple, correct HTTP/1.1 client
=head1 VERSION
-version 0.050
+version 0.051
=head1 SYNOPSIS
@@ -2023,7 +2021,7 @@ David Golden <dagolden@cpan.org>
=head1 CONTRIBUTORS
-=for stopwords Alan Gardner Edward Zborowski James Raspass Jess Robinson Lukas Eklund Martin J. Evans Martin-Louis Bright Mike Doherty Petr Písař Serguei Trouchelle Syohei YOSHIDA Alessandro Ghedini Sören Kornetzki Tom Hukins Tony Cook Brad Gilbert Chris Nehren Weyl Claes Jakobsson Clinton Gormley Craig Berry David Mitchell Dean Pearce
+=for stopwords Alan Gardner Alessandro Ghedini Brad Gilbert Chris Nehren Weyl Claes Jakobsson Clinton Gormley Craig Berry David Mitchell Dean Pearce Edward Zborowski James Raspass Jess Robinson Lukas Eklund Martin J. Evans Martin-Louis Bright Mike Doherty Petr Písař Serguei Trouchelle Sören Kornetzki Syohei YOSHIDA Tom Hukins Tony Cook
=over 4
@@ -2033,91 +2031,91 @@ Alan Gardner <gardner@pythian.com>
=item *
-Edward Zborowski <ed@rubensteintech.com>
+Alessandro Ghedini <al3xbio@gmail.com>
=item *
-James Raspass <jraspass@gmail.com>
+Brad Gilbert <bgills@cpan.org>
=item *
-Jess Robinson <castaway@desert-island.me.uk>
+Chris Nehren <apeiron@cpan.org>
=item *
-Lukas Eklund <leklund@gmail.com>
+Chris Weyl <cweyl@alumni.drew.edu>
=item *
-Martin J. Evans <mjegh@ntlworld.com>
+Claes Jakobsson <claes@surfar.nu>
=item *
-Martin-Louis Bright <mlbright@gmail.com>
+Clinton Gormley <clint@traveljury.com>
=item *
-Mike Doherty <doherty@cpan.org>
+Craig Berry <cberry@cpan.org>
=item *
-Petr Písař <ppisar@redhat.com>
+David Mitchell <davem@iabyn.com>
=item *
-Serguei Trouchelle <stro@cpan.org>
+Dean Pearce <pearce@pythian.com>
=item *
-Syohei YOSHIDA <syohex@gmail.com>
+Edward Zborowski <ed@rubensteintech.com>
=item *
-Alessandro Ghedini <al3xbio@gmail.com>
+James Raspass <jraspass@gmail.com>
=item *
-Sören Kornetzki <soeren.kornetzki@delti.com>
+Jess Robinson <castaway@desert-island.me.uk>
=item *
-Tom Hukins <tom@eborcom.com>
+Lukas Eklund <leklund@gmail.com>
=item *
-Tony Cook <tony@develop-help.com>
+Martin J. Evans <mjegh@ntlworld.com>
=item *
-Brad Gilbert <bgills@cpan.org>
+Martin-Louis Bright <mlbright@gmail.com>
=item *
-Chris Nehren <apeiron@cpan.org>
+Mike Doherty <doherty@cpan.org>
=item *
-Chris Weyl <rsrchboy@cpan.org>
+Petr Písař <ppisar@redhat.com>
=item *
-Claes Jakobsson <claes@surfar.nu>
+Serguei Trouchelle <stro@cpan.org>
=item *
-Clinton Gormley <clint@traveljury.com>
+Sören Kornetzki <soeren.kornetzki@delti.com>
=item *
-Craig Berry <cberry@cpan.org>
+Syohei YOSHIDA <syohex@gmail.com>
=item *
-David Mitchell <davem@iabyn.com>
+Tom Hukins <tom@eborcom.com>
=item *
-Dean Pearce <pearce@pythian.com>
+Tony Cook <tony@develop-help.com>
=back
@@ -1,7 +1,8 @@
do { my $x = {
'configure' => {
'requires' => {
- 'ExtUtils::MakeMaker' => '6.17'
+ 'ExtUtils::MakeMaker' => '6.17',
+ 'perl' => '5.006'
}
},
'develop' => {
@@ -9,7 +10,7 @@ do { my $x = {
'Dist::Zilla' => '5',
'Dist::Zilla::Plugin::Prereqs' => '0',
'Dist::Zilla::Plugin::RemovePrereqs' => '0',
- 'Dist::Zilla::PluginBundle::DAGOLDEN' => '0.068',
+ 'Dist::Zilla::PluginBundle::DAGOLDEN' => '0.072',
'File::Spec' => '0',
'File::Temp' => '0',
'IO::Handle' => '0',
@@ -61,7 +62,8 @@ do { my $x = {
'IO::Socket::INET' => '0',
'IPC::Cmd' => '0',
'Test::More' => '0.96',
- 'open' => '0'
+ 'open' => '0',
+ 'perl' => '5.006'
}
}
};
@@ -11,7 +11,7 @@ use t::Util qw[tmpfile rewind slurp monkey_patch dir_list parse_case
use HTTP::Tiny;
BEGIN { monkey_patch() }
-for my $file ( dir_list("t/cases", qr/^get/ ) ) {
+for my $file ( dir_list("corpus", qr/^get/ ) ) {
my $label = basename($file);
my $data = do { local (@ARGV,$/) = $file; <> };
my ($params, $expect_req, $give_res) = split /--+\n/, $data;
@@ -10,7 +10,7 @@ use t::Util qw[tmpfile rewind slurp monkey_patch dir_list parse_case
use HTTP::Tiny;
BEGIN { monkey_patch() }
-for my $file ( dir_list("t/cases", qr/^head/ ) ) {
+for my $file ( dir_list("corpus", qr/^head/ ) ) {
my $data = do { local (@ARGV,$/) = $file; <> };
my ($params, $expect_req, $give_res) = split /--+\n/, $data;
# cleanup source data
@@ -10,7 +10,7 @@ use t::Util qw[tmpfile rewind slurp monkey_patch dir_list parse_case
use HTTP::Tiny;
BEGIN { monkey_patch() }
-for my $file ( dir_list("t/cases", qr/^put/ ) ) {
+for my $file ( dir_list("corpus", qr/^put/ ) ) {
my $data = do { local (@ARGV,$/) = $file; <> };
my ($params, $expect_req, $give_res) = split /--+\n/, $data;
# cleanup source data
@@ -10,7 +10,7 @@ use t::Util qw[tmpfile rewind slurp monkey_patch dir_list parse_case
use HTTP::Tiny;
BEGIN { monkey_patch() }
-for my $file ( dir_list("t/cases", qr/^delete/ ) ) {
+for my $file ( dir_list("corpus", qr/^delete/ ) ) {
my $data = do { local (@ARGV,$/) = $file; <> };
my ($params, $expect_req, $give_res) = split /--+\n/, $data;
# cleanup source data
@@ -10,7 +10,7 @@ use t::Util qw[tmpfile rewind slurp monkey_patch dir_list parse_case
use HTTP::Tiny;
BEGIN { monkey_patch() }
-for my $file ( dir_list("t/cases", qr/^post/ ) ) {
+for my $file ( dir_list("corpus", qr/^post/ ) ) {
my $data = do { local (@ARGV,$/) = $file; <> };
my ($params, $expect_req, $give_res) = split /--+\n/, $data;
# cleanup source data
@@ -24,7 +24,7 @@ my %timestamp = (
'not-modified.txt' => $known_epoch - 2 * $day,
);
-for my $file ( dir_list("t/cases", qr/^mirror/ ) ) {
+for my $file ( dir_list("corpus", qr/^mirror/ ) ) {
1 while unlink $tempfile;
my $data = do { local (@ARGV,$/) = $file; <> };
my ($params, $expect_req, $give_res) = split /--+\n/, $data;
@@ -12,7 +12,7 @@ use t::Util qw[tmpfile rewind slurp monkey_patch dir_list parse_case
use HTTP::Tiny;
BEGIN { monkey_patch() }
-for my $file ( dir_list("t/cases", qr/^redirect/ ) ) {
+for my $file ( dir_list("corpus", qr/^redirect/ ) ) {
my $label = basename($file);
my $data = do { local (@ARGV,$/) = $file; <> };
my ($params, @case_pairs) = split /--+\n/, $data;
@@ -11,7 +11,7 @@ use t::Util qw[tmpfile rewind slurp monkey_patch dir_list parse_case
use HTTP::Tiny;
BEGIN { monkey_patch() }
-for my $file ( dir_list("t/cases", qr/^form/ ) ) {
+for my $file ( dir_list("corpus", qr/^form/ ) ) {
my $data = do { local (@ARGV,$/) = $file; <> };
my ($params, $expect_req, $give_res) = split /--+\n/, $data;
# cleanup source data
@@ -18,7 +18,7 @@ SKIP: for my $class ( qw/t::SimpleCookieJar HTTP::CookieJar/ ) {
eval "require $class; 1"
or plan skip_all => "Needs $class";
- for my $file ( dir_list("t/cases", qr/^cookies/ ) ) {
+ for my $file ( dir_list("corpus", qr/^cookies/ ) ) {
my $label = basename($file);
my $data = do { local (@ARGV,$/) = $file; <> };
my @cases = split /--+\n/, $data;
@@ -12,7 +12,7 @@ use t::Util qw[tmpfile rewind slurp monkey_patch dir_list parse_case
use HTTP::Tiny;
BEGIN { monkey_patch() }
-for my $file ( dir_list("t/cases", qr/^auth/ ) ) {
+for my $file ( dir_list("corpus", qr/^auth/ ) ) {
my $label = basename($file);
my $data = do { local (@ARGV,$/) = $file; <> };
my ($params, @case_pairs) = split /--+\n/, $data;
@@ -12,7 +12,7 @@ use t::Util qw[tmpfile rewind slurp monkey_patch dir_list parse_case
use HTTP::Tiny;
BEGIN { monkey_patch() }
-for my $file ( dir_list("t/cases", qr/^proxy-auth/ ) ) {
+for my $file ( dir_list("corpus", qr/^proxy-auth/ ) ) {
my $label = basename($file);
my $data = do { local (@ARGV,$/) = $file; <> };
my ($params, @case_pairs) = split /--+\n/, $data;
@@ -59,7 +59,7 @@ new_ht();
$h->{handle}->close;
test_ht( "Socket closed", 0, 'http://foo.com' );
-for my $file ( dir_list( "t/cases", qr/^keepalive/ ) ) {
+for my $file ( dir_list( "corpus", qr/^keepalive/ ) ) {
my $label = basename($file);
my $data = do { local ( @ARGV, $/ ) = $file; <> };
my ( $title, $ok, $response ) = map { trim($_) } split /--+/, $data;
@@ -1,18 +0,0 @@
-url
- http://foo:bar@example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Authorization: Basic Zm9vOmJhcg==
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,18 +0,0 @@
-url
- http://Aladdin:open sesame@example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,36 +0,0 @@
-url
- http://foo:bar@example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-expected_url
- http://example.com/index2.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Authorization: Basic Zm9vOmJhcg==
-
-----------
-HTTP/1.1 302 Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index2.html
-
-<a href="http://example.com/index2.html">redirect</a>
-
-----------
-GET /index2.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,18 +0,0 @@
-url
- http://rjbs%40cpan.org:password@example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Authorization: Basic cmpic0BjcGFuLm9yZzpwYXNzd29yZA==
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,20 +0,0 @@
-url
- http://foo:bar@example.com/index.html
-headers
- authorization: Whatever
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Authorization: Whatever
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,34 +0,0 @@
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname=cvalue
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,52 +0,0 @@
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue01; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname=cvalue01
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue02; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname=cvalue02
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue02; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,87 +0,0 @@
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue01; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname=cvalue01
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue02; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index02.html
-----------
-GET /index02.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue03; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname=cvalue02
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue02; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index02.html
-----------
-GET /index02.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname=cvalue03
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue03; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,37 +0,0 @@
-url
- http://example.com/index.html
-headers
- Cookie: cname=cvalue05; domain=example.com; path=/
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname=cvalue05
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue06; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname=cvalue06
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue06; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,35 +0,0 @@
-url
- http://example.com/index.html
-headers
- No-Cookie-Jar: 1
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue06; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname=cvalue06; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,51 +0,0 @@
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname1=cvalue01; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname1=cvalue01
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname2=cvalue02; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname1=cvalue01; cname2=cvalue02
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,34 +0,0 @@
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Set-Cookie: cname1=cvalue01; domain=example.com; path=/
-Set-Cookie: cname2=cvalue02; domain=example.com; path=/
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Cookie: cname1=cvalue01; cname2=cvalue02
-
-----------
-HTTP/1.1 200 OK
-Date: Sat, 02 Mar 2013 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,15 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-DELETE /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Length: 0
-
@@ -1,23 +0,0 @@
-url
- http://example.com/new
-headers
- Content-Type: text/plain
-content
- key|value|name|John Doe|noise|!@#$%^&*()
-datatype
- ARRAY
-----------
-POST /new HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: application/x-www-form-urlencoded
-Content-Length: 60
-
-key=value&name=John+Doe&noise=%21%40%23%24%25%5E%26%2A%28%29
-----------
-HTTP/1.1 201 Created
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Location: http://example.com/new/01.txt
-Content-Length: 0
-
@@ -1,21 +0,0 @@
-url
- http://example.com/new
-content
- key|value|name|John Doe|noise|!@#$%^&*()
-datatype
- HASH
-----------
-POST /new HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: application/x-www-form-urlencoded
-Content-Length: 60
-
-key=value&name=John+Doe&noise=%21%40%23%24%25%5E%26%2A%28%29
-----------
-HTTP/1.1 201 Created
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Location: http://example.com/new/01.txt
-Content-Length: 0
-
@@ -1,21 +0,0 @@
-url
- http://example.com/new
-content
- bar|baz|ack|foo
-datatype
- HASH
-----------
-POST /new HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: application/x-www-form-urlencoded
-Content-Length: 15
-
-ack=foo&bar=baz
-----------
-HTTP/1.1 201 Created
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Location: http://example.com/new/01.txt
-Content-Length: 0
-
@@ -1,21 +0,0 @@
-url
- http://example.com/new
-content
- utf8|☺
-datatype
- ARRAY
-----------
-POST /new HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: application/x-www-form-urlencoded
-Content-Length: 23
-
-utf8=%C3%A2%C2%98%C2%BA
-----------
-HTTP/1.1 201 Created
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Location: http://example.com/new/01.txt
-Content-Length: 0
-
@@ -1,21 +0,0 @@
-url
- http://example.com/new
-content
- bar|baz|ack|foo
-datatype
- ARRAY
-----------
-POST /new HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: application/x-www-form-urlencoded
-Content-Length: 15
-
-bar=baz&ack=foo
-----------
-HTTP/1.1 201 Created
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Location: http://example.com/new/01.txt
-Content-Length: 0
-
@@ -1,17 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,22 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-headers
- Accept: */*
- X-Custom: This is a custom header
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Accept: */*
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-X-Custom: This is a custom header
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,13 +0,0 @@
-url
- http://example.com/missing.html
-----------
-GET /missing.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 404 Not Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Length: 0
-
@@ -1,17 +0,0 @@
-url
- http://example.com:9000/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /index.html HTTP/1.1
-Host: example.com:9000
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,21 +0,0 @@
-url
- http://example.com/chunked.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /chunked.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Transfer-Encoding: chunked
-
-2C
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
-0
-
@@ -1,19 +0,0 @@
-url
- http://example.com/cb.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-data_cb
- sub { $main::data .= $_[0] }
-----------
-GET /cb.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,19 +0,0 @@
-new_args
- proxy: http://proxy.example.com:8080/
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET http://example.com/index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,21 +0,0 @@
-new_args
- max_size: 26
-url
- http://example.com/index.html
-expected_rc
- 599
-expected_like
- Size of response body exceeds the maximum allowed of 26
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,16 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,21 +0,0 @@
-url
- http://example.com/chunked.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /chunked.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Transfer-Encoding: CHUNKED
-
-2C
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
-0
-
@@ -1,22 +0,0 @@
-url
- http://example.com/chunked.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /chunked.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 1024
-Transfer-Encoding: chunked
-
-2C
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
-0
-
@@ -1,17 +0,0 @@
-url
- http:///index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /index.html HTTP/1.1
-Host: localhost
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,21 +0,0 @@
-url
- http://example.com/chunked.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /chunked.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Transfer-Encoding: chunked
-
-2C; this_extension=foo
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
-0
-
@@ -1,22 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-headers
- X-Foo: one
- X-Foo: two
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-X-Foo: one
-X-Foo: two
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,17 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/01.01 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,19 +0,0 @@
-url
- http://example.com/index.html
-expected_rc
- 599
-expected_like
- Malformed Status-Line
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/0 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,19 +0,0 @@
-url
- http://example.com/index.html
-expected_rc
- 599
-expected_like
- Unsupported HTTP protocol
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.2 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,36 +0,0 @@
-url
- http://example.com/chunked.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-expected_headers
- transfer-encoding: chunked
- x-a: Foo
- x-a: Bar
- x-a: Baz
- x-b: Foo
- x-b: Bar
- x-b: Baz
- x-c: Foo
-
-----------
-GET /chunked.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Transfer-Encoding: chunked
-X-A: Foo
-X-B: Foo
-X-B: Bar
-
-2C
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
-0
-X-A: Bar
-X-A: Baz
-X-B: Baz
-X-C: Foo
-
@@ -1,22 +0,0 @@
-url
- http://example.com/chunked.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /chunked.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Transfer-Encoding: wacky
-Transfer-Encoding: chunked
-
-2C
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
-0
-
@@ -1,21 +0,0 @@
-url
- http://example.com/index.html
-headers
- connection: X-Foo
- X-Foo: bar
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-X-Foo: bar
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,23 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-expected_rc
- 200
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 100 Continue
-
-HTTP/1.1 110 Arbitrary 1XX status code
-
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,16 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-HEAD /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 44
-
@@ -1,9 +0,0 @@
-No content length
-----------
-0
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-
-0123456789
@@ -1,10 +0,0 @@
-Wrong content length
-----------
-0
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 10
-
-01234567890123456789
@@ -1,11 +0,0 @@
-Connection close
-----------
-0
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 10
-Connection: close
-
-0123456789
@@ -1,10 +0,0 @@
-Not HTTP/1.1
-----------
-0
-----------
-HTTP/1.0 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 10
-
-0123456789
@@ -1,11 +0,0 @@
-Not HTTP/1.1 with keep-alive
-----------
-0
-----------
-HTTP/1.0 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 10
-Connection: keep-alive
-
-0123456789
@@ -1,18 +0,0 @@
-url
- http://example.com/modified.txt
-----------
-GET /modified.txt HTTP/1.1
-Host: example.com
-Connection: close
-If-Modified-Since: Tue, 01 Feb 1994 00:00:00 GMT
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Last-Modified: Wed, 02 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,14 +0,0 @@
-url
- http://example.com/not-modified.txt
-----------
-GET /not-modified.txt HTTP/1.1
-Host: example.com
-Connection: close
-If-Modified-Since: Tue, 01 Feb 1994 00:00:00 GMT
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 304 Not Modified
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Last-Modified: Tue, 01 Feb 1994 00:00:00 GMT
-
@@ -1,17 +0,0 @@
-url
- http://example.com/new.txt
-----------
-GET /new.txt HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Last-Modified: Tue, 01 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,13 +0,0 @@
-url
- http://example.com/missing.txt
-----------
-GET /missing.txt HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 404 Not Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Length: 0
-
@@ -1,20 +0,0 @@
-url
- http://example.com/modified.txt
-headers
- if-modified-since: Tue, 01 Feb 1994 12:00:00 GMT
-----------
-GET /modified.txt HTTP/1.1
-Host: example.com
-Connection: close
-If-Modified-Since: Tue, 01 Feb 1994 12:00:00 GMT
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Last-Modified: Wed, 02 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,24 +0,0 @@
-url
- http://example.com/index.html
-headers
- Content-Type: text/plain
- Content-Length: 42
-content
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-POST /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,21 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-new_args
- proxy: http://foo:bar@proxy.example.com/
-
-----------
-GET http://example.com/index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Proxy-Authorization: Basic Zm9vOmJhcg==
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
@@ -1,22 +0,0 @@
-url
- http://example.com/new.txt
-headers
- Content-Type: text/plain
-content
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-PUT /new.txt HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
-----------
-HTTP/1.1 201 Created
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Location: http://example.com/new.txt
-Content-Length: 0
-
@@ -1,24 +0,0 @@
-url
- http://example.com/callback.txt
-headers
- Content-Type: text/plain
- Content-Length: 42
-content_cb
- my @content = qq{abcdefghijklmnopqrstuvwxyz1234567890abcdef};
- sub { shift @content }
-----------
-PUT /callback.txt HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
-----------
-HTTP/1.1 201 Created
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Location: http://example.com/callback.txt
-Content-Length: 0
-
@@ -1,25 +0,0 @@
-url
- http://example.com/chunked.txt
-headers
- Content-Type: text/plain
-content_cb
- my @content = qq{abcdefghijklmnopqrstuvwxyz1234567890abcdef};
- sub { shift @content }
-----------
-PUT /chunked.txt HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: text/plain
-Transfer-Encoding: chunked
-
-2A
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-0
-
-----------
-HTTP/1.1 201 Created
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Location: http://example.com/chunked.txt
-Content-Length: 0
-
@@ -1,19 +0,0 @@
-url
- http://example.com/new.txt
-content
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-PUT /new.txt HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: application/octet-stream
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-----------
-HTTP/1.1 201 Created
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Location: http://example.com/new.txt
-Content-Length: 0
-
@@ -1,27 +0,0 @@
-url
- http://example.com/chunked.txt
-headers
- Content-Type: text/plain
-content_cb
- my @content = qq{abcdefghijklmnopqrstuvwxyz1234567890abcdef};
- sub { shift @content }
-trailer_cb
- sub { return { 'x-foo' => 'bar' } }
-----------
-PUT /chunked.txt HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-Content-Type: text/plain
-Transfer-Encoding: chunked
-
-2A
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-0
-X-Foo: bar
-----------
-HTTP/1.1 201 Created
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Location: http://example.com/chunked.txt
-Content-Length: 0
-
@@ -1,35 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-expected_url
- http://example.com/index2.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 302 Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index2.html
-
-<a href="http://example.com/index2.html">redirect</a>
-
-----------
-GET /index2.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,52 +0,0 @@
-new_args
- max_redirect: 0
-url
- http://example.com/index.html
-expected
- <a href="http://example.com/index2.html">redirect</a>
-expected_url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 302 Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index2.html
-
-<a href="http://example.com/index2.html">redirect</a>
-
-----------
-GET /index2.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 302 Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index3.html
-
-<a href="http://example.com/index3.html">redirect</a>
-
-----------
-GET /index3.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,52 +0,0 @@
-new_args
- max_redirect: 1
-url
- http://example.com/index.html
-expected
- <a href="http://example.com/index3.html">redirect</a>
-expected_url
- http://example.com/index2.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 302 Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index2.html
-
-<a href="http://example.com/index2.html">redirect</a>
-
-----------
-GET /index2.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 302 Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index3.html
-
-<a href="http://example.com/index3.html">redirect</a>
-
-----------
-GET /index3.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,52 +0,0 @@
-new_args
- max_redirect: 2
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-expected_url
- http://example.com/index3.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 302 Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index2.html
-
-<a href="http://example.com/index2.html">redirect</a>
-
-----------
-GET /index2.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 302 Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index3.html
-
-<a href="http://example.com/index3.html">redirect</a>
-
-----------
-GET /index3.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,50 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-expected_url
- http://example.com/index3.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 302 Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index2.html
-
-<a href="http://example.com/index2.html">redirect</a>
-
-----------
-GET /index2.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 301 Found
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: /index3.html
-
-<a href="http://example.com/index3.html">redirect</a>
-
-----------
-GET /index3.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,35 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-expected_url
- http://example.com/index2.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 303 See Other
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index2.html
-
-<a href="http://example.com/index2.html">redirect</a>
-
-----------
-GET /index2.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,35 +0,0 @@
-url
- http://example.com/index.html
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-expected_url
- http://example.com/index2.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 307 Temporary Redirect
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index2.html
-
-<a href="http://example.com/index2.html">redirect</a>
-
-----------
-GET /index2.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -1,21 +0,0 @@
-url
- http://example.com/index.html
-expected
- <a href="http://example.com/index2.html">redirect</a>
-expected_url
- http://example.com/index.html
-----------
-GET /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 305 Use Proxy
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index2.html
-
-<a href="http://example.com/index2.html">redirect</a>
-
@@ -1,37 +0,0 @@
-url
- http://example.com/index.html
-method
- POST
-expected
- abcdefghijklmnopqrstuvwxyz1234567890abcdef
-expected_url
- http://example.com/index2.html
-----------
-POST /index.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 303 See Other
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/html
-Content-Length: 53
-Location: http://example.com/index2.html
-
-<a href="http://example.com/index2.html">redirect</a>
-
-----------
-GET /index2.html HTTP/1.1
-Host: example.com
-Connection: close
-User-Agent: HTTP-Tiny/VERSION
-
-----------
-HTTP/1.1 200 OK
-Date: Thu, 03 Feb 1994 00:00:00 GMT
-Content-Type: text/plain
-Content-Length: 42
-
-abcdefghijklmnopqrstuvwxyz1234567890abcdef
-
@@ -2,11 +2,11 @@ use 5.006;
use strict;
use warnings;
-# this test was generated with Dist::Zilla::Plugin::Test::Compile 2.046
-
-use Test::More tests => 1 + ($ENV{AUTHOR_TESTING} ? 1 : 0);
+# this test was generated with Dist::Zilla::Plugin::Test::Compile 2.051
+use Test::More;
+plan tests => 1 + ($ENV{AUTHOR_TESTING} ? 1 : 0);
my @module_files = (
'HTTP/Tiny.pm'
@@ -48,6 +48,7 @@ for my $lib (@module_files)
-is(scalar(@warnings), 0, 'no warnings found') or diag 'got warnings: ', explain \@warnings if $ENV{AUTHOR_TESTING};
+is(scalar(@warnings), 0, 'no warnings found')
+ or diag 'got warnings: ', ( Test::More->can('explain') ? Test::More::explain(\@warnings) : join("\n", '', @warnings) ) if $ENV{AUTHOR_TESTING};
@@ -32,7 +32,7 @@ Chris
Nehren
apeiron
Weyl
-rsrchboy
+cweyl
Claes
Jakobsson
claes
@@ -73,12 +73,12 @@ ppisar
Serguei
Trouchelle
stro
-Syohei
-YOSHIDA
-syohex
Sören
Kornetzki
soeren
+Syohei
+YOSHIDA
+syohex
Tom
Hukins
tom