<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>MimeHelperTest xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../../../testapidocs/org/apache/chemistry/opencmis/commons/impl/misc/MimeHelperTest.html">View Javadoc</a></div><pre>

<a class="jxr_linenumber" name="1" href="#1">1</a>   <em class="jxr_comment">/*</em>
<a class="jxr_linenumber" name="2" href="#2">2</a>   <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one</em>
<a class="jxr_linenumber" name="3" href="#3">3</a>   <em class="jxr_comment"> * or more contributor license agreements.  See the NOTICE file</em>
<a class="jxr_linenumber" name="4" href="#4">4</a>   <em class="jxr_comment"> * distributed with this work for additional information</em>
<a class="jxr_linenumber" name="5" href="#5">5</a>   <em class="jxr_comment"> * regarding copyright ownership.  The ASF licenses this file</em>
<a class="jxr_linenumber" name="6" href="#6">6</a>   <em class="jxr_comment"> * to you under the Apache License, Version 2.0 (the</em>
<a class="jxr_linenumber" name="7" href="#7">7</a>   <em class="jxr_comment"> * "License"); you may not use this file except in compliance</em>
<a class="jxr_linenumber" name="8" href="#8">8</a>   <em class="jxr_comment"> * with the License.  You may obtain a copy of the License at</em>
<a class="jxr_linenumber" name="9" href="#9">9</a>   <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="10" href="#10">10</a>  <em class="jxr_comment"> * <a href="http://www.apache.org/licenses/LICENSE-2.0" target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.0</a></em>
<a class="jxr_linenumber" name="11" href="#11">11</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="12" href="#12">12</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing,</em>
<a class="jxr_linenumber" name="13" href="#13">13</a>  <em class="jxr_comment"> * software distributed under the License is distributed on an</em>
<a class="jxr_linenumber" name="14" href="#14">14</a>  <em class="jxr_comment"> * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a class="jxr_linenumber" name="15" href="#15">15</a>  <em class="jxr_comment"> * KIND, either express or implied.  See the License for the</em>
<a class="jxr_linenumber" name="16" href="#16">16</a>  <em class="jxr_comment"> * specific language governing permissions and limitations</em>
<a class="jxr_linenumber" name="17" href="#17">17</a>  <em class="jxr_comment"> * under the License.</em>
<a class="jxr_linenumber" name="18" href="#18">18</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="19" href="#19">19</a>  <em class="jxr_comment"> * Contributors:</em>
<a class="jxr_linenumber" name="20" href="#20">20</a>  <em class="jxr_comment"> *     Florent Guillaume</em>
<a class="jxr_linenumber" name="21" href="#21">21</a>  <em class="jxr_comment"> */</em>
<a class="jxr_linenumber" name="22" href="#22">22</a>  <strong class="jxr_keyword">package</strong> org.apache.chemistry.opencmis.commons.impl.misc;
<a class="jxr_linenumber" name="23" href="#23">23</a>  
<a class="jxr_linenumber" name="24" href="#24">24</a>  <strong class="jxr_keyword">import</strong> <strong class="jxr_keyword">static</strong> org.apache.chemistry.opencmis.commons.impl.MimeHelper.decodeContentDisposition;
<a class="jxr_linenumber" name="25" href="#25">25</a>  <strong class="jxr_keyword">import</strong> <strong class="jxr_keyword">static</strong> org.apache.chemistry.opencmis.commons.impl.MimeHelper.decodeContentDispositionFilename;
<a class="jxr_linenumber" name="26" href="#26">26</a>  <strong class="jxr_keyword">import</strong> <strong class="jxr_keyword">static</strong> org.apache.chemistry.opencmis.commons.impl.MimeHelper.encodeContentDisposition;
<a class="jxr_linenumber" name="27" href="#27">27</a>  <strong class="jxr_keyword">import</strong> <strong class="jxr_keyword">static</strong> org.apache.chemistry.opencmis.commons.impl.MimeHelper.getBoundaryFromMultiPart;
<a class="jxr_linenumber" name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> <strong class="jxr_keyword">static</strong> org.apache.chemistry.opencmis.commons.impl.MimeHelper.getChallengesFromAuthenticateHeader;
<a class="jxr_linenumber" name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> <strong class="jxr_keyword">static</strong> org.apache.chemistry.opencmis.commons.impl.MimeHelper.getCharsetFromContentType;
<a class="jxr_linenumber" name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> <strong class="jxr_keyword">static</strong> org.junit.Assert.assertArrayEquals;
<a class="jxr_linenumber" name="31" href="#31">31</a>  
<a class="jxr_linenumber" name="32" href="#32">32</a>  <strong class="jxr_keyword">import</strong> java.util.Collections;
<a class="jxr_linenumber" name="33" href="#33">33</a>  <strong class="jxr_keyword">import</strong> java.util.HashMap;
<a class="jxr_linenumber" name="34" href="#34">34</a>  <strong class="jxr_keyword">import</strong> java.util.Map;
<a class="jxr_linenumber" name="35" href="#35">35</a>  
<a class="jxr_linenumber" name="36" href="#36">36</a>  <strong class="jxr_keyword">import</strong> junit.framework.TestCase;
<a class="jxr_linenumber" name="37" href="#37">37</a>  
<a class="jxr_linenumber" name="38" href="#38">38</a>  <strong class="jxr_keyword">import</strong> org.apache.chemistry.opencmis.commons.impl.IOUtils;
<a class="jxr_linenumber" name="39" href="#39">39</a>  <strong class="jxr_keyword">import</strong> org.junit.Test;
<a class="jxr_linenumber" name="40" href="#40">40</a>  
<a class="jxr_linenumber" name="41" href="#41">41</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../../../org/apache/chemistry/opencmis/commons/impl/misc/MimeHelperTest.html">MimeHelperTest</a> <strong class="jxr_keyword">extends</strong> TestCase {
<a class="jxr_linenumber" name="42" href="#42">42</a>  
<a class="jxr_linenumber" name="43" href="#43">43</a>      @Test
<a class="jxr_linenumber" name="44" href="#44">44</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncodeContentDisposition() {
<a class="jxr_linenumber" name="45" href="#45">45</a>          assertEquals(<span class="jxr_string">"inline; filename=foo.bar"</span>, encodeContentDisposition(<span class="jxr_string">"inline"</span>, <span class="jxr_string">"foo.bar"</span>));
<a class="jxr_linenumber" name="46" href="#46">46</a>          assertEquals(<span class="jxr_string">"attachment; filename=foo.bar"</span>, encodeContentDisposition(<strong class="jxr_keyword">null</strong>, <span class="jxr_string">"foo.bar"</span>));
<a class="jxr_linenumber" name="47" href="#47">47</a>          assertEquals(<span class="jxr_string">"attachment; filename*=UTF-8''caf%C3%A9.pdf"</span>, encodeContentDisposition(<strong class="jxr_keyword">null</strong>, <span class="jxr_string">"caf\u00e9.pdf"</span>));
<a class="jxr_linenumber" name="48" href="#48">48</a>          assertEquals(<span class="jxr_string">"attachment; filename*=UTF-8''%20%27%2A%25%20abc%20%C2%81%C2%82%0D%0A%09"</span>,
<a class="jxr_linenumber" name="49" href="#49">49</a>                  encodeContentDisposition(<strong class="jxr_keyword">null</strong>, <span class="jxr_string">" '*% abc \u0081\u0082\r\n\t"</span>));
<a class="jxr_linenumber" name="50" href="#50">50</a>      }
<a class="jxr_linenumber" name="51" href="#51">51</a>  
<a class="jxr_linenumber" name="52" href="#52">52</a>      @Test
<a class="jxr_linenumber" name="53" href="#53">53</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testDecodeContentDisposition() {
<a class="jxr_linenumber" name="54" href="#54">54</a>          Map&lt;String, String&gt; params = <strong class="jxr_keyword">new</strong> HashMap&lt;String, String&gt;();
<a class="jxr_linenumber" name="55" href="#55">55</a>          Map&lt;String, String&gt; expected = <strong class="jxr_keyword">new</strong> HashMap&lt;String, String&gt;();
<a class="jxr_linenumber" name="56" href="#56">56</a>  
<a class="jxr_linenumber" name="57" href="#57">57</a>          assertEquals(<span class="jxr_string">"attachment"</span>, decodeContentDisposition(<span class="jxr_string">"attachment; a=b; c=d"</span>, params));
<a class="jxr_linenumber" name="58" href="#58">58</a>          expected.put(<span class="jxr_string">"a"</span>, <span class="jxr_string">"b"</span>);
<a class="jxr_linenumber" name="59" href="#59">59</a>          expected.put(<span class="jxr_string">"c"</span>, <span class="jxr_string">"d"</span>);
<a class="jxr_linenumber" name="60" href="#60">60</a>          assertEquals(expected, params);
<a class="jxr_linenumber" name="61" href="#61">61</a>          params.clear();
<a class="jxr_linenumber" name="62" href="#62">62</a>          expected.clear();
<a class="jxr_linenumber" name="63" href="#63">63</a>  
<a class="jxr_linenumber" name="64" href="#64">64</a>          assertEquals(<span class="jxr_string">"inline"</span>, decodeContentDisposition(<span class="jxr_string">"  inline ; a = \&quot;b b\&quot; (this is a comment) ; c =d;"</span>, params));
<a class="jxr_linenumber" name="65" href="#65">65</a>          expected.put(<span class="jxr_string">"a"</span>, <span class="jxr_string">"b b"</span>);
<a class="jxr_linenumber" name="66" href="#66">66</a>          expected.put(<span class="jxr_string">"c"</span>, <span class="jxr_string">"d"</span>);
<a class="jxr_linenumber" name="67" href="#67">67</a>          assertEquals(expected, params);
<a class="jxr_linenumber" name="68" href="#68">68</a>          params.clear();
<a class="jxr_linenumber" name="69" href="#69">69</a>          expected.clear();
<a class="jxr_linenumber" name="70" href="#70">70</a>  
<a class="jxr_linenumber" name="71" href="#71">71</a>          assertEquals(<span class="jxr_string">"inline"</span>,
<a class="jxr_linenumber" name="72" href="#72">72</a>                  decodeContentDisposition(<span class="jxr_string">"inline; modification-date=\&quot;Wed, 12 Feb 1997 16:29:51 -0500\&quot;"</span>, params));
<a class="jxr_linenumber" name="73" href="#73">73</a>          assertEquals(Collections.singletonMap(<span class="jxr_string">"modification-date"</span>, <span class="jxr_string">"Wed, 12 Feb 1997 16:29:51 -0500"</span>), params);
<a class="jxr_linenumber" name="74" href="#74">74</a>          params.clear();
<a class="jxr_linenumber" name="75" href="#75">75</a>      }
<a class="jxr_linenumber" name="76" href="#76">76</a>  
<a class="jxr_linenumber" name="77" href="#77">77</a>      @Test
<a class="jxr_linenumber" name="78" href="#78">78</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testDecodeContentDispositionFilename() {
<a class="jxr_linenumber" name="79" href="#79">79</a>          assertNull(decodeContentDispositionFilename(<span class="jxr_string">"attachment; a=b; c=d;"</span>));
<a class="jxr_linenumber" name="80" href="#80">80</a>          assertNull(decodeContentDispositionFilename(<span class="jxr_string">"inline"</span>));
<a class="jxr_linenumber" name="81" href="#81">81</a>          assertNull(decodeContentDispositionFilename(<span class="jxr_string">"inline; modification-date=\&quot;Wed, 12 Feb 1997 16:29:51 -0500\&quot;"</span>));
<a class="jxr_linenumber" name="82" href="#82">82</a>          assertEquals(<span class="jxr_string">"foo.bar"</span>, decodeContentDispositionFilename(<span class="jxr_string">"attachment; filename=foo.bar"</span>));
<a class="jxr_linenumber" name="83" href="#83">83</a>          assertEquals(<span class="jxr_string">"foo.bar"</span>, decodeContentDispositionFilename(<span class="jxr_string">"attachment; filename = \&quot;foo.bar\&quot;"</span>));
<a class="jxr_linenumber" name="84" href="#84">84</a>          assertEquals(<span class="jxr_string">"foo.bar"</span>,
<a class="jxr_linenumber" name="85" href="#85">85</a>                  decodeContentDispositionFilename(<span class="jxr_string">" guess ; filename = (this is rfc822 a comment) \&quot;foo.bar\&quot;"</span>));
<a class="jxr_linenumber" name="86" href="#86">86</a>          assertEquals(<span class="jxr_string">"caf\u00e9.pdf"</span>, decodeContentDispositionFilename(<span class="jxr_string">"foo; filename*=UTF-8''caf%C3%A9.pdf"</span>));
<a class="jxr_linenumber" name="87" href="#87">87</a>          assertEquals(<span class="jxr_string">"caf\u00e9.pdf"</span>, decodeContentDispositionFilename(<span class="jxr_string">"bar; filename*=ISO-8859-1''caf%E9.pdf"</span>));
<a class="jxr_linenumber" name="88" href="#88">88</a>          assertEquals(<span class="jxr_string">"flask-docs.pdf"</span>,
<a class="jxr_linenumber" name="89" href="#89">89</a>                  decodeContentDispositionFilename(<span class="jxr_string">"attachment; filename*=UTF-8''%66%6c%61%73%6b%2d%64%6f%63%73.pdf;"</span>
<a class="jxr_linenumber" name="90" href="#90">90</a>                          + <span class="jxr_string">" size=893099; creation-date=Mon, 12 Aug 2013 22:02:54 -0700;"</span>
<a class="jxr_linenumber" name="91" href="#91">91</a>                          + <span class="jxr_string">" modification-date=Mon, 12 Aug 2013 22:02:55 -0700;"</span>));
<a class="jxr_linenumber" name="92" href="#92">92</a>      }
<a class="jxr_linenumber" name="93" href="#93">93</a>  
<a class="jxr_linenumber" name="94" href="#94">94</a>      @Test
<a class="jxr_linenumber" name="95" href="#95">95</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testCharsetFromContentType() {
<a class="jxr_linenumber" name="96" href="#96">96</a>          assertEquals(<span class="jxr_string">"utf-8"</span>, getCharsetFromContentType(<span class="jxr_string">"text/plain;charset=utf-8"</span>));
<a class="jxr_linenumber" name="97" href="#97">97</a>          assertEquals(<span class="jxr_string">"utf-8"</span>, getCharsetFromContentType(<span class="jxr_string">"text/plain;charset=\&quot;utf-8\&quot;"</span>));
<a class="jxr_linenumber" name="98" href="#98">98</a>          assertEquals(<span class="jxr_string">"utf-8"</span>, getCharsetFromContentType(<span class="jxr_string">"text/plain  ;  charset    =    \&quot;utf-8\&quot;   "</span>));
<a class="jxr_linenumber" name="99" href="#99">99</a>      }
<a class="jxr_linenumber" name="100" href="#100">100</a> 
<a class="jxr_linenumber" name="101" href="#101">101</a>     @Test
<a class="jxr_linenumber" name="102" href="#102">102</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testBoundaryFromMultiPart() <strong class="jxr_keyword">throws</strong> Exception {
<a class="jxr_linenumber" name="103" href="#103">103</a>         byte boundary[] = <span class="jxr_string">"thisisaBoundary"</span>.getBytes(IOUtils.ISO_8859_1);
<a class="jxr_linenumber" name="104" href="#104">104</a> 
<a class="jxr_linenumber" name="105" href="#105">105</a>         assertNull(getBoundaryFromMultiPart(<span class="jxr_string">"multipart/form-data"</span>));
<a class="jxr_linenumber" name="106" href="#106">106</a>         assertArrayEquals(boundary, getBoundaryFromMultiPart(<span class="jxr_string">"multipart/form-data;boundary="</span>
<a class="jxr_linenumber" name="107" href="#107">107</a>                 + <strong class="jxr_keyword">new</strong> String(boundary, IOUtils.ISO_8859_1)));
<a class="jxr_linenumber" name="108" href="#108">108</a>     }
<a class="jxr_linenumber" name="109" href="#109">109</a> 
<a class="jxr_linenumber" name="110" href="#110">110</a>     @Test
<a class="jxr_linenumber" name="111" href="#111">111</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testAuthenticateHeaderParameters() {
<a class="jxr_linenumber" name="112" href="#112">112</a>         Map&lt;String, Map&lt;String, String&gt;&gt; challenges = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="113" href="#113">113</a> 
<a class="jxr_linenumber" name="114" href="#114">114</a>         challenges = getChallengesFromAuthenticateHeader(<strong class="jxr_keyword">null</strong>);
<a class="jxr_linenumber" name="115" href="#115">115</a>         assertNull(challenges);
<a class="jxr_linenumber" name="116" href="#116">116</a> 
<a class="jxr_linenumber" name="117" href="#117">117</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">""</span>);
<a class="jxr_linenumber" name="118" href="#118">118</a>         assertNull(challenges);
<a class="jxr_linenumber" name="119" href="#119">119</a> 
<a class="jxr_linenumber" name="120" href="#120">120</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"Basic"</span>);
<a class="jxr_linenumber" name="121" href="#121">121</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="122" href="#122">122</a>         assertTrue(challenges.containsKey(<span class="jxr_string">"basic"</span>));
<a class="jxr_linenumber" name="123" href="#123">123</a>         assertTrue(challenges.get(<span class="jxr_string">"basic"</span>).isEmpty());
<a class="jxr_linenumber" name="124" href="#124">124</a> 
<a class="jxr_linenumber" name="125" href="#125">125</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"Basic realm=\&quot;example\&quot;"</span>);
<a class="jxr_linenumber" name="126" href="#126">126</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="127" href="#127">127</a>         assertTrue(challenges.containsKey(<span class="jxr_string">"basic"</span>));
<a class="jxr_linenumber" name="128" href="#128">128</a>         assertEquals(<span class="jxr_string">"example"</span>, challenges.get(<span class="jxr_string">"basic"</span>).get(<span class="jxr_string">"realm"</span>));
<a class="jxr_linenumber" name="129" href="#129">129</a> 
<a class="jxr_linenumber" name="130" href="#130">130</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"Basic realm= \&quot;example\&quot; "</span>);
<a class="jxr_linenumber" name="131" href="#131">131</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="132" href="#132">132</a>         assertTrue(challenges.containsKey(<span class="jxr_string">"basic"</span>));
<a class="jxr_linenumber" name="133" href="#133">133</a>         assertEquals(<span class="jxr_string">"example"</span>, challenges.get(<span class="jxr_string">"basic"</span>).get(<span class="jxr_string">"realm"</span>));
<a class="jxr_linenumber" name="134" href="#134">134</a> 
<a class="jxr_linenumber" name="135" href="#135">135</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"Basic realm=example"</span>);
<a class="jxr_linenumber" name="136" href="#136">136</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="137" href="#137">137</a>         assertTrue(challenges.containsKey(<span class="jxr_string">"basic"</span>));
<a class="jxr_linenumber" name="138" href="#138">138</a>         assertEquals(<span class="jxr_string">"example"</span>, challenges.get(<span class="jxr_string">"basic"</span>).get(<span class="jxr_string">"realm"</span>));
<a class="jxr_linenumber" name="139" href="#139">139</a> 
<a class="jxr_linenumber" name="140" href="#140">140</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"Basic realm=\&quot;example\&quot;,charset=\&quot;UTF-8\&quot;"</span>);
<a class="jxr_linenumber" name="141" href="#141">141</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="142" href="#142">142</a>         assertTrue(challenges.containsKey(<span class="jxr_string">"basic"</span>));
<a class="jxr_linenumber" name="143" href="#143">143</a>         assertEquals(<span class="jxr_string">"example"</span>, challenges.get(<span class="jxr_string">"basic"</span>).get(<span class="jxr_string">"realm"</span>));
<a class="jxr_linenumber" name="144" href="#144">144</a>         assertEquals(<span class="jxr_string">"UTF-8"</span>, challenges.get(<span class="jxr_string">"basic"</span>).get(<span class="jxr_string">"charset"</span>));
<a class="jxr_linenumber" name="145" href="#145">145</a> 
<a class="jxr_linenumber" name="146" href="#146">146</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"Bearer realm=\&quot;example\&quot;, error=\&quot;invalid_token\&quot;"</span>);
<a class="jxr_linenumber" name="147" href="#147">147</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="148" href="#148">148</a>         assertTrue(challenges.containsKey(<span class="jxr_string">"bearer"</span>));
<a class="jxr_linenumber" name="149" href="#149">149</a>         assertEquals(<span class="jxr_string">"example"</span>, challenges.get(<span class="jxr_string">"bearer"</span>).get(<span class="jxr_string">"realm"</span>));
<a class="jxr_linenumber" name="150" href="#150">150</a>         assertEquals(<span class="jxr_string">"invalid_token"</span>, challenges.get(<span class="jxr_string">"bearer"</span>).get(<span class="jxr_string">"error"</span>));
<a class="jxr_linenumber" name="151" href="#151">151</a> 
<a class="jxr_linenumber" name="152" href="#152">152</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"Bearer realm=\&quot;example\&quot;, error=invalid_token"</span>);
<a class="jxr_linenumber" name="153" href="#153">153</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="154" href="#154">154</a>         assertEquals(<span class="jxr_string">"example"</span>, challenges.get(<span class="jxr_string">"bearer"</span>).get(<span class="jxr_string">"realm"</span>));
<a class="jxr_linenumber" name="155" href="#155">155</a>         assertEquals(<span class="jxr_string">"invalid_token"</span>, challenges.get(<span class="jxr_string">"bearer"</span>).get(<span class="jxr_string">"error"</span>));
<a class="jxr_linenumber" name="156" href="#156">156</a> 
<a class="jxr_linenumber" name="157" href="#157">157</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"Bearer realm=\&quot;example\&quot;, error=\&quot;invalid_token\&quot;, error_description=\&quot;The access token expired\&quot;"</span>);
<a class="jxr_linenumber" name="158" href="#158">158</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="159" href="#159">159</a>         assertEquals(<span class="jxr_string">"example"</span>, challenges.get(<span class="jxr_string">"bearer"</span>).get(<span class="jxr_string">"realm"</span>));
<a class="jxr_linenumber" name="160" href="#160">160</a>         assertEquals(<span class="jxr_string">"invalid_token"</span>, challenges.get(<span class="jxr_string">"bearer"</span>).get(<span class="jxr_string">"error"</span>));
<a class="jxr_linenumber" name="161" href="#161">161</a>         assertEquals(<span class="jxr_string">"The access token expired"</span>, challenges.get(<span class="jxr_string">"bearer"</span>).get(<span class="jxr_string">"error_description"</span>));
<a class="jxr_linenumber" name="162" href="#162">162</a> 
<a class="jxr_linenumber" name="163" href="#163">163</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"Bearer realm=\&quot;example\&quot;,error_description=\&quot;It's expires, really!\&quot;, error=\&quot;invalid_token\&quot;,"</span>);
<a class="jxr_linenumber" name="164" href="#164">164</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="165" href="#165">165</a>         assertEquals(<span class="jxr_string">"example"</span>, challenges.get(<span class="jxr_string">"bearer"</span>).get(<span class="jxr_string">"realm"</span>));
<a class="jxr_linenumber" name="166" href="#166">166</a>         assertEquals(<span class="jxr_string">"invalid_token"</span>, challenges.get(<span class="jxr_string">"bearer"</span>).get(<span class="jxr_string">"error"</span>));
<a class="jxr_linenumber" name="167" href="#167">167</a>         assertEquals(<span class="jxr_string">"It's expires, really!"</span>, challenges.get(<span class="jxr_string">"bearer"</span>).get(<span class="jxr_string">"error_description"</span>));
<a class="jxr_linenumber" name="168" href="#168">168</a> 
<a class="jxr_linenumber" name="169" href="#169">169</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"Newauth realm=\&quot;apps\&quot;, type=1, title=\&quot;Login to &#92;&#92;\&quot;apps&#92;&#92;\&quot;\&quot;, Basic realm=\&quot;simple\&quot;"</span>);
<a class="jxr_linenumber" name="170" href="#170">170</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="171" href="#171">171</a>         assertEquals(<span class="jxr_string">"apps"</span>, challenges.get(<span class="jxr_string">"newauth"</span>).get(<span class="jxr_string">"realm"</span>));
<a class="jxr_linenumber" name="172" href="#172">172</a>         assertEquals(<span class="jxr_string">"1"</span>, challenges.get(<span class="jxr_string">"newauth"</span>).get(<span class="jxr_string">"type"</span>));
<a class="jxr_linenumber" name="173" href="#173">173</a>         assertEquals(<span class="jxr_string">"Login to \&quot;apps\&quot;"</span>, challenges.get(<span class="jxr_string">"newauth"</span>).get(<span class="jxr_string">"title"</span>));
<a class="jxr_linenumber" name="174" href="#174">174</a>         assertEquals(<span class="jxr_string">"simple"</span>, challenges.get(<span class="jxr_string">"basic"</span>).get(<span class="jxr_string">"realm"</span>));
<a class="jxr_linenumber" name="175" href="#175">175</a> 
<a class="jxr_linenumber" name="176" href="#176">176</a>         challenges = getChallengesFromAuthenticateHeader(<span class="jxr_string">"a1, a2 ,a3 ,a4"</span>);
<a class="jxr_linenumber" name="177" href="#177">177</a>         assertNotNull(challenges);
<a class="jxr_linenumber" name="178" href="#178">178</a>         assertTrue(challenges.containsKey(<span class="jxr_string">"a1"</span>));
<a class="jxr_linenumber" name="179" href="#179">179</a>         assertTrue(challenges.containsKey(<span class="jxr_string">"a2"</span>));
<a class="jxr_linenumber" name="180" href="#180">180</a>         assertTrue(challenges.containsKey(<span class="jxr_string">"a3"</span>));
<a class="jxr_linenumber" name="181" href="#181">181</a>         assertTrue(challenges.containsKey(<span class="jxr_string">"a4"</span>));
<a class="jxr_linenumber" name="182" href="#182">182</a>     }
<a class="jxr_linenumber" name="183" href="#183">183</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

