summaryrefslogtreecommitdiffstats
path: root/tests/codeigniter/helpers/inflector_helper_test.php
blob: e476f6dc83643c6dcf379ea6159bed506b7b5598 (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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?php

require_once(BASEPATH.'helpers/inflector_helper.php');

class Inflector_helper_test extends CI_TestCase {
	
	
	public function test_singular()
	{
		$strs = array(
			'tellies'		=> 'telly',
			'smellies'		=> 'smelly',
			'abjectnesses'	=> 'abjectness',
			'smells'		=> 'smell'
		);
		
		foreach ($strs as $str => $expect)
		{
			$this->assertEquals($expect, singular($str));
		}
	}
	
	// --------------------------------------------------------------------
	
	public function test_plural()
	{
		$strs = array(
			'telly'			=> 'tellies',
			'smelly'		=> 'smellies',
			'abjectness'	=> 'abjectnesses', // ref : http://en.wiktionary.org/wiki/abjectnesses
			'smell'			=> 'smells',
			'witch'			=> 'witches'
		);
		
		foreach ($strs as $str => $expect)
		{
			$this->assertEquals($expect, plural($str));
		}		
	}	

	// --------------------------------------------------------------------
	
	public function test_camelize()
	{
		$strs = array(
			'this is the string'	=> 'thisIsTheString',
			'this is another one'	=> 'thisIsAnotherOne',
			'i-am-playing-a-trick'	=> 'i-am-playing-a-trick',
			'what_do_you_think-yo?'	=> 'whatDoYouThink-yo?',
		);
		
		foreach ($strs as $str => $expect)
		{
			$this->assertEquals($expect, camelize($str));
		}
	}	

	// --------------------------------------------------------------------
	
	public function test_underscore()
	{
		$strs = array(
			'this is the string'	=> 'this_is_the_string',
			'this is another one'	=> 'this_is_another_one',
			'i-am-playing-a-trick'	=> 'i-am-playing-a-trick',
			'what_do_you_think-yo?'	=> 'what_do_you_think-yo?',
		);
		
		foreach ($strs as $str => $expect)
		{
			$this->assertEquals($expect, underscore($str));
		}
	}

	// --------------------------------------------------------------------
	
	public function test_humanize()
	{
		$strs = array(
			'this_is_the_string'	=> 'This Is The String',
			'this_is_another_one'	=> 'This Is Another One',
			'i-am-playing-a-trick'	=> 'I-am-playing-a-trick',
			'what_do_you_think-yo?'	=> 'What Do You Think-yo?',
		);
		
		foreach ($strs as $str => $expect)
		{
			$this->assertEquals($expect, humanize($str));
		}
	}
}