xref: /dokuwiki/_test/tests/inc/io_getSizeFile.test.php (revision 1bff2abab47a9f8dec5518d13a0e05c44e093c6c)
1f549be3dSGerrit Uitslag<?php
2f549be3dSGerrit Uitslag
3f549be3dSGerrit Uitslagclass io_getSizeFile_test extends DokuWikiTest {
4f549be3dSGerrit Uitslag
5f549be3dSGerrit Uitslag    /*
6f549be3dSGerrit Uitslag     * dependency for tests needing zlib extension to pass
7f549be3dSGerrit Uitslag     */
8f549be3dSGerrit Uitslag    public function test_ext_zlib() {
9f549be3dSGerrit Uitslag        if (!DOKU_HAS_GZIP) {
10f549be3dSGerrit Uitslag            $this->markTestSkipped('skipping all zlib tests.  Need zlib extension');
11f549be3dSGerrit Uitslag        }
12*1bff2abaSAndreas Gohr        $this->assertTrue(true); // avoid being marked as risky for having no assertion
13f549be3dSGerrit Uitslag    }
14f549be3dSGerrit Uitslag
15f549be3dSGerrit Uitslag    /*
16f549be3dSGerrit Uitslag     * dependency for tests needing zlib extension to pass
17f549be3dSGerrit Uitslag     */
18f549be3dSGerrit Uitslag    public function test_ext_bz2() {
19f549be3dSGerrit Uitslag        if (!DOKU_HAS_BZIP) {
20f549be3dSGerrit Uitslag            $this->markTestSkipped('skipping all bzip2 tests.  Need bz2 extension');
21f549be3dSGerrit Uitslag        }
22*1bff2abaSAndreas Gohr        $this->assertTrue(true); // avoid being marked as risky for having no assertion
23f549be3dSGerrit Uitslag    }
24f549be3dSGerrit Uitslag
25f549be3dSGerrit Uitslag    function test_plain(){
26f549be3dSGerrit Uitslag        // since git converts line endings, we can't check in this test file but have to create it ourselves
27f549be3dSGerrit Uitslag        $plain = TMP_DIR.'/test.txt';
28f549be3dSGerrit Uitslag        file_put_contents($plain, "The\015\012Test\015\012");
29f549be3dSGerrit Uitslag
30f549be3dSGerrit Uitslag        $this->assertEquals(11, io_getSizeFile($plain));
31f549be3dSGerrit Uitslag        $this->assertEquals(0, io_getSizeFile(__DIR__.'/io_readfile/nope.txt'));
32f549be3dSGerrit Uitslag        $plain_mb = TMP_DIR.'/test.txt';
33f549be3dSGerrit Uitslag        io_saveFile($plain_mb, "string with utf-8 chars åèö - doo-bee doo-bee dooh\012");
34f549be3dSGerrit Uitslag        $this->assertEquals(54, io_getSizeFile($plain_mb));
35f549be3dSGerrit Uitslag    }
36f549be3dSGerrit Uitslag
37f549be3dSGerrit Uitslag    /**
38f549be3dSGerrit Uitslag     * @depends test_ext_zlib
39f549be3dSGerrit Uitslag     */
40f549be3dSGerrit Uitslag    function test_gzfiles(){
41f549be3dSGerrit Uitslag        $this->assertEquals(11, io_getSizeFile(__DIR__.'/io_readfile/test.txt.gz'));
42f549be3dSGerrit Uitslag        $this->assertEquals(0, io_getSizeFile(__DIR__.'/io_readfile/nope.txt.gz'));
43f549be3dSGerrit Uitslag        $this->assertEquals(11, io_getSizeFile(__DIR__.'/io_readfile/corrupt.txt.gz'));
44f549be3dSGerrit Uitslag        $gz_mb = TMP_DIR.'/test.txt.gz';
45f549be3dSGerrit Uitslag        io_saveFile($gz_mb, "string with utf-8 chars åèö - doo-bee doo-bee dooh\012");
46f549be3dSGerrit Uitslag        $this->assertEquals(54, io_getSizeFile($gz_mb));
47f549be3dSGerrit Uitslag    }
48f549be3dSGerrit Uitslag
49f549be3dSGerrit Uitslag    /**
50f549be3dSGerrit Uitslag     * @depends test_ext_bz2
51f549be3dSGerrit Uitslag     */
52f549be3dSGerrit Uitslag    function test_bzfiles(){
53f549be3dSGerrit Uitslag
54f549be3dSGerrit Uitslag        $this->assertEquals(11, io_getSizeFile(__DIR__.'/io_readfile/test.txt.bz2'));
55f549be3dSGerrit Uitslag        $this->assertEquals(0, io_getSizeFile(__DIR__.'/io_readfile/nope.txt.bz2'));
56f549be3dSGerrit Uitslag        $this->assertEquals(0, io_getSizeFile(__DIR__.'/io_readfile/corrupt.txt.bz2'));
57f549be3dSGerrit Uitslag        $this->assertEquals(9720, io_getSizeFile(__DIR__.'/io_readfile/large.txt.bz2'));
58f549be3dSGerrit Uitslag        $this->assertEquals(17780, io_getSizeFile(__DIR__.'/io_readfile/long.txt.bz2'));
59f549be3dSGerrit Uitslag        $bz_mb = TMP_DIR.'/test.txt.bz2';
60f549be3dSGerrit Uitslag        io_saveFile($bz_mb, "string with utf-8 chars åèö - doo-bee doo-bee dooh\012");
61f549be3dSGerrit Uitslag        $this->assertEquals(54, io_getSizeFile($bz_mb));
62f549be3dSGerrit Uitslag    }
63f549be3dSGerrit Uitslag
64f549be3dSGerrit Uitslag}
65