From 606d82f7dd03da2646333c9ca868071b3e47a970 Mon Sep 17 00:00:00 2001 From: Matt Friedman Date: Sat, 5 Jul 2014 00:57:34 -0700 Subject: [ticket/12812] Add a migrator tool for config_text database changes PHPBB3-12812 --- tests/dbal/migrator_tool_config_text_test.php | 79 +++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 tests/dbal/migrator_tool_config_text_test.php (limited to 'tests/dbal/migrator_tool_config_text_test.php') diff --git a/tests/dbal/migrator_tool_config_text_test.php b/tests/dbal/migrator_tool_config_text_test.php new file mode 100644 index 0000000000..b530bb92dd --- /dev/null +++ b/tests/dbal/migrator_tool_config_text_test.php @@ -0,0 +1,79 @@ + +* @license GNU General Public License, version 2 (GPL-2.0) +* +* For full copyright and license information, please see +* the docs/CREDITS.txt file. +* +*/ + +class phpbb_dbal_migrator_tool_config_text_test extends phpbb_database_test_case +{ + public function getDataSet() + { + return $this->createXMLDataSet(dirname(__FILE__).'/fixtures/migrator_config_text.xml'); + } + + public function setup() + { + global $db; + + parent::setup(); + + $db = $this->db = $this->new_dbal(); + $this->config_text = new \phpbb\config\db_text($this->db, 'phpbb_config_text'); + + $this->tool = new \phpbb\db\migration\tool\config_text($this->config_text); + } + + public function test_add() + { + $this->tool->add('foo', 'bar'); + $this->assertEquals('bar', $this->config_text->get('foo')); + } + + public function test_add_twice() + { + $this->tool->add('foo', 'bar'); + $this->assertEquals('bar', $this->config_text->get('foo')); + + $this->tool->add('foo', 'bar2'); + $this->assertEquals('bar', $this->config_text->get('foo')); + } + + public function test_update() + { + $this->config_text->set('foo', 'bar'); + + $this->tool->update('foo', 'bar2'); + $this->assertEquals('bar2', $this->config_text->get('foo')); + } + + public function test_remove() + { + $this->config_text->set('foo', 'bar'); + + $this->tool->remove('foo'); + $this->assertTrue(is_null($this->config_text->get('foo'))); + } + + public function test_reverse_add() + { + $this->config_text->set('foo', 'bar'); + + $this->tool->reverse('add', 'foo'); + $this->assertTrue(is_null($this->config_text->get('foo'))); + } + + public function test_reverse_remove() + { + $this->config_text->delete('foo'); + + $this->tool->reverse('remove', 'foo'); + $this->assertEquals('', $this->config_text->get('foo')); + } +} -- cgit v1.2.1