summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Data/QRCode.pm9
-rw-r--r--t/qrcode.t4
2 files changed, 10 insertions, 3 deletions
diff --git a/lib/Data/QRCode.pm b/lib/Data/QRCode.pm
index 74896c9..649e1f9 100644
--- a/lib/Data/QRCode.pm
+++ b/lib/Data/QRCode.pm
@@ -34,6 +34,15 @@ has input_data => (
isa => Str,
);
+around BUILDARGS => sub {
+ my ($orig,$class,@args) = @_;
+
+ return { input_data => $args[0] }
+ if @args == 1 && !ref $args[0];
+
+ return $class->$orig(@args);
+};
+
has _result => (
is => 'lazy',
init_arg => undef,
diff --git a/t/qrcode.t b/t/qrcode.t
index 14e8bd7..7e08a7f 100644
--- a/t/qrcode.t
+++ b/t/qrcode.t
@@ -4,9 +4,7 @@ use warnings;
use Test2::Bundle::Extended;
use Data::QRCode;
-my $qr = Data::QRCode->new({
- input_data => 'some words',
-});
+my $qr = Data::QRCode->new('some words');
my $text_matrix = $qr->map(
sub{