aboutsummaryrefslogtreecommitdiffstats
path: root/tests/autoname_test.php
blob: 702e05befc33ff210cfe3297f07cf0036a408cf5 (plain) (blame)
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
75
76
<?php
/**
 * this file contains tests for the autoname function
 * 
 * @package test.util
 */

/** required, it is the file under test */
require_once('include/text.php');

/**
 * TestCase for the autoname function
 * 
 * @author Alexander Kampmann
 * @package test.util
 */
class AutonameTest extends PHPUnit_Framework_TestCase {
	/**
	 *autonames should be random, even length
	 */
	public function testAutonameEven() {
		$autoname1=autoname(10);
		$autoname2=autoname(10);
	
		$this->assertNotEquals($autoname1, $autoname2);
	}
	
	/**
	 *autonames should be random, odd length
	 */
	public function testAutonameOdd() {
		$autoname1=autoname(9);
		$autoname2=autoname(9);
	
		$this->assertNotEquals($autoname1, $autoname2);
	}
	
	/**
	 * try to fail autonames
	 */
	public function testAutonameNoLength() {
		$autoname1=autoname(0);
		$this->assertEquals(0, strlen($autoname1));
	}
	
	/**
	 * try to fail it with invalid input
	 * 
	 * TODO: What's corect behaviour here? An exception?
	 */
	public function testAutonameNegativeLength() {
		$autoname1=autoname(-23);
		$this->assertEquals(0, strlen($autoname1));
	}
	
	// 	public function testAutonameMaxLength() {
	// 		$autoname2=autoname(PHP_INT_MAX);
	// 		$this->assertEquals(PHP_INT_MAX, count($autoname2));
	// 	}
	
	/**
	 * test with a length, that may be too short
	 */
	public function testAutonameLength1() {
		$autoname1=autoname(1);
		$this->assertEquals(1, count($autoname1));
		
		$autoname2=autoname(1);
		$this->assertEquals(1, count($autoname2));

		// The following test is problematic, with only 26 possibilities
		// generating the same thing twice happens often aka
		// birthday paradox
//		$this->assertFalse($autoname1==$autoname2); 
	}
}