xref: /dokuwiki/_test/tests/inc/io_savefile.test.php (revision 369075828e13e37a65a2f8062a74e89f98dd3fac)
1*36907582SPatrick Brown<?php
2*36907582SPatrick Brown
3*36907582SPatrick Brownclass io_savefile_test extends DokuWikiTest {
4*36907582SPatrick Brown
5*36907582SPatrick Brown    /*
6*36907582SPatrick Brown     * dependency for tests needing zlib extension to pass
7*36907582SPatrick Brown     */
8*36907582SPatrick Brown    public function test_ext_zlib() {
9*36907582SPatrick Brown        if (!extension_loaded('zlib')) {
10*36907582SPatrick Brown            $this->markTestSkipped('skipping all zlib tests.  Need zlib extension');
11*36907582SPatrick Brown        }
12*36907582SPatrick Brown    }
13*36907582SPatrick Brown
14*36907582SPatrick Brown    /*
15*36907582SPatrick Brown     * dependency for tests needing zlib extension to pass
16*36907582SPatrick Brown     */
17*36907582SPatrick Brown    public function test_ext_bz2() {
18*36907582SPatrick Brown        if (!extension_loaded('bz2')) {
19*36907582SPatrick Brown            $this->markTestSkipped('skipping all bzip2 tests.  Need bz2 extension');
20*36907582SPatrick Brown        }
21*36907582SPatrick Brown    }
22*36907582SPatrick Brown
23*36907582SPatrick Brown    function _write($file){
24*36907582SPatrick Brown        $contents = "The\012Write\012Test\012";
25*36907582SPatrick Brown        $this->assertTrue(io_saveFile($file, $contents));
26*36907582SPatrick Brown        $this->assertEquals($contents, io_readFile($file));
27*36907582SPatrick Brown        $this->assertTrue(io_saveFile($file, $contents, true));
28*36907582SPatrick Brown        $this->assertEquals($contents.$contents, io_readFile($file));
29*36907582SPatrick Brown    }
30*36907582SPatrick Brown
31*36907582SPatrick Brown    function test_write(){
32*36907582SPatrick Brown        $this->_write(TMP_DIR.'/test.txt');
33*36907582SPatrick Brown    }
34*36907582SPatrick Brown
35*36907582SPatrick Brown    /**
36*36907582SPatrick Brown     * @depends test_ext_zlib
37*36907582SPatrick Brown     */
38*36907582SPatrick Brown    function test_gzwrite(){
39*36907582SPatrick Brown        $this->_write(TMP_DIR.'/test.txt.gz');
40*36907582SPatrick Brown    }
41*36907582SPatrick Brown
42*36907582SPatrick Brown    /**
43*36907582SPatrick Brown     * @depends test_ext_bz2
44*36907582SPatrick Brown     */
45*36907582SPatrick Brown    function test_bzwrite(){
46*36907582SPatrick Brown        $this->_write(TMP_DIR.'/test.txt.bz2');
47*36907582SPatrick Brown    }
48*36907582SPatrick Brown
49*36907582SPatrick Brown}
50