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   342 use strict;
  3         3  
  3         61  
4 3     3   8 use warnings;
  3         4  
  3         50  
5              
6 3     3   283 use JMAP::Validation::Generators::String;
  3         2  
  3         45  
7 3     3   8 use JSON::Typist;
  3         4  
  3         287  
8              
9             sub generate {
10 3     3 0 63 my $blobId = 1;
11              
12 3         5 my @files;
13              
14 3         21 foreach my $type (JMAP::Validation::Generators::String->generate(), undef) {
15 6         2221 foreach my $name (JMAP::Validation::Generators::String->generate(), undef) {
16 12         206 foreach my $size (JSON::Typist::Number->new(int(rand(2**32))), undef) {
17 24         64 push @files, {
18             blobId => JMAP::Validation::Generators::String->generate(),
19             type => $type,
20             name => $name,
21             size => $size,
22             };
23              
24 24         719 $blobId++;
25             }
26             }
27             }
28              
29 3         13 return @files;
30             }
31              
32             1;