Email-SendGrid-V3

 view release on metacpan or  search on metacpan

t/send.t  view on Meta::CPAN

    no strict 'refs';
    no warnings 'redefine';
    local *{'HTTP::Tiny::_request'} = sub {
        my ($self, $method, $url, $args) = @_;

        my $request = { headers => {} };

        # https://github.com/chansen/p5-http-tiny/blob/ce7583b7ea85abf69282f89746248c3a5e1e961a/lib/HTTP/Tiny.pm#L815
        if ( defined $args->{content} ) {
            if (ref $args->{content} eq 'CODE') {
                $request->{headers}{'content-type'} ||= "application/octet-stream";
                $request->{headers}{'transfer-encoding'} = 'chunked'
                    unless $request->{headers}{'content-length'}
                        || $request->{headers}{'transfer-encoding'};
                $request->{cb} = $args->{content};
            }
            elsif ( length $args->{content} ) {
                my $content = $args->{content};
                if ( $] ge '5.008' ) {
                    utf8::downgrade($content, 1)
                        or die(qq/Wide character in request message body\n/);
                }
                $request->{headers}{'content-type'} ||= "application/octet-stream";
                $request->{headers}{'content-length'} = length $content
                    unless $request->{headers}{'content-length'}
                        || $request->{headers}{'transfer-encoding'};
                $request->{cb} = sub { substr $content, 0, length $content, '' };
            }
            $request->{trailer_cb} = $args->{trailer_callback}
                if ref $args->{trailer_callback} eq 'CODE';
        }

        return {



( run in 1.770 second using v1.01-cache-2.11-cpan-524268b4103 )