summaryrefslogtreecommitdiff
path: root/ext/standard/tests/file/disk_free_space_basic.phpt
blob: 2b3e51c3fd34336e9ff8994d2c1652c9680d8750 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
--TEST--
Test disk_free_space and its alias diskfreespace() functions : basic functionality
--SKIPIF--
<?php
if (getenv("TRAVIS") === "true") die("skip inaccurate on TravisCI");
?>
--INI--
memory_limit=32M
--FILE--
<?php
/*
 *  Prototype: float disk_free_space( string directory )
 *  Description: Given a string containing a directory, this function
 *               will return the number of bytes available on the corresponding
 *               filesystem or disk partition
 */

$file_path = dirname(__FILE__);

echo "*** Testing with existing directory ***\n";
var_dump( disk_free_space($file_path) );
var_dump( diskfreespace($file_path) );

echo "*** Testing with newly created directory ***\n";
$dir = "/disk_free_space";
mkdir($file_path.$dir);
echo" \n Free Space before writing to a file\n";
$space1 =  disk_free_space($file_path.$dir);
var_dump( $space1 );

$fh = fopen($file_path.$dir."/disk_free_space.tmp", "a");
$data = str_repeat("x", 0xffff);
fwrite($fh, (binary)$data);
fclose($fh);

echo "\n Free Space after writing to a file\n";
$space2 =  disk_free_space($file_path.$dir);
var_dump( $space2 );

if($space1 > $space2 )
  echo "\n Free Space Value Is Correct\n";
else {
  echo "\n Free Space Value Is Incorrect\n";
  var_dump($space1, $space2);
}

echo "*** Testing with Binary Input ***\n";
var_dump( disk_free_space(b"$file_path") );

echo"\n--- Done ---";
?>
--CLEAN--
<?php
$file_path = dirname(__FILE__);
unlink($file_path."/disk_free_space/disk_free_space.tmp");
rmdir($file_path."/disk_free_space");
?>
--EXPECTF--
*** Testing with existing directory ***
float(%d)
float(%d)
*** Testing with newly created directory ***
 
 Free Space before writing to a file
float(%d)

 Free Space after writing to a file
float(%d)

 Free Space Value Is Correct
*** Testing with Binary Input ***
float(%d)

--- Done ---