AWS-XRay

 view release on metacpan or  search on metacpan

lib/AWS/XRay/Segment.pm  view on Meta::CPAN

package AWS::XRay::Segment;

use 5.012000;
use strict;
use warnings;

use JSON::XS    ();
use Time::HiRes ();

my $header = qq|{"format":"json","version":1}\n|;
my $json   = JSON::XS->new->utf8;

sub new {
    my $class = shift;
    my $src   = shift;

    return bless {}, "${class}::NoTrace" if !$AWS::XRay::ENABLED;

    my $segment = {
        id         => AWS::XRay::new_id(),
        start_time => Time::HiRes::time(),

t/11_valid_name.t  view on Meta::CPAN

use strict;
use warnings;
use FindBin;
use lib "$FindBin::Bin/../";

use AWS::XRay ();
use Test::More;
use IO::Scalar;
use Encode qw/decode_utf8/;

subtest "valid", sub {
    my @names = (
        "foo",
        "foo bar 3",
        "foo/_bar:",
        "foo%bar",
        "foo&bar#=baz",
        "foo\@bar+\\baz",
        " foo - bar ",
        "x" x 200,
        decode_utf8("あああ"),
    );
    for my $name (@names) {
        ok AWS::XRay::is_valid_name($name), "valid name: $name";
    }
};

subtest "invalid", sub {
    my @names = (
        "あああ",
        "^",

t/13_json_encoding.t  view on Meta::CPAN

use strict;
use warnings;
use FindBin;
use lib "$FindBin::Bin/../";

use AWS::XRay ();
use Test::More;
use Encode qw/decode_utf8/;

local $AWS::XRay::ENABLED = 1;

subtest "utf8" => sub {
    my $segment = AWS::XRay::Segment->new({ name => decode_utf8("あ") });
    ok $segment->close;
};

done_testing;



( run in 1.218 second using v1.01-cache-2.11-cpan-49f99fa48dc )