summaryrefslogtreecommitdiffstats
path: root/tests/codeigniter/core/Output_test.php
blob: 887c077d7eb95db1864d930e1052452a201d1c1b (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
<?php

class Output_test extends CI_TestCase {

	public $output;
	protected $_output_data = '';

	public function set_up()
	{
		$this->_output_data =<<<HTML
		<html>
			<head>
				<title>Basic HTML</title>
			</head>
			<body>
				Test
			</body>
		</html>
HTML;
		$this->ci_set_config('charset', 'UTF-8');
		$output = $this->ci_core_class('output');
		$this->output = new $output();
	}

	// --------------------------------------------------------------------

	public function test_set_get_append_output()
	{
		$append = "<!-- comment /-->\n";

		$this->assertEquals(
			$this->_output_data.$append,
			$this->output
				->set_output($this->_output_data)
				->append_output("<!-- comment /-->\n")
				->get_output()
		);
	}

	// --------------------------------------------------------------------

	public function test_get_content_type()
	{
		$this->assertEquals('text/html', $this->output->get_content_type());
	}

	// --------------------------------------------------------------------

	public function test_get_header()
	{
		$this->assertNull($this->output->get_header('Non-Existent-Header'));

		// TODO: Find a way to test header() values as well. Currently,
		//	 PHPUnit prevents this by not using output buffering.

		$this->output->set_content_type('text/plain', 'WINDOWS-1251');
		$this->assertEquals(
			'text/plain; charset=WINDOWS-1251',
			$this->output->get_header('content-type')
		);
	}

}