Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
9 / 9
100.00% covered (success)
100.00%
6 / 6
CRAP
100.00% covered (success)
100.00%
1 / 1
ApieFile
100.00% covered (success)
100.00%
9 / 9
100.00% covered (success)
100.00%
6 / 6
7
100.00% covered (success)
100.00%
1 / 1
 __construct
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 getName
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 get
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 getSize
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 getETag
100.00% covered (success)
100.00%
4 / 4
100.00% covered (success)
100.00%
1 / 1
2
 getContentType
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2namespace Apie\Webdav\Dav;
3
4use Apie\ApieFileSystem\Virtual\VirtualFileInterface;
5use Sabre\DAV\File;
6
7class ApieFile extends File
8{
9    public function __construct(private readonly VirtualFileInterface $file)
10    {
11    }
12
13    public function getName()
14    {
15        return $this->file->getName();
16    }
17
18    public function get()
19    {
20        return $this->file->getContents();
21    }
22
23    public function getSize()
24    {
25        return $this->file->getSize();
26    }
27
28    public function getETag()
29    {
30        $contents = $this->file->getContents();
31        if (is_string($contents)) {
32            return md5($contents);
33        }
34        return null;
35    }
36
37    public function getContentType()
38    {
39        return $this->file->getMimeType();
40    }
41}