<!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=ISO-8859-1" />
<title>MimeHelperTest xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../../../stylesheet.css" />
</head>
<body>
<pre>

<a name="1" href="#1">1</a>   <em class="jxr_comment">/*</em>
<a name="2" href="#2">2</a>   <em class="jxr_comment"> * Licensed to the Apache Software Foundation (ASF) under one</em>
<a name="3" href="#3">3</a>   <em class="jxr_comment"> * or more contributor license agreements.  See the NOTICE file</em>
<a name="4" href="#4">4</a>   <em class="jxr_comment"> * distributed with this work for additional information</em>
<a name="5" href="#5">5</a>   <em class="jxr_comment"> * regarding copyright ownership.  The ASF licenses this file</em>
<a name="6" href="#6">6</a>   <em class="jxr_comment"> * to you under the Apache License, Version 2.0 (the</em>
<a name="7" href="#7">7</a>   <em class="jxr_comment"> * "License"); you may not use this file except in compliance</em>
<a name="8" href="#8">8</a>   <em class="jxr_comment"> * with the License.  You may obtain a copy of the License at</em>
<a name="9" href="#9">9</a>   <em class="jxr_comment"> *</em>
<a 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 name="11" href="#11">11</a>  <em class="jxr_comment"> *</em>
<a name="12" href="#12">12</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing,</em>
<a name="13" href="#13">13</a>  <em class="jxr_comment"> * software distributed under the License is distributed on an</em>
<a name="14" href="#14">14</a>  <em class="jxr_comment"> * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</em>
<a name="15" href="#15">15</a>  <em class="jxr_comment"> * KIND, either express or implied.  See the License for the</em>
<a name="16" href="#16">16</a>  <em class="jxr_comment"> * specific language governing permissions and limitations</em>
<a name="17" href="#17">17</a>  <em class="jxr_comment"> * under the License.</em>
<a name="18" href="#18">18</a>  <em class="jxr_comment"> *</em>
<a name="19" href="#19">19</a>  <em class="jxr_comment"> * Contributors:</em>
<a name="20" href="#20">20</a>  <em class="jxr_comment"> *     Florent Guillaume</em>
<a name="21" href="#21">21</a>  <em class="jxr_comment"> */</em>
<a name="22" href="#22">22</a>  <strong class="jxr_keyword">package</strong> org.apache.chemistry.opencmis.commons.impl.misc;
<a name="23" href="#23">23</a>  
<a 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 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 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 name="27" href="#27">27</a>  
<a name="28" href="#28">28</a>  <strong class="jxr_keyword">import</strong> java.util.Collections;
<a name="29" href="#29">29</a>  <strong class="jxr_keyword">import</strong> java.util.HashMap;
<a name="30" href="#30">30</a>  <strong class="jxr_keyword">import</strong> java.util.Map;
<a name="31" href="#31">31</a>  
<a name="32" href="#32">32</a>  <strong class="jxr_keyword">import</strong> junit.framework.TestCase;
<a name="33" href="#33">33</a>  
<a name="34" href="#34">34</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 name="35" href="#35">35</a>  
<a name="36" href="#36">36</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncodeContentDisposition() {
<a name="37" href="#37">37</a>          assertEquals(<span class="jxr_string">"inline; filename=foo.bar"</span>,
<a name="38" href="#38">38</a>                  encodeContentDisposition(<span class="jxr_string">"inline"</span>, <span class="jxr_string">"foo.bar"</span>));
<a name="39" href="#39">39</a>          assertEquals(<span class="jxr_string">"attachment; filename=foo.bar"</span>,
<a name="40" href="#40">40</a>                  encodeContentDisposition(<strong class="jxr_keyword">null</strong>, <span class="jxr_string">"foo.bar"</span>));
<a name="41" href="#41">41</a>          assertEquals(<span class="jxr_string">"attachment; filename*=UTF-8''caf%C3%A9.pdf"</span>,
<a name="42" href="#42">42</a>                  encodeContentDisposition(<strong class="jxr_keyword">null</strong>, <span class="jxr_string">"caf\u00e9.pdf"</span>));
<a name="43" href="#43">43</a>          assertEquals(
<a name="44" href="#44">44</a>                  <span class="jxr_string">"attachment; filename*=UTF-8''%20%27%2A%25%20abc%20%C2%81%C2%82%0D%0A%09"</span>,
<a name="45" href="#45">45</a>                  encodeContentDisposition(<strong class="jxr_keyword">null</strong>, <span class="jxr_string">" '*% abc \u0081\u0082\r\n\t"</span>));
<a name="46" href="#46">46</a>      }
<a name="47" href="#47">47</a>  
<a name="48" href="#48">48</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testDecodeContentDisposition() {
<a name="49" href="#49">49</a>          Map&lt;String, String&gt; params = <strong class="jxr_keyword">new</strong> HashMap&lt;String, String&gt;();
<a name="50" href="#50">50</a>          Map&lt;String, String&gt; expected = <strong class="jxr_keyword">new</strong> HashMap&lt;String, String&gt;();
<a name="51" href="#51">51</a>  
<a name="52" href="#52">52</a>          assertEquals(<span class="jxr_string">"attachment"</span>,
<a name="53" href="#53">53</a>                  decodeContentDisposition(<span class="jxr_string">"attachment; a=b; c=d"</span>, params));
<a name="54" href="#54">54</a>          expected.put(<span class="jxr_string">"a"</span>, <span class="jxr_string">"b"</span>);
<a name="55" href="#55">55</a>          expected.put(<span class="jxr_string">"c"</span>, <span class="jxr_string">"d"</span>);
<a name="56" href="#56">56</a>          assertEquals(expected, params);
<a name="57" href="#57">57</a>          params.clear();
<a name="58" href="#58">58</a>          expected.clear();
<a name="59" href="#59">59</a>  
<a name="60" href="#60">60</a>          assertEquals(
<a name="61" href="#61">61</a>                  <span class="jxr_string">"inline"</span>,
<a name="62" href="#62">62</a>                  decodeContentDisposition(
<a name="63" href="#63">63</a>                          <span class="jxr_string">"  inline ; a = \&quot;b b\&quot; (this is a comment) ; c =d;"</span>,
<a name="64" href="#64">64</a>                          params));
<a name="65" href="#65">65</a>          expected.put(<span class="jxr_string">"a"</span>, <span class="jxr_string">"b b"</span>);
<a name="66" href="#66">66</a>          expected.put(<span class="jxr_string">"c"</span>, <span class="jxr_string">"d"</span>);
<a name="67" href="#67">67</a>          assertEquals(expected, params);
<a name="68" href="#68">68</a>          params.clear();
<a name="69" href="#69">69</a>          expected.clear();
<a name="70" href="#70">70</a>  
<a name="71" href="#71">71</a>          assertEquals(
<a name="72" href="#72">72</a>                  <span class="jxr_string">"inline"</span>,
<a name="73" href="#73">73</a>                  decodeContentDisposition(
<a name="74" href="#74">74</a>                          <span class="jxr_string">"inline; modification-date=\&quot;Wed, 12 Feb 1997 16:29:51 -0500\&quot;"</span>,
<a name="75" href="#75">75</a>                          params));
<a name="76" href="#76">76</a>          assertEquals(Collections.singletonMap(<span class="jxr_string">"modification-date"</span>,
<a name="77" href="#77">77</a>                  <span class="jxr_string">"Wed, 12 Feb 1997 16:29:51 -0500"</span>), params);
<a name="78" href="#78">78</a>          params.clear();
<a name="79" href="#79">79</a>      }
<a name="80" href="#80">80</a>  
<a name="81" href="#81">81</a>      <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testDecodeContentDispositionFilename() {
<a name="82" href="#82">82</a>          assertNull(decodeContentDispositionFilename(<span class="jxr_string">"attachment; a=b; c=d;"</span>));
<a name="83" href="#83">83</a>          assertNull(decodeContentDispositionFilename(<span class="jxr_string">"inline"</span>));
<a name="84" href="#84">84</a>          assertNull(decodeContentDispositionFilename(<span class="jxr_string">"inline; modification-date=\&quot;Wed, 12 Feb 1997 16:29:51 -0500\&quot;"</span>));
<a name="85" href="#85">85</a>          assertEquals(
<a name="86" href="#86">86</a>                  <span class="jxr_string">"foo.bar"</span>,
<a name="87" href="#87">87</a>                  decodeContentDispositionFilename(<span class="jxr_string">"attachment; filename=foo.bar"</span>));
<a name="88" href="#88">88</a>          assertEquals(
<a name="89" href="#89">89</a>                  <span class="jxr_string">"foo.bar"</span>,
<a name="90" href="#90">90</a>                  decodeContentDispositionFilename(<span class="jxr_string">"attachment; filename = \&quot;foo.bar\&quot;"</span>));
<a name="91" href="#91">91</a>          assertEquals(
<a name="92" href="#92">92</a>                  <span class="jxr_string">"foo.bar"</span>,
<a name="93" href="#93">93</a>                  decodeContentDispositionFilename(<span class="jxr_string">" guess ; filename = (this is rfc822 a comment) \&quot;foo.bar\&quot;"</span>));
<a name="94" href="#94">94</a>          assertEquals(
<a name="95" href="#95">95</a>                  <span class="jxr_string">"caf\u00e9.pdf"</span>,
<a name="96" href="#96">96</a>                  decodeContentDispositionFilename(<span class="jxr_string">"foo; filename*=UTF-8''caf%C3%A9.pdf"</span>));
<a name="97" href="#97">97</a>          assertEquals(
<a name="98" href="#98">98</a>                  <span class="jxr_string">"caf\u00e9.pdf"</span>,
<a name="99" href="#99">99</a>                  decodeContentDispositionFilename(<span class="jxr_string">"bar; filename*=ISO-8859-1''caf%E9.pdf"</span>));
<a name="100" href="#100">100</a>     }
<a name="101" href="#101">101</a> 
<a name="102" href="#102">102</a> }
</pre>
<hr/><div id="footer">This page was automatically generated by <a href="http://maven.apache.org/">Maven</a></div></body>
</html>

