--- /dev/null
+<?php
+/***************************************************************
+* Copyright notice
+*
+* (c) 2012 Andreas Lappe <a.lappe@kuehlhaus.com>, kuehlhaus AG
+*
+* All rights reserved
+*
+* This script is part of the TYPO3 project. The TYPO3 project is
+* free software; you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* The GNU General Public License can be found at
+* http://www.gnu.org/copyleft/gpl.html.
+*
+* This script is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* This copyright notice MUST APPEAR in all copies of the script!
+***************************************************************/
+
+/**
+ * Test case for class tx_form_System_Filter_Alphanumeric
+ *
+ * @author Andreas Lappe <a.lappe@kuehlhaus.com>
+ * @package TYPO3
+ * @subpackage form
+ */
+class tx_form_System_Filter_AlphanumericTest extends Tx_Extbase_BaseTestCase {
+ /**
+ * @var tx_form_System_Filter_Alphanumeric
+ */
+ protected $fixture = NULL;
+
+ public function setUp() {
+ $this->fixture = new tx_form_System_Filter_Alphanumeric();
+ }
+
+ public function tearDown() {
+ $this->fixture = NULL;
+ }
+
+ /**
+ * @test
+ */
+ public function filterForStringWithUnicodeCharactersAndSpacesReturnsInputString() {
+ $input = 'My name contains äøüöߨœ';
+
+ // This is default, but let's be explicit:
+ $this->fixture->setAllowWhiteSpace(TRUE);
+
+ $this->assertSame(
+ $input,
+ $this->fixture->filter($input)
+ );
+ }
+
+ /**
+ * @test
+ */
+ public function filterForStringWithUnicodeCharactersAndSpacesWithAllowWhitespaceSetToFalseReturnsInputStringWithoutSpaces() {
+ $input = 'My name contains äøüöߨœ';
+ $expected = 'Mynamecontainsäøüöߨœ';
+
+ $this->fixture->setAllowWhiteSpace(FALSE);
+
+ $this->assertSame($expected, $this->fixture->filter($input));
+ }
+
+ /**
+ * @test
+ */
+ public function filterAllowsNumericCharacters() {
+ $this->assertSame('foo23bar', $this->fixture->filter('foo23bar'));
+ }
+}
+?>
\ No newline at end of file