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   382 use strict;
  3         5  
  3         68  
4 3     3   8 use warnings;
  3         5  
  3         53  
5              
6 3     3   302 use JMAP::Validation::Generators::String;
  3         4  
  3         56  
7 3     3   27 use JSON::Typist;
  3         6  
  3         295  
8              
9             sub generate {
10 3     3 0 94 my $blobId = 1;
11              
12 3         5 my @files;
13              
14 3         26 foreach my $type (JMAP::Validation::Generators::String->generate(), undef) {
15 6         2537 foreach my $name (JMAP::Validation::Generators::String->generate(), undef) {
16 12         233 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         752 $blobId++;
25             }
26             }
27             }
28              
29 3         12 return @files;
30             }
31              
32             1;