File Coverage

lib/JMAP/Validation/Generators/File.pm
Criterion Covered Total %
statement 20 20 100.0
branch n/a
condition n/a
subroutine 5 5 100.0
pod 0 1 0.0
total 25 26 96.1


line stmt bran cond sub pod time code
1             package JMAP::Validation::Generators::File;
2              
3 3     3   358 use strict;
  3         4  
  3         62  
4 3     3   9 use warnings;
  3         4  
  3         52  
5              
6 3     3   287 use JMAP::Validation::Generators::String;
  3         5  
  3         53  
7 3     3   10 use JSON::Typist;
  3         4  
  3         306  
8              
9             sub generate {
10 3     3 0 66 my $blobId = 1;
11              
12 3         5 my @files;
13              
14 3         23 foreach my $type (JMAP::Validation::Generators::String->generate(), undef) {
15 6         2208 foreach my $name (JMAP::Validation::Generators::String->generate(), undef) {
16 12         212 foreach my $size (JSON::Typist::Number->new(int(rand(2**32))), undef) {
17 24         70 push @files, {
18             blobId => JMAP::Validation::Generators::String->generate(),
19             type => $type,
20             name => $name,
21             size => $size,
22             };
23              
24 24         748 $blobId++;
25             }
26             }
27             }
28              
29 3         13 return @files;
30             }
31              
32             1;