Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  * #%L
  * *********************************************************************************************************************
  *
  * NorthernWind - lightweight CMS
  * http://northernwind.tidalwave.it - hg clone https://bitbucket.org/tidalwave/northernwind-src
  * %%
  * Copyright (C) 2011 - 2014 Tidalwave s.a.s. (http://tidalwave.it)
  * %%
 * *********************************************************************************************************************
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
 * the License. You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
 * an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations under the License.
 *
 * *********************************************************************************************************************
 *
 * $Id: ParameterLanguageOverrideLinkPostProcessorTest.java,v f214f4c8488f 2014/01/03 18:03:50 fabrizio $
 *
 * *********************************************************************************************************************
 * #L%
 */
package it.tidalwave.northernwind.core.model.spi;
import  javax.annotation.Nonnull;
import static org.mockito.Mockito.*;
import static org.hamcrest.CoreMatchers.*;
import static org.hamcrest.MatcherAssert.*;

Author(s):
Fabrizio Giudici
Version:
$Id: ParameterLanguageOverrideLinkPostProcessorTest.java,v f214f4c8488f 2014/01/03 18:03:50 fabrizio $ /
  {
    public void setupFixture()
      {
         = new ClassPathXmlApplicationContext("ParameterLanguageOverrideLinkPostProcessorTestBeans.xml");
        when(.getParameterName()).thenReturn("lang");
      }
    @Test(dataProvider = "linkProvider")
    public void must_properly_postProcess (final @Nonnull String link,
                                           final @Nonnull String parameterValue,
                                           final @Nonnull String expectedResult)
      {
        final String result = .postProcess(linkparameterValue);
        assertThat(resultis(expectedResult));
      }
    @DataProvider(name = "linkProvider") @Nonnull
    private Object[][] linkProvider()
      {
        return new Object[][]
          {
            { "http://acme.com/path/resource",                  "en""http://acme.com/path/resource?lang=en"         },
            { "http://acme.com/path/resource?a=b",              "en""http://acme.com/path/resource?a=b&lang=en"     },
            { "http://acme.com/path/resource?lang=it",          "en""http://acme.com/path/resource?lang=en"         },
            { "http://acme.com/path/resource?lang=it&a=b",      "en""http://acme.com/path/resource?lang=en&a=b"     },
            { "http://acme.com/path/resource?c=d&lang=it",      "en""http://acme.com/path/resource?c=d&lang=en"     },
            { "http://acme.com/path/resource?c=d&lang=it&a=b",  "en""http://acme.com/path/resource?c=d&lang=en&a=b" },
            { "http://acme.com/path/resource/",                 "en""http://acme.com/path/resource/?lang=en"        },
            { "http://acme.com/path/resource/?a=b",             "en""http://acme.com/path/resource/?a=b&lang=en"    },
            { "http://acme.com/path/resource/?lang=it",         "en""http://acme.com/path/resource/?lang=en"        },
            { "http://acme.com/path/resource/?lang=it&a=b",     "en""http://acme.com/path/resource/?lang=en&a=b"    },
            { "http://acme.com/path/resource/?c=d&lang=it",     "en""http://acme.com/path/resource/?c=d&lang=en"    },
            { "http://acme.com/path/resource/?c=d&lang=it&a=b""en""http://acme.com/path/resource/?c=d&lang=en&a=b"},
            // NW-165
            { "http://acme.com/path/image.jpg",                 "en""http://acme.com/path/image.jpg?lang=en"        },
            { "http://acme.com/path/image.jpg?a=b",             "en""http://acme.com/path/image.jpg?a=b&lang=en"    },
            { "http://acme.com/path/image.jpg?lang=it",         "en""http://acme.com/path/image.jpg?lang=en"        },
            { "http://acme.com/path/image.jpg?lang=it&a=b",     "en""http://acme.com/path/image.jpg?lang=en&a=b"    },
            { "http://acme.com/path/image.jpg?c=d&lang=it",     "en""http://acme.com/path/image.jpg?c=d&lang=en"    },
            { "http://acme.com/path/image.jpg?c=d&lang=it&a=b""en""http://acme.com/path/image.jpg?c=d&lang=en&a=b"}
          };
      }
  }
New to GrepCode? Check out our FAQ X