From 486bd878323263db1cb8a8920e2663d3fb950a47 Mon Sep 17 00:00:00 2001
From: Jaime Perez Crespo <jaime.perez@uninett.no>
Date: Tue, 9 Feb 2016 11:28:02 +0100
Subject: [PATCH] Tests for SimpleSAML\Locale\Language::getLanguageList().

---
 tests/lib/SimpleSAML/Locale/LanguageTest.php | 27 +++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

diff --git a/tests/lib/SimpleSAML/Locale/LanguageTest.php b/tests/lib/SimpleSAML/Locale/LanguageTest.php
index 68aee869a..d6e6c815e 100644
--- a/tests/lib/SimpleSAML/Locale/LanguageTest.php
+++ b/tests/lib/SimpleSAML/Locale/LanguageTest.php
@@ -47,11 +47,36 @@ class LanguageTest extends \PHPUnit_Framework_TestCase
             'language.available' => array('xx', 'yy', 'zz'),
             'language.cookie.name' => 'xyz'
         ), '', 'simplesaml');
-        $_COOKIE['xyz'] = 'yy';
+        $_COOKIE['xyz'] = 'Yy'; // test values are converted to lowercase too
         $this->assertEquals('yy', Language::getLanguageCookie());
     }
 
 
+    /**
+     * Test SimpleSAML\Locale\Language::getLanguageList().
+     */
+    public function testGetLanguageList()
+    {
+        // test defaults
+        $c = \SimpleSAML_Configuration::loadFromArray(array(), '', 'simplesaml');
+        $l = new Language($c);
+        $l->setLanguage('en');
+        $this->assertEquals(array('en' => true), $l->getLanguageList());
+
+        // test non-defaults
+        $c = \SimpleSAML_Configuration::loadFromArray(array(
+            'language.available' => array('xx', 'yy', 'zz'),
+        ), '', 'simplesaml');
+        $l = new Language($c);
+        $l->setLanguage('yy');
+        $this->assertEquals(array(
+            'xx' => false,
+            'yy' => true,
+            'zz' => false,
+        ), $l->getLanguageList());
+    }
+
+
     /**
      * Test SimpleSAML\Locale\Language::getLanguageParameterName().
      */
-- 
GitLab