| Chunk |
|---|
| Conflicting content |
|---|
import org.slf4j.Logger; import org.slf4j.LoggerFactory; <<<<<<< HEAD:wro4j-core/src/main/java/ro/isdc/wro/model/resource/locator/support/ClasspathResourceLocator.java import ro.isdc.wro.model.resource.locator.ResourceLocator; ======= import ro.isdc.wro.model.resource.locator.support.LocatorProvider; import ro.isdc.wro.model.resource.locator.wildcard.DefaultWildcardStreamLocator; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8:wro4j-core/src/main/java/ro/isdc/wro/model/resource/locator/ClasspathUriLocator.java import ro.isdc.wro.model.resource.locator.wildcard.JarWildcardStreamLocator; import ro.isdc.wro.model.resource.locator.wildcard.WildcardStreamLocator; import ro.isdc.wro.model.transformer.WildcardExpanderModelTransformer.NoMoreAttemptsIOException; |
| Solution content |
|---|
import org.slf4j.Logger; import org.slf4j.LoggerFactory; import ro.isdc.wro.model.resource.locator.ResourceLocator; import ro.isdc.wro.model.resource.locator.wildcard.DefaultWildcardStreamLocator; import ro.isdc.wro.model.resource.locator.wildcard.JarWildcardStreamLocator; import ro.isdc.wro.model.resource.locator.wildcard.WildcardStreamLocator; import ro.isdc.wro.model.transformer.WildcardExpanderModelTransformer.NoMoreAttemptsIOException; |
| File |
|---|
| ClasspathResourceLocator.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
notNull(path);
return PREFIX + path;
}
<<<<<<< HEAD:wro4j-core/src/main/java/ro/isdc/wro/model/resource/locator/support/ClasspathResourceLocator.java
=======
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8:wro4j-core/src/main/java/ro/isdc/wro/model/resource/locator/ClasspathUriLocator.java
/**
* Classpath location. This value is expected to be prefixed with "classpath:" value.
*/ |
| Solution content |
|---|
notNull(path);
return PREFIX + path;
}
/**
* Classpath location. This value is expected to be prefixed with "classpath:" value.
*/ |
| File |
|---|
| ClasspathResourceLocator.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Blank |
| Chunk |
|---|
| Conflicting content |
|---|
}
/**
<<<<<<< HEAD:wro4j-core/src/main/java/ro/isdc/wro/model/resource/locator/support/ClasspathResourceLocator.java
* {@inheritDoc}
=======
* Check if a uri is a classpath resource.
*
* @param uri
* to check.
* @return true if the uri is a classpath resource.
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8:wro4j-core/src/main/java/ro/isdc/wro/model/resource/locator/ClasspathUriLocator.java
*/
@Override
public long lastModified() { |
| Solution content |
|---|
}
/**
* {@inheritDoc}
*/
@Override
public long lastModified() { |
| File |
|---|
| ClasspathResourceLocator.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Comment |
| Chunk |
|---|
| Conflicting content |
|---|
if (getWildcardStreamLocator().hasWildcard(location)) {
*/
public InputStream getInputStream()
throws IOException {
<<<<<<< HEAD:wro4j-core/src/main/java/ro/isdc/wro/model/resource/locator/support/ClasspathResourceLocator.java
LOG.debug("Reading uri: {}", path);
if (getWildcardStreamLocator().hasWildcard(location)) {
return locateWildcardStream(path, location);
=======
Validate.notNull(uri, "URI cannot be NULL!");
// replace prefix & clean path by removing '..' characters if exists and
// normalizing the location to use.
String location = StringUtils.cleanPath(uri.replaceFirst(PREFIX, "")).trim();
try {
return locateWildcardStream(uri, location);
final InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream(location);
if (is == null) {
} catch (final IOException e) {
if (location.contains("?")) {
location = DefaultWildcardStreamLocator.stripQueryPath(location);
LOG.debug("Trying fallback location: {}", location);
}
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8:wro4j-core/src/main/java/ro/isdc/wro/model/resource/locator/ClasspathUriLocator.java
} |
| Solution content |
|---|
*/
public InputStream getInputStream()
throws IOException {
LOG.debug("Reading uri: {}", path);
if (getWildcardStreamLocator().hasWildcard(location)) {
try {
return locateWildcardStream(uri, location);
} catch (final IOException e) {
if (location.contains("?")) {
location = DefaultWildcardStreamLocator.stripQueryPath(location);
LOG.debug("Trying fallback location: {}", location);
}
}
}
final InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream(location);
if (is == null) { |
| File |
|---|
| ClasspathResourceLocator.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Comment |
| If statement |
| Method invocation |
| Return statement |
| Try statement |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
return is; } <<<<<<< HEAD:wro4j-core/src/main/java/ro/isdc/wro/model/resource/locator/support/ClasspathResourceLocator.java ======= >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8:wro4j-core/src/main/java/ro/isdc/wro/model/resource/locator/ClasspathUriLocator.java /** * @return an input stream for an uri containing a wildcard for a given location. */ |
| Solution content |
|---|
return is; } /** * @return an input stream for an uri containing a wildcard for a given location. */ |
| File |
|---|
| ClasspathResourceLocator.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Blank |
| Chunk |
|---|
| Conflicting content |
|---|
@Mock
private MBeanServer mockMBeanServer;
@Mock
<<<<<<< HEAD
private ResourceLocator mockLocator;
=======
private UriLocator mockUriLocator;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Before
public void setUp()
throws Exception { |
| Solution content |
|---|
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@Mock
private MBeanServer mockMBeanServer;
@Mock
private ResourceLocator mockLocator;
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp()
throws Exception { |
| File |
|---|
| TestWroFilter.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
throws Exception {
Context.set(Context.standaloneContext());
MockitoAnnotations.initMocks(this);
<<<<<<< HEAD
when(mockLocatorFactory.getLocator(Mockito.anyString())).thenReturn(mockLocator);
when(mockLocatorFactory.locate(Mockito.anyString())).thenReturn(WroUtil.EMPTY_STREAM);
when(mockLocator.getInputStream()).thenReturn(WroUtil.EMPTY_STREAM);
=======
when(mockUriLocatorFactory.getInstance(Mockito.anyString())).thenReturn(mockUriLocator);
when(mockUriLocator.locate(Mockito.anyString())).thenReturn(WroUtil.EMPTY_STREAM);
when(mockUriLocatorFactory.locate(Mockito.anyString())).thenReturn(WroUtil.EMPTY_STREAM);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
when(mockRequest.getAttribute(Mockito.anyString())).thenReturn(null);
when(mockManagerFactory.create()).thenReturn(new BaseWroManagerFactory().create());
when(mockFilterConfig.getServletContext()).thenReturn(mockServletContext); |
| Solution content |
|---|
throws Exception {
Context.set(Context.standaloneContext());
MockitoAnnotations.initMocks(this);
when(mockLocatorFactory.getLocator(Mockito.anyString())).thenReturn(mockLocator);
when(mockLocatorFactory.locate(Mockito.anyString())).thenReturn(WroUtil.EMPTY_STREAM);
when(mockLocator.getInputStream()).thenReturn(WroUtil.EMPTY_STREAM);
when(mockRequest.getAttribute(Mockito.anyString())).thenReturn(null);
when(mockManagerFactory.create()).thenReturn(new BaseWroManagerFactory().create());
when(mockFilterConfig.getServletContext()).thenReturn(mockServletContext); |
| File |
|---|
| TestWroFilter.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
@Mock private ResourceLocatorFactory mockLocatorFactory; @Mock <<<<<<< HEAD private ResourceLocator mockLocator; ======= private UriLocator mockUriLocator; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 private OutputStream outputStream; private ServletOutputStream servletOutputStream; |
| Solution content |
|---|
@Mock private ResourceLocatorFactory mockLocatorFactory; @Mock private ResourceLocator mockLocator; private OutputStream outputStream; private ServletOutputStream servletOutputStream; |
| File |
|---|
| TestResourceProxyRequestHandler.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Attribute |
| Chunk |
|---|
| Conflicting content |
|---|
Mockito.when(filterConfig.getServletContext()).thenReturn(servletContext);
Context.set(Context.webContext(request, response, filterConfig));
// a more elaborate way to build injector, used to instruct it use a different instance of authorizationManager
<<<<<<< HEAD
final Injector injector = new InjectorBuilder(
new BaseWroManagerFactory().setLocatorFactory(mockLocatorFactory).setResourceAuthorizationManager(
mockAuthorizationManager)).build();
injector.inject(victim);
when(mockLocatorFactory.getLocator(anyString())).thenReturn(mockLocator);
when(mockLocatorFactory.locate(anyString())).thenAnswer(new Answer |
| Solution content |
|---|
Mockito.when(filterConfig.getServletContext()).thenReturn(servletContext);
Context.set(Context.webContext(request, response, filterConfig));
// a more elaborate way to build injector, used to instruct it use a different instance of authorizationManager
final Injector injector = new InjectorBuilder(
new BaseWroManagerFactory().setLocatorFactory(mockLocatorFactory).setResourceAuthorizationManager(
mockAuthorizationManager)).build();
injector.inject(victim);
when(mockLocatorFactory.getLocator(anyString())).thenReturn(mockLocator);
when(mockLocatorFactory.locate(anyString())).thenAnswer(new Answer |
| File |
|---|
| TestResourceProxyRequestHandler.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
return mockLocator.getInputStream();
}
});
<<<<<<< HEAD
when(mockLocator.getInputStream()).thenReturn(WroUtil.EMPTY_STREAM);
=======
when(mockUriLocator.locate(anyString())).thenReturn(WroUtil.EMPTY_STREAM);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
packagePath = WroUtil.toPackageAsFolder(this.getClass());
// Setup response writer |
| Solution content |
|---|
return mockLocator.getInputStream();
}
});
when(mockLocator.getInputStream()).thenReturn(WroUtil.EMPTY_STREAM);
packagePath = WroUtil.toPackageAsFolder(this.getClass());
// Setup response writer |
| File |
|---|
| TestResourceProxyRequestHandler.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
final String resourceUri = "classpath:" + packagePath + "/" + "test.css";
when(mockAuthorizationManager.isAuthorized(resourceUri)).thenReturn(true);
when(request.getParameter(ResourceProxyRequestHandler.PARAM_RESOURCE_ID)).thenReturn(resourceUri);
<<<<<<< HEAD
when(mockLocator.getInputStream()).thenReturn(new ClasspathResourceLocator(resourceUri).getInputStream());
=======
when(mockUriLocator.locate(anyString())).thenReturn(new ClasspathUriLocator().locate(resourceUri));
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
victim.handle(request, response);
final String body = outputStream.toString(); |
| Solution content |
|---|
final String resourceUri = "classpath:" + packagePath + "/" + "test.css";
when(mockAuthorizationManager.isAuthorized(resourceUri)).thenReturn(true);
when(request.getParameter(ResourceProxyRequestHandler.PARAM_RESOURCE_ID)).thenReturn(resourceUri);
when(mockLocator.getInputStream()).thenReturn(new ClasspathResourceLocator(resourceUri).getInputStream());
victim.handle(request, response);
final String body = outputStream.toString(); |
| File |
|---|
| TestResourceProxyRequestHandler.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
final String resourceUri = "classpath:" + packagePath + "/" + "test.css";
when(mockAuthorizationManager.isAuthorized(resourceUri)).thenReturn(false);
when(request.getParameter(ResourceProxyRequestHandler.PARAM_RESOURCE_ID)).thenReturn(resourceUri);
<<<<<<< HEAD
when(mockLocator.getInputStream()).thenReturn(new ClasspathResourceLocator(resourceUri).getInputStream());
=======
when(mockUriLocator.locate(anyString())).thenReturn(new ClasspathUriLocator().locate(resourceUri));
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
victim.handle(request, response);
}
|
| Solution content |
|---|
final String resourceUri = "classpath:" + packagePath + "/" + "test.css";
when(mockAuthorizationManager.isAuthorized(resourceUri)).thenReturn(false);
when(request.getParameter(ResourceProxyRequestHandler.PARAM_RESOURCE_ID)).thenReturn(resourceUri);
when(mockLocator.getInputStream()).thenReturn(new ClasspathResourceLocator(resourceUri).getInputStream());
victim.handle(request, response);
}
|
| File |
|---|
| TestResourceProxyRequestHandler.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
}
victim.handle(request, response);
final String body = outputStream.toString();
final String expectedBody = IOUtils.toString(getInputStream("test.css"));
<<<<<<< HEAD
verify(mockLocator, times(1)).getInputStream();
=======
verify(mockUriLocator, times(1)).locate(resourceUri);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
assertEquals(expectedBody, body); |
| Solution content |
|---|
victim.handle(request, response);
final String body = outputStream.toString();
final String expectedBody = IOUtils.toString(getInputStream("test.css"));
verify(mockLocator, times(1)).getInputStream();
assertEquals(expectedBody, body);
}
|
| File |
|---|
| TestResourceProxyRequestHandler.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
final String resourceUri = "classpath:" + packagePath + "/" + "test.css";
when(mockAuthorizationManager.isAuthorized(resourceUri)).thenReturn(true);
when(request.getParameter(ResourceProxyRequestHandler.PARAM_RESOURCE_ID)).thenReturn(resourceUri);
<<<<<<< HEAD
when(mockLocator.getInputStream()).thenReturn(new ClasspathResourceLocator(resourceUri).getInputStream());
=======
when(mockUriLocator.locate(anyString())).thenReturn(new ClasspathUriLocator().locate(resourceUri));
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
victim.handle(request, response);
final int expectedLength = IOUtils.toString(getInputStream("test.css")).length();
|
| Solution content |
|---|
final String resourceUri = "classpath:" + packagePath + "/" + "test.css";
when(mockAuthorizationManager.isAuthorized(resourceUri)).thenReturn(true);
when(request.getParameter(ResourceProxyRequestHandler.PARAM_RESOURCE_ID)).thenReturn(resourceUri);
when(mockLocator.getInputStream()).thenReturn(new ClasspathResourceLocator(resourceUri).getInputStream());
victim.handle(request, response);
final int expectedLength = IOUtils.toString(getInputStream("test.css")).length();
|
| File |
|---|
| TestResourceProxyRequestHandler.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
}
@Test
<<<<<<< HEAD
public void shouldDoNothingWhenNoProcessorProvided() throws Exception {
doFilterWithProcessors(Collections. |
| Solution content |
|---|
doFilterWithProcessors(Collections. |
| File |
|---|
| TestAbstractProcessorsFilter.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Method signature |
| Chunk |
|---|
| Conflicting content |
|---|
});
doFilterWithProcessors(processors);
}
<<<<<<< HEAD
private void doFilterWithProcessors(final List |
| Solution content |
|---|
});
doFilterWithProcessors(processors);
}
private void doFilterWithProcessors(final List |
| File |
|---|
| TestAbstractProcessorsFilter.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method signature |
| Chunk |
|---|
| Conflicting content |
|---|
import org.mockito.Mock; import org.mockito.MockitoAnnotations; <<<<<<< HEAD import ro.isdc.wro.model.resource.locator.ResourceLocator; import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator; ======= import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.locator.ClasspathUriLocator; import ro.isdc.wro.model.resource.locator.UriLocator; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 /** * @author Alex Objelean |
| Solution content |
|---|
import ro.isdc.wro.config.Context; import org.mockito.Mock; import org.mockito.MockitoAnnotations; import ro.isdc.wro.model.resource.locator.ResourceLocator; import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator; /** * @author Alex Objelean |
| File |
|---|
| TestRedirectedStreamServletResponseWrapper.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
* resource is the pre processed resource of this processor.
*/
private static final class WroManagerProcessor
<<<<<<< HEAD
implements ResourceProcessor {
=======
implements ResourcePreProcessor {
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
private BaseWroManagerFactory createManagerFactory(final Resource resource) {
return new BaseWroManagerFactory() { |
| Solution content |
|---|
* resource is the pre processed resource of this processor.
*/
private static final class WroManagerProcessor
implements ResourceProcessor {
private BaseWroManagerFactory createManagerFactory(final Resource resource) {
return new BaseWroManagerFactory() { |
| File |
|---|
| TestWroManager.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Other |
| Chunk |
|---|
| Conflicting content |
|---|
createManager();
assertEquals(1, uriLocatorFactory.getConfiguredStrategies().size());
<<<<<<< HEAD
assertSame(ServletContextResourceLocatorFactory.class,
uriLocatorFactory.getConfiguredStrategies().iterator().next().getClass());
=======
assertSame(ServletContextUriLocator.class, uriLocatorFactory.getConfiguredStrategies().iterator().next().getClass());
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
}
@Test |
| Solution content |
|---|
createManager();
assertEquals(1, uriLocatorFactory.getConfiguredStrategies().size());
assertSame(ServletContextResourceLocatorFactory.class,
uriLocatorFactory.getConfiguredStrategies().iterator().next().getClass());
}
@Test |
| File |
|---|
| TestConfigurableWroManagerFactory.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
public void testProcessorsExecutionOrder() {
createManager();
<<<<<<< HEAD
=======
configureValidUriLocators(mockFilterConfig);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_PRE_PROCESSORS)).thenReturn(
AbstractConfigurableMultipleStrategy.createItemsAsString(JSMinProcessor.ALIAS, CssImportPreProcessor.ALIAS,
CssVariablesProcessor.ALIAS)); |
| Solution content |
|---|
public void testProcessorsExecutionOrder() {
createManager();
configureValidUriLocators(mockFilterConfig);
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_PRE_PROCESSORS)).thenReturn(
AbstractConfigurableMultipleStrategy.createItemsAsString(JSMinProcessor.ALIAS, CssImportPreProcessor.ALIAS,
CssVariablesProcessor.ALIAS)); |
| File |
|---|
| TestConfigurableWroManagerFactory.java |
| Developer's decision |
|---|
| Version 2 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
public void testWithEmptyPreProcessors() {
createManager();
<<<<<<< HEAD
=======
configureValidUriLocators(mockFilterConfig);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_PRE_PROCESSORS)).thenReturn("");
assertTrue(processorsFactory.getPreProcessors().isEmpty());
} |
| Solution content |
|---|
public void testWithEmptyPreProcessors() {
createManager();
configureValidUriLocators(mockFilterConfig);
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_PRE_PROCESSORS)).thenReturn("");
assertTrue(processorsFactory.getPreProcessors().isEmpty());
} |
| File |
|---|
| TestConfigurableWroManagerFactory.java |
| Developer's decision |
|---|
| Version 2 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
@Test(expected = WroRuntimeException.class)
public void cannotUseInvalidPreProcessorsSet() {
<<<<<<< HEAD
=======
createManager();
configureValidUriLocators(mockFilterConfig);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_PRE_PROCESSORS)).thenReturn(
"INVALID1,INVALID2");
|
| Solution content |
|---|
@Test(expected = WroRuntimeException.class)
public void cannotUseInvalidPreProcessorsSet() {
createManager();
configureValidUriLocators(mockFilterConfig);
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_PRE_PROCESSORS)).thenReturn(
"INVALID1,INVALID2"); |
| File |
|---|
| TestConfigurableWroManagerFactory.java |
| Developer's decision |
|---|
| Version 2 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
public void testWhenValidPreProcessorsSet() {
createManager();
<<<<<<< HEAD
=======
configureValidUriLocators(mockFilterConfig);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_PRE_PROCESSORS)).thenReturn(
"cssUrlRewriting");
assertEquals(1, processorsFactory.getPreProcessors().size()); |
| Solution content |
|---|
public void testWhenValidPreProcessorsSet() {
createManager();
configureValidUriLocators(mockFilterConfig);
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_PRE_PROCESSORS)).thenReturn(
"cssUrlRewriting");
assertEquals(1, processorsFactory.getPreProcessors().size()); |
| File |
|---|
| TestConfigurableWroManagerFactory.java |
| Developer's decision |
|---|
| Version 2 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
public void testWithEmptyPostProcessors() {
createManager();
<<<<<<< HEAD
=======
configureValidUriLocators(mockFilterConfig);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_POST_PROCESSORS)).thenReturn("");
assertTrue(processorsFactory.getPostProcessors().isEmpty());
} |
| Solution content |
|---|
public void testWithEmptyPostProcessors() {
createManager();
configureValidUriLocators(mockFilterConfig);
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_POST_PROCESSORS)).thenReturn("");
assertTrue(processorsFactory.getPostProcessors().isEmpty());
} |
| File |
|---|
| TestConfigurableWroManagerFactory.java |
| Developer's decision |
|---|
| Version 2 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
public void cannotUseInvalidPostProcessorsSet() {
createManager();
<<<<<<< HEAD
=======
configureValidUriLocators(mockFilterConfig);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_POST_PROCESSORS)).thenReturn(
"INVALID1,INVALID2");
processorsFactory.getPostProcessors(); |
| Solution content |
|---|
public void cannotUseInvalidPostProcessorsSet() {
createManager();
configureValidUriLocators(mockFilterConfig);
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_POST_PROCESSORS)).thenReturn(
"INVALID1,INVALID2");
processorsFactory.getPostProcessors(); |
| File |
|---|
| TestConfigurableWroManagerFactory.java |
| Developer's decision |
|---|
| Version 2 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
public void testWhenValidPostProcessorsSet() {
createManager();
<<<<<<< HEAD
=======
configureValidUriLocators(mockFilterConfig);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_POST_PROCESSORS)).thenReturn(
"cssMinJawr, jsMin, cssVariables");
assertEquals(3, processorsFactory.getPostProcessors().size()); |
| Solution content |
|---|
public void testWhenValidPostProcessorsSet() {
createManager();
configureValidUriLocators(mockFilterConfig);
Mockito.when(mockFilterConfig.getInitParameter(ConfigurableProcessorsFactory.PARAM_POST_PROCESSORS)).thenReturn(
"cssMinJawr, jsMin, cssVariables");
assertEquals(3, processorsFactory.getPostProcessors().size()); |
| File |
|---|
| TestConfigurableWroManagerFactory.java |
| Developer's decision |
|---|
| Version 2 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
createManager();
<<<<<<< HEAD
Collection |
| Solution content |
|---|
createManager();
Collection |
| File |
|---|
| TestConfigurableWroManagerFactory.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
createManager();
assertEquals(2, processorsFactory.getPostProcessors().size());
<<<<<<< HEAD
assertEquals(JSMinProcessor.class, processorsFactory.getPostProcessors().iterator().next().getClass());
=======
assertEquals(JSMinProcessor.class,
((ProcessorDecorator) processorsFactory.getPostProcessors().iterator().next()).getDecoratedObject().getClass());
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
}
@Test(expected = WroRuntimeException.class) |
| Solution content |
|---|
createManager();
assertEquals(2, processorsFactory.getPostProcessors().size());
assertEquals(JSMinProcessor.class, processorsFactory.getPostProcessors().iterator().next().getClass());
}
@Test(expected = WroRuntimeException.class) |
| File |
|---|
| TestConfigurableWroManagerFactory.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
package ro.isdc.wro.model.factory; <<<<<<< HEAD ======= import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import java.io.IOException; import java.io.InputStream; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 import java.util.ArrayList; import java.util.Collections; import java.util.List; |
| Solution content |
|---|
import java.util.List; package ro.isdc.wro.model.factory; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import java.util.ArrayList; import java.util.Collections; |
| File |
|---|
| TestDefaultWroModelFactory.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
/**
* Used to simulate that a resource stream used to build the model is not available.
*/
<<<<<<< HEAD
private boolean isModelAvailable;
=======
private boolean flag = false;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Before
public void setUp() {
isModelAvailable = true; |
| Solution content |
|---|
/**
* Used to simulate that a resource stream used to build the model is not available.
*/
private boolean isModelAvailable;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp() {
isModelAvailable = true; |
| File |
|---|
| TestFallbackAwareWroModelFactory.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
Context.set(Context.standaloneContext());
final ResourceLocator locator = new UrlResourceLocator(TestFallbackAwareWroModelFactory.class.getResource("wro.xml")) {
@Override
<<<<<<< HEAD
public InputStream getInputStream() throws IOException {
if (isModelAvailable) {
return super.getInputStream();
=======
protected InputStream getModelResourceAsStream()
throws IOException {
flag = !flag;
if (flag) {
return TestXmlModelFactory.class.getResourceAsStream("wro.xml");
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
}
isModelAvailable = !isModelAvailable;
return null; |
| Solution content |
|---|
Context.set(Context.standaloneContext());
final ResourceLocator locator = new UrlResourceLocator(TestFallbackAwareWroModelFactory.class.getResource("wro.xml")) {
@Override
public InputStream getInputStream() throws IOException {
if (isModelAvailable) {
return super.getInputStream();
}
isModelAvailable = !isModelAvailable;
return null; |
| File |
|---|
| TestFallbackAwareWroModelFactory.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Attribute |
| If statement |
| Method invocation |
| Method signature |
| Return statement |
| Chunk |
|---|
| Conflicting content |
|---|
});
xmlModelFactory = new XmlModelFactory() {
@Override
<<<<<<< HEAD
protected ResourceLocator getModelResourceLocator() {
return locator;
}
};
}
=======
protected InputStream getModelResourceAsStream()
throws IOException {
if (flag) {
return super.getModelResourceAsStream();
}
flag = !flag;
return null;
}
};
}
@After
public void tearDown() {
Context.unset();
fallbackAwareModelFactory.destroy();
xmlModelFactory.destroy();
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Test
public void testLastValidIsOK() {
Assert.assertNotNull(fallbackAwareModelFactory.create()); |
| Solution content |
|---|
});
xmlModelFactory = new XmlModelFactory() {
@Override
protected ResourceLocator getModelResourceLocator() {
return locator;
}
};
}
@Test
public void testLastValidIsOK() {
Assert.assertNotNull(fallbackAwareModelFactory.create()); |
| File |
|---|
| TestFallbackAwareWroModelFactory.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Annotation |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
fallbackAwareModelFactory.destroy();
Assert.assertNotNull(fallbackAwareModelFactory.create());
}
<<<<<<< HEAD
=======
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Test(expected = WroRuntimeException.class)
public void testWithoutLastValidThrowsException() {
isModelAvailable = false; |
| Solution content |
|---|
fallbackAwareModelFactory.destroy();
Assert.assertNotNull(fallbackAwareModelFactory.create());
}
@Test(expected = WroRuntimeException.class)
public void testWithoutLastValidThrowsException() {
isModelAvailable = false; |
| File |
|---|
| TestFallbackAwareWroModelFactory.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Blank |
| Chunk |
|---|
| Conflicting content |
|---|
final WroModel changedModel = transformer.transform(model);
LOG.debug("model: {}", changedModel);
<<<<<<< HEAD
final String resultPathPrefix = String.format("%s%s/expander/subfolder", ClasspathResourceLocator.PREFIX, WroUtil.toPackageAsFolder(getClass()));
=======
final String resultPathPrefix = String.format("%s%s/expander/subfolder", ClasspathUriLocator.PREFIX,
WroUtil.toPackageAsFolder(getClass()));
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
Assert.assertEquals(2, changedModel.getGroupByName("group").getResources().size());
Assert.assertEquals(resultPathPrefix + "/folder1/script1.js",
changedModel.getGroupByName("group").getResources().get(0).getUri()); |
| Solution content |
|---|
final WroModel changedModel = transformer.transform(model);
LOG.debug("model: {}", changedModel);
final String resultPathPrefix = String.format("%s%s/expander/subfolder", ClasspathResourceLocator.PREFIX, WroUtil.toPackageAsFolder(getClass()));
Assert.assertEquals(2, changedModel.getGroupByName("group").getResources().size());
Assert.assertEquals(resultPathPrefix + "/folder1/script1.js",
changedModel.getGroupByName("group").getResources().get(0).getUri()); |
| File |
|---|
| TestWildcardExpanderModelTransformer.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
factory.create();
}
}
};
public void recursiveGroupThrowsException() {
factory = new XmlModelFactory() {
@Override
<<<<<<< HEAD
protected ResourceLocator getModelResourceLocator() {
return new UrlResourceLocator(Thread.currentThread().getContextClassLoader().getResource("recursive.xml"));
};
};
factory.create();
}
=======
protected InputStream getModelResourceAsStream() {
return Thread.currentThread().getContextClassLoader().getResourceAsStream("recursive.xml");
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Test
public void testWithUpdatePeriodSet() {
Context.get().getConfig().setCacheUpdatePeriod(1); |
| Solution content |
|---|
public void recursiveGroupThrowsException() {
factory = new XmlModelFactory() {
@Override
protected ResourceLocator getModelResourceLocator() {
return new UrlResourceLocator(Thread.currentThread().getContextClassLoader().getResource("recursive.xml"));
};
};
factory.create();
}
@Test
public void testWithUpdatePeriodSet() {
Context.get().getConfig().setCacheUpdatePeriod(1); |
| File |
|---|
| TestXmlModelFactory.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method declaration |
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
// will create an empty model
assertEquals(new WroModel(), factory.create());
}
<<<<<<< HEAD
/**
* When a wildcard uri is used to import wro.xml, the resulted xml to parse won't be valid, because it will contain
* merged content.
*/
=======
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Test(expected = SAXParseException.class)
public void testWildcardImports() throws Throwable {
try { |
| Solution content |
|---|
// will create an empty model
assertEquals(new WroModel(), factory.create());
}
/**
* When a wildcard uri is used to import wro.xml, the resulted xml to parse won't be valid, because it will contain
* merged content.
*/
@Test(expected = SAXParseException.class)
public void testWildcardImports() throws Throwable {
try { |
| File |
|---|
| TestXmlModelFactory.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Comment |
| Chunk |
|---|
| Conflicting content |
|---|
/**
<<<<<<< HEAD
/**
* Copyright Alex Objelean
*/
package ro.isdc.wro.model.group;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Random;
import java.util.concurrent.Callable;
import org.junit.Assert;
import org.junit.Test;
import ro.isdc.wro.model.resource.Resource;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.util.WroTestUtils;
* Test class for {@link Group}.
*
* @author Alex Objelean
*/
public class TestGroup {
@Test(expected = NullPointerException.class)
public void cannotCreateGroupWithNullName() {
new Group(null);
}
@Test
public void shouldReturnSameGroupWhenGroupHasNoResources() {
final Group group = new Group("group");
Group newGroup = group.collectResourcesOfType(ResourceType.CSS);
Assert.assertEquals(group, newGroup);
newGroup = group.collectResourcesOfType(ResourceType.JS);
Assert.assertEquals(group, newGroup);
}
@Test
public void shouldCollectSearchedResources() {
final Group group = new Group("group");
group.addResource(Resource.create("1", ResourceType.CSS));
group.addResource(Resource.create("2", ResourceType.JS));
group.addResource(Resource.create("3", ResourceType.JS));
Group newGroup = group.collectResourcesOfType(ResourceType.CSS);
Assert.assertEquals(1, newGroup.getResources().size());
newGroup = group.collectResourcesOfType(ResourceType.JS);
Assert.assertEquals(2, newGroup.getResources().size());
}
@Test(expected = NullPointerException.class)
public void cannotPassNullResourceType() {
final Group group = new Group("group");
group.hasResourcesOfType(null);
}
@Test
public void testNoResorucesOfTypeFound() {
final Group group = new Group("group");
Assert.assertEquals(false, group.hasResourcesOfType(ResourceType.CSS));
Assert.assertEquals(false, group.hasResourcesOfType(ResourceType.JS));
}
@Test
public void testResoruceOfTypeFound() {
final Group group = new Group("group");
final List |
| Solution content |
|---|
/**
* Copyright Alex Objelean
*/
package ro.isdc.wro.model.group;
import static org.junit.Assert.assertEquals;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Random;
import java.util.concurrent.Callable;
import org.junit.Assert;
import org.junit.BeforeClass;
import org.junit.Test;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.model.resource.Resource;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.util.WroTestUtils;
/**
* Test class for {@link Group}.
*
* @author Alex Objelean
*/
public class TestGroup {
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@Test(expected = NullPointerException.class)
public void cannotCreateGroupWithNullName() {
new Group(null);
}
@Test
public void shouldReturnSameGroupWhenGroupHasNoResources() {
final Group group = new Group("group");
Group newGroup = group.collectResourcesOfType(ResourceType.CSS);
Assert.assertEquals(group, newGroup);
newGroup = group.collectResourcesOfType(ResourceType.JS);
Assert.assertEquals(group, newGroup);
}
@Test
public void shouldCollectSearchedResources() {
final Group group = new Group("group");
group.addResource(Resource.create("1", ResourceType.CSS));
group.addResource(Resource.create("2", ResourceType.JS));
group.addResource(Resource.create("3", ResourceType.JS));
Group newGroup = group.collectResourcesOfType(ResourceType.CSS);
Assert.assertEquals(1, newGroup.getResources().size());
newGroup = group.collectResourcesOfType(ResourceType.JS);
Assert.assertEquals(2, newGroup.getResources().size());
}
@Test(expected = NullPointerException.class)
public void cannotPassNullResourceType() {
final Group group = new Group("group");
group.hasResourcesOfType(null);
}
@Test
public void testNoResorucesOfTypeFound() {
final Group group = new Group("group");
Assert.assertEquals(false, group.hasResourcesOfType(ResourceType.CSS));
Assert.assertEquals(false, group.hasResourcesOfType(ResourceType.JS));
}
@Test
public void testResoruceOfTypeFound() {
final Group group = new Group("group");
final List |
| File |
|---|
| TestGroup.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Class declaration |
| Comment |
| Import |
| Package declaration |
| Chunk |
|---|
| Conflicting content |
|---|
*/ package ro.isdc.wro.model.group.processor; <<<<<<< HEAD import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import java.io.ByteArrayInputStream; ======= import static org.junit.Assert.assertEquals; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 import java.io.IOException; import java.io.Reader; import java.io.Writer; |
| Solution content |
|---|
*/ package ro.isdc.wro.model.group.processor; import static org.junit.Assert.assertEquals; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import java.io.IOException; import java.io.Reader; import java.io.Writer; |
| File |
|---|
| TestGroupsProcessor.java |
| Developer's decision |
|---|
| Version 2 |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
import ro.isdc.wro.model.group.Group; import ro.isdc.wro.model.resource.Resource; import ro.isdc.wro.model.resource.ResourceType; <<<<<<< HEAD import ro.isdc.wro.model.resource.locator.ResourceLocator; import ro.isdc.wro.model.resource.locator.factory.AbstractResourceLocatorFactory; import ro.isdc.wro.model.resource.locator.factory.ResourceLocatorFactory; import ro.isdc.wro.model.resource.locator.support.AbstractResourceLocator; import ro.isdc.wro.model.resource.processor.ResourceProcessor; ======= import ro.isdc.wro.model.resource.locator.factory.SimpleUriLocatorFactory; import ro.isdc.wro.model.resource.locator.factory.UriLocatorFactory; import ro.isdc.wro.model.resource.processor.ResourcePreProcessor; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 import ro.isdc.wro.model.resource.processor.decorator.ProcessorDecorator; import ro.isdc.wro.model.resource.processor.factory.ProcessorsFactory; import ro.isdc.wro.model.resource.processor.factory.SimpleProcessorsFactory; |
| Solution content |
|---|
import ro.isdc.wro.model.group.Group; import ro.isdc.wro.model.resource.Resource; import ro.isdc.wro.model.resource.ResourceType; import ro.isdc.wro.model.resource.locator.ResourceLocator; import ro.isdc.wro.model.resource.locator.factory.AbstractResourceLocatorFactory; import ro.isdc.wro.model.resource.locator.factory.ResourceLocatorFactory; import ro.isdc.wro.model.resource.locator.support.AbstractResourceLocator; import ro.isdc.wro.model.resource.processor.ResourceProcessor; import ro.isdc.wro.model.resource.processor.decorator.ProcessorDecorator; import ro.isdc.wro.model.resource.processor.factory.ProcessorsFactory; import ro.isdc.wro.model.resource.processor.factory.SimpleProcessorsFactory; |
| File |
|---|
| TestGroupsProcessor.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
final Group group = new Group(groupName).addResource(Resource.create("1.js")).addResource(Resource.create("2.js"));
final WroModelFactory modelFactory = WroTestUtils.simpleModelFactory(new WroModel().addGroup(group));
// the locator which returns the name of the resource as its content
<<<<<<< HEAD
final ResourceLocatorFactory locatorFactory = new AbstractResourceLocatorFactory() {
public ResourceLocator getLocator(final String uri) {
return new AbstractResourceLocator() {
public InputStream getInputStream()
throws IOException {
return new ByteArrayInputStream(uri.getBytes());
}
};
}
};
final ResourceProcessor failingPreProcessor = new ResourceProcessor() {
=======
final UriLocatorFactory locatorFactory = new SimpleUriLocatorFactory().addLocator(WroTestUtils.createResourceMockingLocator());
final ResourcePreProcessor failingPreProcessor = new ResourcePreProcessor() {
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
throw new IOException("BOOM!"); |
| Solution content |
|---|
final Group group = new Group(groupName).addResource(Resource.create("1.js")).addResource(Resource.create("2.js"));
final WroModelFactory modelFactory = WroTestUtils.simpleModelFactory(new WroModel().addGroup(group));
// the locator which returns the name of the resource as its content
final ResourceLocatorFactory locatorFactory = new AbstractResourceLocatorFactory() {
public ResourceLocator getLocator(final String uri) {
return new AbstractResourceLocator() {
public InputStream getInputStream()
throws IOException {
return new ByteArrayInputStream(uri.getBytes());
}
};
}
};
final ResourceProcessor failingPreProcessor = new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
throw new IOException("BOOM!"); |
| File |
|---|
| TestGroupsProcessor.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
final String actual = victim.process(key);
WroTestUtils.compare("1.js\n2.js", actual);
}
<<<<<<< HEAD
@Test
public void shouldApplyOnlyEligibleProcessors() throws Exception {
=======
@Test
public void shouldApplyOnlyEligibleProcessors()
throws Exception {
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
final CssMinProcessor cssMinProcessor = Mockito.spy(new CssMinProcessor());
final BaseWroManagerFactory managerFactory = new BaseWroManagerFactory();
managerFactory.setProcessorsFactory(new SimpleProcessorsFactory().addPostProcessor(cssMinProcessor)); |
| Solution content |
|---|
final String actual = victim.process(key);
WroTestUtils.compare("1.js\n2.js", actual);
}
@Test
public void shouldApplyOnlyEligibleProcessors()
throws Exception {
final CssMinProcessor cssMinProcessor = Mockito.spy(new CssMinProcessor());
final BaseWroManagerFactory managerFactory = new BaseWroManagerFactory();
managerFactory.setProcessorsFactory(new SimpleProcessorsFactory().addPostProcessor(cssMinProcessor)); |
| File |
|---|
| TestGroupsProcessor.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Annotation |
| Method signature |
| Chunk |
|---|
| Conflicting content |
|---|
managerFactory.setProcessorsFactory(new SimpleProcessorsFactory().addPostProcessor(cssMinProcessor));
managerFactory.setModelFactory(WroTestUtils.simpleModelFactory(new WroModel().addGroup(new Group("g1").addResource(Resource.create("/script.js")))));
initVictim(new WroConfiguration(), managerFactory);
<<<<<<< HEAD
victim.process(new CacheKey("g1", ResourceType.JS, true));
verify(cssMinProcessor, Mockito.never()).process(Mockito.any(Resource.class), Mockito.any(Reader.class), Mockito.any(Writer.class));
}
@Test
public void shouldApplyEligibleMinimizeAwareProcessors() throws Exception {
=======
victim.process(new CacheKey("g1", ResourceType.JS, true));
verify(cssMinProcessor, Mockito.never()).process(Mockito.any(Resource.class), Mockito.any(Reader.class),
Mockito.any(Writer.class));
}
@Test
public void shouldApplyEligibleMinimizeAwareProcessors()
throws Exception {
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
final JSMinProcessor cssMinProcessor = Mockito.spy(new JSMinProcessor());
final BaseWroManagerFactory managerFactory = new BaseWroManagerFactory();
managerFactory.setProcessorsFactory(new SimpleProcessorsFactory().addPostProcessor(cssMinProcessor)); |
| Solution content |
|---|
managerFactory.setProcessorsFactory(new SimpleProcessorsFactory().addPostProcessor(cssMinProcessor));
managerFactory.setModelFactory(WroTestUtils.simpleModelFactory(new WroModel().addGroup(new Group("g1").addResource(Resource.create("/script.js")))));
initVictim(new WroConfiguration(), managerFactory);
victim.process(new CacheKey("g1", ResourceType.JS, true));
verify(cssMinProcessor, Mockito.never()).process(Mockito.any(Resource.class), Mockito.any(Reader.class),
Mockito.any(Writer.class));
}
@Test
public void shouldApplyEligibleMinimizeAwareProcessors()
throws Exception {
final JSMinProcessor cssMinProcessor = Mockito.spy(new JSMinProcessor());
final BaseWroManagerFactory managerFactory = new BaseWroManagerFactory();
managerFactory.setProcessorsFactory(new SimpleProcessorsFactory().addPostProcessor(cssMinProcessor)); |
| File |
|---|
| TestGroupsProcessor.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Annotation |
| Method invocation |
| Method signature |
| Chunk |
|---|
| Conflicting content |
|---|
managerFactory.setProcessorsFactory(new SimpleProcessorsFactory().addPostProcessor(cssMinProcessor));
managerFactory.setModelFactory(WroTestUtils.simpleModelFactory(new WroModel().addGroup(new Group("g1").addResource(Resource.create("/script.js")))));
initVictim(new WroConfiguration(), managerFactory);
<<<<<<< HEAD
victim.process(new CacheKey("g1", ResourceType.JS, true));
verify(cssMinProcessor).process(Mockito.any(Resource.class), Mockito.any(Reader.class), Mockito.any(Writer.class));
}
=======
victim.process(new CacheKey("g1", ResourceType.JS, true));
verify(cssMinProcessor).process(Mockito.any(Resource.class), Mockito.any(Reader.class), Mockito.any(Writer.class));
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Test
public void shouldCleanupProperlyWhenDestroyed() {
PreProcessorExecutor mockPreProcessorExecutor = mock(PreProcessorExecutor.class); |
| Solution content |
|---|
managerFactory.setProcessorsFactory(new SimpleProcessorsFactory().addPostProcessor(cssMinProcessor));
managerFactory.setModelFactory(WroTestUtils.simpleModelFactory(new WroModel().addGroup(new Group("g1").addResource(Resource.create("/script.js")))));
initVictim(new WroConfiguration(), managerFactory);
victim.process(new CacheKey("g1", ResourceType.JS, true));
verify(cssMinProcessor).process(Mockito.any(Resource.class), Mockito.any(Reader.class), Mockito.any(Writer.class));
}
@Test
public void shouldCleanupProperlyWhenDestroyed() {
PreProcessorExecutor mockPreProcessorExecutor = mock(PreProcessorExecutor.class); |
| File |
|---|
| TestGroupsProcessor.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
import javax.servlet.http.HttpServletResponse; import org.junit.After; <<<<<<< HEAD import org.junit.Assert; ======= import org.junit.AfterClass; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; |
| Solution content |
|---|
import javax.servlet.http.HttpServletResponse; import org.junit.After; import org.junit.AfterClass; import org.junit.Assert; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; |
| File |
|---|
| TestInjectorBuilder.java |
| Developer's decision |
|---|
| Concatenation |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
=======
sample.processorsFactory.getPostProcessors();
verify(mockProcessorsFactory).getPostProcessors();
<<<<<<< HEAD
sample.resourceLocatorFactory.getLocator("");
verify(mockLocatorFactory).getLocator("");
sample.metaDataFactory.create();
verify(mockMetaDataFactory).create();
assertSame(mockProcessorsFactory, AbstractDecorator.getOriginalDecoratedObject(sample.processorsFactory));
assertSame(mockLocatorFactory, AbstractDecorator.getOriginalDecoratedObject(sample.resourceLocatorFactory));
sample.uriLocatorFactory.getInstance("");
verify(mockLocatorFactory).getInstance("");
sample.metaDataFactory.create();
verify(mockMetaDataFactory).create();
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
assertNotNull(sample.callbackRegistry);
assertSame(injector, sample.injector);
assertNotNull(sample.groupsProcessor); |
| Solution content |
|---|
sample.processorsFactory.getPostProcessors();
verify(mockProcessorsFactory).getPostProcessors();
sample.resourceLocatorFactory.getLocator("");
verify(mockLocatorFactory).getLocator("");
sample.metaDataFactory.create();
verify(mockMetaDataFactory).create();
assertSame(mockProcessorsFactory, AbstractDecorator.getOriginalDecoratedObject(sample.processorsFactory));
assertSame(mockLocatorFactory, AbstractDecorator.getOriginalDecoratedObject(sample.resourceLocatorFactory));
assertNotNull(sample.callbackRegistry);
assertSame(injector, sample.injector);
assertNotNull(sample.groupsProcessor); |
| File |
|---|
| TestInjectorBuilder.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
import java.util.List;
//init executor
*/
import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
when(mockRequest.getRequestURL()).thenReturn(new StringBuffer(""));
import java.io.Writer;
import java.util.ArrayList;
when(mockRequest.getServletPath()).thenReturn("");
<<<<<<< HEAD
/**
* Copyright wro4j@2011
*/
package ro.isdc.wro.model.group.processor;
import static org.mockito.Mockito.when;
import static org.mockito.MockitoAnnotations.initMocks;
import static ro.isdc.wro.util.WroTestUtils.compare;
import java.io.ByteArrayInputStream;
initMocks(this);
useFailingPreProcessor();
}
import javax.servlet.FilterConfig;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.io.IOUtils;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ro.isdc.wro.WroRuntimeException;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.config.jmx.WroConfiguration;
import ro.isdc.wro.manager.factory.BaseWroManagerFactory;
import ro.isdc.wro.manager.factory.WroManagerFactory;
import ro.isdc.wro.model.group.Group;
import ro.isdc.wro.model.resource.Resource;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.model.resource.locator.ResourceLocator;
import ro.isdc.wro.model.resource.locator.factory.AbstractResourceLocatorFactory;
import ro.isdc.wro.model.resource.locator.factory.ResourceLocatorFactory;
import ro.isdc.wro.model.resource.locator.support.AbstractResourceLocator;
import ro.isdc.wro.model.resource.processor.ResourceProcessor;
import ro.isdc.wro.model.resource.processor.decorator.CopyrightKeeperProcessorDecorator;
import ro.isdc.wro.model.resource.processor.factory.SimpleProcessorsFactory;
import ro.isdc.wro.model.resource.processor.impl.js.JSMinProcessor;
import ro.isdc.wro.util.StopWatch;
import ro.isdc.wro.util.WroTestUtils;
import ro.isdc.wro.util.WroUtil;
/**
* @author Alex Objelean
*/
public class TestPreProcessorExecutor {
private static final Logger LOG = LoggerFactory.getLogger(TestPreProcessorExecutor.class);
@Mock
private HttpServletRequest mockRequest;
@Mock
private HttpServletResponse mockResponse;
@Mock
private FilterConfig mockFilterConfig;
@Mock
private ServletContext mockServletContext;
@Mock
private ResourceLocatorFactory mockLocatorFactory;
@Mock
private ResourceLocator mockLocator;
private PreProcessorExecutor victim;
@Before
public void setUp()
throws Exception {
when(mockFilterConfig.getServletContext()).thenReturn(mockServletContext);
when(mockLocatorFactory.locate(Mockito.anyString())).thenReturn(WroUtil.EMPTY_STREAM);
when(mockLocator.getInputStream()).thenReturn(WroUtil.EMPTY_STREAM);
when(mockLocatorFactory.getLocator(Mockito.anyString())).thenReturn(mockLocator);
final Context context = Context.webContext(mockRequest, mockResponse, mockFilterConfig);
Context.set(context);
//force parallel execution
Context.get().getConfig().setParallelPreprocessing(true);
Context.get().getConfig().setIgnoreFailingProcessor(true);
initExecutor();
}
private WroManagerFactory createWroManager(final ResourceProcessor... preProcessors) {
final SimpleProcessorsFactory processorsFactory = new SimpleProcessorsFactory();
for (final ResourceProcessor resourcePreProcessor : preProcessors) {
processorsFactory.addPreProcessor(resourcePreProcessor);
}
final BaseWroManagerFactory wroManagerFactory = new BaseWroManagerFactory();
wroManagerFactory.setProcessorsFactory(processorsFactory);
wroManagerFactory.setLocatorFactory(mockLocatorFactory);
return wroManagerFactory;
}
/**
* @param wroManagerFactory
*/
private void initExecutor(final ResourceProcessor... preProcessors) {
final WroManagerFactory wroManagerFactory = createWroManager(preProcessors);
final Injector injector = InjectorBuilder.create(wroManagerFactory).build();
victim = new PreProcessorExecutor();
injector.inject(victim);
}
@Test(expected = NullPointerException.class)
public void cannotAcceptNullArguments()
throws Exception {
victim.processAndMerge(null, true);
}
/**
* Creates a slow pre processor which sleeps for a given amount of milliseconds and doesn't change the processed
* content.
*/
private ResourceProcessor createSlowPreProcessor(final long time) {
return new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
try {
IOUtils.copy(reader, writer);
Thread.sleep(time);
} catch (final InterruptedException e) {
}
}
};
}
private ResourceProcessor createProcessorUsingMissingResource() {
return new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
LOG.debug("executing processor which will throw IOException");
throw new IOException("Invalid resource found!");
}
};
}
private ResourceProcessor createProcessorWhichFails() {
return new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
LOG.debug("executing failing processor...");
throw new WroRuntimeException("Boom!");
}
};
}
@Test
public void processEmptyList()
throws Exception {
final List |
| Solution content |
|---|
/**
* Copyright wro4j@2011
*/
package ro.isdc.wro.model.group.processor;
import static org.mockito.Mockito.when;
import static org.mockito.MockitoAnnotations.initMocks;
import static ro.isdc.wro.util.WroTestUtils.compare;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.Reader;
import java.io.Writer;
for (final ResourceProcessor resourcePreProcessor : preProcessors) {
}
import java.util.ArrayList;
import java.util.List;
import javax.servlet.FilterConfig;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.io.IOUtils;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ro.isdc.wro.WroRuntimeException;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.config.jmx.WroConfiguration;
import ro.isdc.wro.manager.factory.BaseWroManagerFactory;
import ro.isdc.wro.manager.factory.WroManagerFactory;
import ro.isdc.wro.model.group.Group;
import ro.isdc.wro.model.resource.Resource;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.model.resource.locator.ResourceLocator;
import ro.isdc.wro.model.resource.locator.factory.AbstractResourceLocatorFactory;
import ro.isdc.wro.model.resource.locator.factory.ResourceLocatorFactory;
import ro.isdc.wro.model.resource.locator.support.AbstractResourceLocator;
import ro.isdc.wro.model.resource.processor.ResourceProcessor;
import ro.isdc.wro.model.resource.processor.decorator.CopyrightKeeperProcessorDecorator;
import ro.isdc.wro.model.resource.processor.factory.SimpleProcessorsFactory;
import ro.isdc.wro.model.resource.processor.impl.js.JSMinProcessor;
import ro.isdc.wro.util.StopWatch;
import ro.isdc.wro.util.WroTestUtils;
import ro.isdc.wro.util.WroUtil;
/**
* @author Alex Objelean
*/
public class TestPreProcessorExecutor {
private static final Logger LOG = LoggerFactory.getLogger(TestPreProcessorExecutor.class);
@Mock
private HttpServletRequest mockRequest;
@Mock
private HttpServletResponse mockResponse;
@Mock
private FilterConfig mockFilterConfig;
@Mock
private ServletContext mockServletContext;
@Mock
private ResourceLocatorFactory mockLocatorFactory;
@Mock
private ResourceLocator mockLocator;
private PreProcessorExecutor victim;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp()
throws Exception {
initMocks(this);
when(mockRequest.getRequestURL()).thenReturn(new StringBuffer(""));
when(mockRequest.getServletPath()).thenReturn("");
when(mockFilterConfig.getServletContext()).thenReturn(mockServletContext);
when(mockLocatorFactory.locate(Mockito.anyString())).thenReturn(WroUtil.EMPTY_STREAM);
when(mockLocator.getInputStream()).thenReturn(WroUtil.EMPTY_STREAM);
when(mockLocatorFactory.getLocator(Mockito.anyString())).thenReturn(mockLocator);
final Context context = Context.webContext(mockRequest, mockResponse, mockFilterConfig);
Context.set(context);
// force parallel execution
Context.get().getConfig().setParallelPreprocessing(true);
Context.get().getConfig().setIgnoreFailingProcessor(true);
initExecutor();
}
private WroManagerFactory createWroManager(final ResourceProcessor... preProcessors) {
final SimpleProcessorsFactory processorsFactory = new SimpleProcessorsFactory();
processorsFactory.addPreProcessor(resourcePreProcessor);
}
final BaseWroManagerFactory wroManagerFactory = new BaseWroManagerFactory();
config.setIgnoreMissingResources(false);
wroManagerFactory.setProcessorsFactory(processorsFactory);
wroManagerFactory.setLocatorFactory(mockLocatorFactory);
return wroManagerFactory;
}
/**
* @param wroManagerFactory
*/
private void initExecutor(final ResourceProcessor... preProcessors) {
final WroManagerFactory wroManagerFactory = createWroManager(preProcessors);
final Injector injector = InjectorBuilder.create(wroManagerFactory).build();
victim = new PreProcessorExecutor();
injector.inject(victim);
}
@Test(expected = NullPointerException.class)
public void cannotAcceptNullArguments()
throws Exception {
victim.processAndMerge(null, true);
}
/**
* Creates a slow pre processor which sleeps for a given amount of milliseconds and doesn't change the processed
* content.
*/
private ResourceProcessor createSlowPreProcessor(final long time) {
return new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
try {
IOUtils.copy(reader, writer);
Thread.sleep(time);
} catch (final InterruptedException e) {
}
}
};
}
private ResourceProcessor createProcessorUsingMissingResource() {
return new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
LOG.debug("executing processor which will throw IOException");
throw new IOException("Invalid resource found!");
}
};
}
private ResourceProcessor createProcessorWhichFails() {
return new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
LOG.debug("executing failing processor...");
throw new WroRuntimeException("Boom!");
}
};
}
@Test
public void processEmptyList()
throws Exception {
final List |
| File |
|---|
| TestPreProcessorExecutor.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Class declaration |
| Comment |
| Import |
| Package declaration |
| Chunk |
|---|
| Conflicting content |
|---|
import ro.isdc.wro.WroRuntimeException; import ro.isdc.wro.config.Context; <<<<<<< HEAD import ro.isdc.wro.model.resource.locator.ResourceLocator; import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator; ======= import ro.isdc.wro.model.resource.locator.ClasspathUriLocator; import ro.isdc.wro.model.resource.locator.ServletContextUriLocator; import ro.isdc.wro.model.resource.locator.UriLocator; import ro.isdc.wro.model.resource.locator.UrlUriLocator; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 import ro.isdc.wro.model.resource.locator.support.LocatorProvider; import ro.isdc.wro.model.resource.locator.support.ServletContextResourceLocator; import ro.isdc.wro.model.resource.locator.support.UrlResourceLocator; |
| Solution content |
|---|
import ro.isdc.wro.WroRuntimeException; import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.locator.ResourceLocator; import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator; import ro.isdc.wro.model.resource.locator.support.LocatorProvider; import ro.isdc.wro.model.resource.locator.support.ServletContextResourceLocator; import ro.isdc.wro.model.resource.locator.support.UrlResourceLocator; |
| File |
|---|
| TestConfigurableLocatorFactory.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
import org.junit.BeforeClass; import org.junit.Test; <<<<<<< HEAD import ro.isdc.wro.model.resource.locator.support.ServletContextResourceLocator; import ro.isdc.wro.model.resource.locator.support.ServletContextResourceLocator.LocatorStrategy; ======= import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.locator.ServletContextUriLocator; import ro.isdc.wro.model.resource.locator.ServletContextUriLocator.LocatorStrategy; import ro.isdc.wro.model.resource.locator.UriLocator; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 /** |
| Solution content |
|---|
import ro.isdc.wro.model.resource.locator.support.ServletContextResourceLocator; import org.junit.BeforeClass; import org.junit.Test; import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.locator.support.ServletContextResourceLocator.LocatorStrategy; /** |
| File |
|---|
| TestDefaultUriLocatorFactory.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
public void setUp() {
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
* @author Alex Objelean
*/
public class TestDefaultUriLocatorFactory {
<<<<<<< HEAD
private DefaultResourceLocatorFactory victim;
=======
private DefaultUriLocatorFactory victim;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@Before
victim = new DefaultResourceLocatorFactory(); |
| Solution content |
|---|
* @author Alex Objelean
*/
public class TestDefaultUriLocatorFactory {
private DefaultResourceLocatorFactory victim;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp() {
victim = new DefaultResourceLocatorFactory(); |
| File |
|---|
| TestDefaultUriLocatorFactory.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
import org.apache.commons.lang3.Validate; import org.junit.After; <<<<<<< HEAD:wro4j-core/src/test/java/ro/isdc/wro/model/resource/locator/support/TestServletContextResourceLocator.java import org.junit.Assert; ======= import org.junit.AfterClass; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8:wro4j-core/src/test/java/ro/isdc/wro/model/resource/locator/TestServletContextUriLocator.java import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; |
| Solution content |
|---|
import org.apache.commons.lang3.Validate; import org.junit.After; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; |
| File |
|---|
| TestServletContextResourceLocator.java |
| Developer's decision |
|---|
| None |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
Context.set(context, config);
}
<<<<<<< HEAD:wro4j-core/src/test/java/ro/isdc/wro/model/resource/locator/support/TestServletContextResourceLocator.java
private void useLocator(final ServletContextResourceLocator locator) {
Validate.notNull(locator);
this.victim = locator;
new InjectorBuilder().build().inject(locator);
=======
@After
public void tearDown() {
Context.unset();
}
/**
* Initialize the locator by injecting all required fields.
*/
private void initLocator(final ServletContextUriLocator locator) {
final Injector injector = InjectorBuilder.create(new BaseWroManagerFactory()).build();
injector.inject(locator);
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8:wro4j-core/src/test/java/ro/isdc/wro/model/resource/locator/TestServletContextUriLocator.java
}
@Test(expected = NullPointerException.class) |
| Solution content |
|---|
Context.set(context, config);
}
@After
public void tearDown() {
Context.unset();
}
private void useLocator(final ServletContextResourceLocator locator) {
Validate.notNull(locator);
this.victim = locator;
new InjectorBuilder().build().inject(locator);
}
@Test(expected = NullPointerException.class) |
| File |
|---|
| TestServletContextResourceLocator.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Comment |
| Method declaration |
| Method invocation |
| Method signature |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
import org.junit.BeforeClass; import org.junit.Test; <<<<<<< HEAD import ro.isdc.wro.model.resource.locator.ResourceLocator; import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator; ======= import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.locator.ClasspathUriLocator; import ro.isdc.wro.model.resource.locator.UriLocator; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 import ro.isdc.wro.util.WroUtil; |
| Solution content |
|---|
}
@Test
@Test(expected = IOException.class)
public void testWildcardPresent4() {
locator.locateStream(null, null);
}
/**
* Copyright Alex Objelean
*/
package ro.isdc.wro.model.resource.locator.wildcard;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.model.resource.locator.ResourceLocator;
import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator;
import ro.isdc.wro.util.WroUtil;
/**
* @author Alex Objelean
*/
public class TestDefaultWildcardStreamLocator {
private WildcardStreamLocator locator;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp() {
locator = new DefaultWildcardStreamLocator();
}
@Test
public void testNoWildcardPresent1() {
assertFalse(locator.hasWildcard("test/resource.css"));
}
@Test
public void testNoWildcardPresent2() {
assertFalse(locator.hasWildcard("test/resource[a].css"));
}
@Test
public void testWildcardPresent1() {
assertTrue(locator.hasWildcard("test/*.css"));
}
@Test
public void testWildcardPresent2() {
assertTrue(locator.hasWildcard("test/test.?ss"));
}
@Test
public void testWildcardPresent3() {
assertTrue(locator.hasWildcard("test/**.???"));
assertFalse(locator.hasWildcard("http://yui.yahooapis.com/combo?2.7.0/build/reset-fonts-grids/reset-fonts-grids.css&2.7.0/build/base/base-min.css&2.7.0/build/assets/skins/sam/skin.css"));
}
@Test(expected = IOException.class)
public void cannotPassNullArgument()
throws IOException {
public void cannotPassNullFolder()
throws IOException {
locator.locateStream("/resource/*.css", null);
}
@Test(expected = IOException.class)
public void cannotProcessUriWithoutWildcard()
throws IOException {
final File folder = new File(ClassLoader.getSystemResource("").getFile());
locator.locateStream("/resource/noWildcard.css", folder);
}
@Test
public void testWithValidFolder()
throws IOException {
final File folder = new File(ClassLoader.getSystemResource("").getFile());
locator.locateStream("/resource/*.css", folder);
}
@Test(expected = IOException.class)
public void testWithInvalidFolder()
throws IOException {
final File folder = new File(ClassLoader.getSystemResource("1.css").getFile());
locator.locateStream("/resource/*.css", folder);
}
@Test
public void testWildcardResourcesOrderedAlphabetically()
throws IOException {
locator = new DefaultWildcardStreamLocator() {
@Override
void triggerWildcardExpander(final Collection |
| File |
|---|
| TestDefaultWildcardStreamLocator.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
import org.slf4j.Logger; import org.slf4j.LoggerFactory; <<<<<<< HEAD import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator; ======= import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.locator.ClasspathUriLocator; import ro.isdc.wro.model.resource.locator.UriLocator; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 /** |
| Solution content |
|---|
import org.slf4j.Logger; import org.slf4j.LoggerFactory; import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator; /** |
| File |
|---|
| TestJarWildcardStreamLocator.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
public void shouldFindNoResourcesWhenNoneExist()
throws IOException {
final ThreadLocal |
| Solution content |
|---|
}.getInputStream();
Assert.assertTrue(filenameList.isEmpty());
final Collection |
| File |
|---|
| TestJarWildcardStreamLocator.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Comment |
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
import org.junit.BeforeClass; import org.junit.Test; <<<<<<< HEAD ======= import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.ResourceType; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 import ro.isdc.wro.model.resource.processor.impl.CommentStripperProcessor; import ro.isdc.wro.util.WroTestUtils; |
| Solution content |
|---|
import org.junit.BeforeClass; import org.junit.Test; import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.processor.impl.CommentStripperProcessor; import ro.isdc.wro.util.WroTestUtils; |
| File |
|---|
| TestCommentStripperProcessor.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
<<<<<<< HEAD
=======
* @author Ivar Conradi Østhus
*/
public class TestCommentStripperProcessor {
private final ResourceProcessor processor = new CommentStripperProcessor();
private final ResourcePreProcessor processor = new CommentStripperProcessor();
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Test
public void testFromFolder()
throws Exception { |
| Solution content |
|---|
* @author Ivar Conradi Østhus
*/
public class TestCommentStripperProcessor {
private final ResourceProcessor processor = new CommentStripperProcessor();
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@Test
public void testFromFolder()
throws Exception { |
| File |
|---|
| TestCommentStripperProcessor.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Method declaration |
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
* @created Created on Aug 15, 2010
*/
public class TestConformColorsCssProcessor {
<<<<<<< HEAD
private ResourceProcessor processor;
=======
private ResourcePreProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Before
public void setUp() {
processor = new ConformColorsCssProcessor(); |
| Solution content |
|---|
* @created Created on Aug 15, 2010
*/
public class TestConformColorsCssProcessor {
private ResourceProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp() {
processor = new ConformColorsCssProcessor(); |
| File |
|---|
| TestConformColorsCssProcessor.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
* @author Alex Objelean
*/
public class TestConsoleStripperProcessor {
<<<<<<< HEAD
private final ResourceProcessor processor = new ConsoleStripperProcessor();
=======
private final ResourcePreProcessor processor = new ConsoleStripperProcessor();
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Test
public void testFromFolder()
throws Exception { |
| Solution content |
|---|
* @author Alex Objelean
*/
public class TestConsoleStripperProcessor {
private final ResourceProcessor processor = new ConsoleStripperProcessor();
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Test
public void testFromFolder()
throws Exception { |
| File |
|---|
| TestConsoleStripperProcessor.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Method declaration |
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
});
import ro.isdc.wro.config.Context;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
return super.locate(uri);
<<<<<<< HEAD
/*
* Copyright (c) 2010. All rights reserved.
*/
package ro.isdc.wro.model.resource.processor;
import org.junit.Before;
import org.junit.Test;
import org.mockito.Mockito;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.manager.factory.BaseWroManagerFactory;
import ro.isdc.wro.model.group.processor.Injector;
import ro.isdc.wro.model.group.processor.InjectorBuilder;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.model.resource.locator.ResourceLocator;
import ro.isdc.wro.model.resource.locator.factory.AbstractResourceLocatorFactory;
import ro.isdc.wro.model.resource.locator.factory.ResourceLocatorFactory;
import ro.isdc.wro.model.resource.locator.support.AbstractResourceLocator;
import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator;
import ro.isdc.wro.model.resource.locator.support.ServletContextResourceLocator;
import ro.isdc.wro.model.resource.locator.support.UrlResourceLocator;
import ro.isdc.wro.model.resource.processor.factory.SimpleProcessorsFactory;
import ro.isdc.wro.model.resource.processor.impl.css.CssDataUriPreProcessor;
import ro.isdc.wro.model.resource.processor.support.DataUriGenerator;
import ro.isdc.wro.util.WroTestUtils;
/**
* Test for {@link CssDataUriPreProcessor} class.
*
* @author Alex Objelean
* @created Created on Mat 09, 2010
*/
public class TestCssDataUriPreProcessor {
private final String PROXY_RESOURCE_PATH = "classpath:ro/isdc/wro/model/resource/processor/dataUri/proxyImage/";
private ResourceProcessor processor;
protected DataUriGenerator createMockDataUriGenerator() {
try {
final DataUriGenerator uriGenerator = Mockito.mock(DataUriGenerator.class);
import org.junit.Test;
import org.mockito.Mockito;
public void shouldTransformResourcesFromFolder()
}
Mockito.when(uriGenerator.generateDataURI(Mockito.any(InputStream.class), Mockito.anyString())).thenReturn(
"data:image/png;base64,iVBORw0KG");
return uriGenerator;
} catch (final Exception e) {
throw new RuntimeException("Cannot create DataUriGenerator mock", e);
}
}
@Before
public void init()
throws Exception {
Context.set(Context.standaloneContext());
processor = new CssDataUriPreProcessor() {
@Override
protected DataUriGenerator getDataUriGenerator() {
return createMockDataUriGenerator();
}
};
initProcessor(processor);
}
final void initProcessor(final ResourceProcessor processor) {
final BaseWroManagerFactory factory = new BaseWroManagerFactory();
factory.setLocatorFactory(createLocatorFactory());
factory.setProcessorsFactory(new SimpleProcessorsFactory().addPreProcessor(processor));
final Injector injector = InjectorBuilder.create(factory).build();
injector.inject(processor);
}
/**
* @return a locator factory which handles absolute url locations and failed servletContext relative url's by serving
* proxy resources from classpath. This is useful to make test pass without internet connection.
*/
private ResourceLocatorFactory createLocatorFactory() {
final ResourceLocatorFactory locatorFactory = new AbstractResourceLocatorFactory() {
public ResourceLocator getLocator(final String uri) {
return new AbstractResourceLocator() {
public InputStream getInputStream()
throws IOException {
if (uri.startsWith(ServletContextResourceLocator.PREFIX)) {
return new ClasspathResourceLocator(PROXY_RESOURCE_PATH + "test1.png").getInputStream();
}
try {
return new UrlResourceLocator(uri).getInputStream();
} catch (IOException e) {
return new ClasspathResourceLocator(PROXY_RESOURCE_PATH + "test2.png").getInputStream();
}
}
};
}
};
return locatorFactory;
}
@Test
throws Exception {
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expected");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Test
public void shouldTransformLargeResources()
throws Exception {
processor = new CssDataUriPreProcessor();
initProcessor(processor);
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expectedLarge");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
}
=======
/*
* Copyright (c) 2010. All rights reserved.
*/
package ro.isdc.wro.model.resource.processor;
import static org.junit.Assert.assertEquals;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import ro.isdc.wro.manager.factory.BaseWroManagerFactory;
import ro.isdc.wro.model.group.processor.Injector;
import ro.isdc.wro.model.group.processor.InjectorBuilder;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.model.resource.locator.ClasspathUriLocator;
import ro.isdc.wro.model.resource.locator.ServletContextUriLocator;
import ro.isdc.wro.model.resource.locator.UrlUriLocator;
import ro.isdc.wro.model.resource.locator.factory.SimpleUriLocatorFactory;
import ro.isdc.wro.model.resource.locator.factory.UriLocatorFactory;
import ro.isdc.wro.model.resource.processor.factory.SimpleProcessorsFactory;
import ro.isdc.wro.model.resource.processor.impl.css.CssDataUriPreProcessor;
import ro.isdc.wro.model.resource.processor.support.DataUriGenerator;
import ro.isdc.wro.util.WroTestUtils;
/**
* Test for {@link CssDataUriPreProcessor} class.
*
* @author Alex Objelean
* @created Created on Mat 09, 2010
*/
public class TestCssDataUriPreProcessor {
private final String PROXY_RESOURCE_PATH = "classpath:ro/isdc/wro/model/resource/processor/dataUri/proxyImage/";
private ResourcePreProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
protected DataUriGenerator createMockDataUriGenerator() {
try {
final DataUriGenerator uriGenerator = Mockito.mock(DataUriGenerator.class);
Mockito.when(uriGenerator.generateDataURI(Mockito.any(InputStream.class), Mockito.anyString())).thenReturn(
"data:image/png;base64,iVBORw0KG");
return uriGenerator;
} catch (final Exception e) {
throw new RuntimeException("Cannot create DataUriGenerator mock", e);
}
}
@Before
public void setUp()
throws Exception {
Context.set(Context.standaloneContext());
processor = new CssDataUriPreProcessor() {
@Override
protected DataUriGenerator getDataUriGenerator() {
return createMockDataUriGenerator();
}
};
initProcessor(processor);
}
@After
public void tearDown() {
Context.unset();
}
final void initProcessor(final ResourcePreProcessor processor) {
final BaseWroManagerFactory factory = new BaseWroManagerFactory();
factory.setUriLocatorFactory(createLocatorFactory());
factory.setProcessorsFactory(new SimpleProcessorsFactory().addPreProcessor(processor));
final Injector injector = InjectorBuilder.create(factory).build();
injector.inject(processor);
}
/**
* @return a locator factory which handles absolute url locations and failed servletContext relative url's by serving
* proxy resources from classpath. This is useful to make test pass without internet connection.
*/
private UriLocatorFactory createLocatorFactory() {
final UriLocatorFactory locatorFactory = new SimpleUriLocatorFactory().addLocator(new ServletContextUriLocator() {
@Override
public InputStream locate(final String uri)
throws IOException {
try {
return super.locate(uri);
} catch (final Exception e) {
return new ClasspathUriLocator().locate(PROXY_RESOURCE_PATH + "test1.png");
}
}
}).addLocator(new UrlUriLocator() {
@Override
public InputStream locate(final String uri)
throws IOException {
// avoid external connections
if (uri.startsWith("http")) {
return new ClasspathUriLocator().locate(PROXY_RESOURCE_PATH + "test2.png");
}
return locatorFactory;
}
@Test
public void shouldTransformResourcesFromFolder()
throws Exception {
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expected");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Test
public void shouldTransformLargeResources()
throws Exception {
processor = new CssDataUriPreProcessor();
initProcessor(processor);
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expectedLarge");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 |
| Solution content |
|---|
public static void onAfterClass() {
@BeforeClass
public static void onBeforeClass() {
/*
* Copyright (c) 2010. All rights reserved.
*/
package ro.isdc.wro.model.resource.processor;
import static org.junit.Assert.assertEquals;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.mockito.Mockito;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.manager.factory.BaseWroManagerFactory;
import ro.isdc.wro.model.group.processor.Injector;
import ro.isdc.wro.model.group.processor.InjectorBuilder;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.model.resource.locator.ResourceLocator;
import ro.isdc.wro.model.resource.locator.factory.AbstractResourceLocatorFactory;
import ro.isdc.wro.model.resource.locator.factory.ResourceLocatorFactory;
import ro.isdc.wro.model.resource.locator.support.AbstractResourceLocator;
import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator;
import ro.isdc.wro.model.resource.locator.support.ServletContextResourceLocator;
import ro.isdc.wro.model.resource.locator.support.UrlResourceLocator;
import ro.isdc.wro.model.resource.processor.factory.SimpleProcessorsFactory;
import ro.isdc.wro.model.resource.processor.impl.css.CssDataUriPreProcessor;
import ro.isdc.wro.model.resource.processor.support.DataUriGenerator;
import ro.isdc.wro.util.WroTestUtils;
/**
* Test for {@link CssDataUriPreProcessor} class.
*
* @author Alex Objelean
* @created Created on Mat 09, 2010
*/
public class TestCssDataUriPreProcessor {
private final String PROXY_RESOURCE_PATH = "classpath:ro/isdc/wro/model/resource/processor/dataUri/proxyImage/";
private ResourceProcessor processor;
assertEquals(0, Context.countActive());
}
@AfterClass
assertEquals(0, Context.countActive());
}
protected DataUriGenerator createMockDataUriGenerator() {
try {
final DataUriGenerator uriGenerator = Mockito.mock(DataUriGenerator.class);
Mockito.when(uriGenerator.generateDataURI(Mockito.any(InputStream.class), Mockito.anyString())).thenReturn(
"data:image/png;base64,iVBORw0KG");
return uriGenerator;
} catch (final Exception e) {
throw new RuntimeException("Cannot create DataUriGenerator mock", e);
}
}
@Before
public void setUp()
throws Exception {
Context.set(Context.standaloneContext());
processor = new CssDataUriPreProcessor() {
@Override
protected DataUriGenerator getDataUriGenerator() {
return createMockDataUriGenerator();
}
};
initProcessor(processor);
}
@After
public void tearDown() {
Context.unset();
}
final void initProcessor(final ResourceProcessor processor) {
final BaseWroManagerFactory factory = new BaseWroManagerFactory();
factory.setLocatorFactory(createLocatorFactory());
factory.setProcessorsFactory(new SimpleProcessorsFactory().addPreProcessor(processor));
final Injector injector = InjectorBuilder.create(factory).build();
injector.inject(processor);
}
/**
* @return a locator factory which handles absolute url locations and failed servletContext relative url's by serving
* proxy resources from classpath. This is useful to make test pass without internet connection.
*/
private ResourceLocatorFactory createLocatorFactory() {
final ResourceLocatorFactory locatorFactory = new AbstractResourceLocatorFactory() {
public ResourceLocator getLocator(final String uri) {
return new AbstractResourceLocator() {
public InputStream getInputStream()
throws IOException {
if (uri.startsWith(ServletContextResourceLocator.PREFIX)) {
return new ClasspathResourceLocator(PROXY_RESOURCE_PATH + "test1.png").getInputStream();
}
try {
return new UrlResourceLocator(uri).getInputStream();
} catch (IOException e) {
return new ClasspathResourceLocator(PROXY_RESOURCE_PATH + "test2.png").getInputStream();
}
}
};
}
};
return locatorFactory;
}
@Test
public void shouldTransformResourcesFromFolder()
throws Exception {
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expected");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Test
public void shouldTransformLargeResources()
throws Exception {
processor = new CssDataUriPreProcessor();
initProcessor(processor);
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expectedLarge");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
} |
| File |
|---|
| TestCssDataUriPreProcessor.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Class declaration |
| Comment |
| Import |
| Package declaration |
| Chunk |
|---|
| Conflicting content |
|---|
private CssUrlRewritingProcessor processor;
private static final String CSS_INPUT_NAME = "cssUrlRewriting.css";
<<<<<<< HEAD
=======
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Before
public void setUp() {
Context.set(Context.standaloneContext()); |
| Solution content |
|---|
@AfterClass
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
/**
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp() {
Context.set(Context.standaloneContext());
processor = new CssUrlRewritingProcessor() {
@Inject
private ResourceAuthorizationManager authorizationManager;
@Override
protected void onProcessCompleted() {
if (authorizationManager instanceof DefaultResourceAuthorizationManager) {
LOG.debug("allowed urls: {}", ((DefaultResourceAuthorizationManager) authorizationManager).list());
}
}
@Override
protected String getUrlPrefix() {
return "[WRO-PREFIX]?id=";
}
};
WroTestUtils.createInjector().inject(processor);
}
@After
public void tearDown() {
Context.unset();
}
@Test
public void testFromFolder()
throws Exception {
final URL url = getClass().getResource("cssUrlRewriting");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expected");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
/**
* When background url contains a dataUri, the rewriting should have no effect.
*/
@Test
public void processResourceWithDataUriEncodedValue()
throws IOException {
final String resourceUri = "classpath:cssUrlRewriting-dataUri.css";
WroTestUtils.compareProcessedResourceContents(resourceUri, resourceUri, new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource(resourceUri), reader, writer);
}
});
}
/**
* Test a classpath css resource.
*/
@Test
public void processClasspathResourceType()
throws IOException {
final String resourceUri = "classpath:" + CSS_INPUT_NAME;
WroTestUtils.compareProcessedResourceContents(resourceUri, "classpath:cssUrlRewriting-classpath-outcome.css",
new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource(resourceUri), reader, writer);
}
});
}
/**
* @param resourceUri
* the resource should return.
* @return mocked {@link Resource} object.
*/
private Resource createMockResource(final String resourceUri) {
final Resource resource = Mockito.mock(Resource.class);
Mockito.when(resource.getUri()).thenReturn(resourceUri);
return resource;
}
/**
* Test a servletContext css resource.
*/
@Test
public void processServletContextResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-servletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
}
* Test a servletContext css resource.
*/
@Test
public void processServletContextResourceTypeWithAggregatedFolderSet()
throws IOException {
Context.get().setAggregatedFolderPath("wro/css");
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-servletContext-aggregatedFolderSet-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a resource which is located inside WEB-INF protected folder.
*/
@Test
public void processWEBINFServletContextResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-WEBINFservletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/WEB-INF/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a url css resource.
*/
@Test
public void processUrlResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-url-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("http://www.site.com/static/css/" + CSS_INPUT_NAME), reader, writer);
}
});
}
@Test
public void checkUrlIsAllowed()
throws Exception {
processClasspathResourceType();
assertFalse(processor.isUriAllowed("/WEB-INF/web.xml"));
assertTrue(processor.isUriAllowed("classpath:folder/img.gif"));
}
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
/**
* Tests that the Context injected into processor is thread safe and uses the values of set by the thread which runs
* the processor.
*/
@Test
public void shouldUseCorrectAggregatedFolderSetEvenWhenContextIsChangedInAnotherThread()
throws Exception {
WroTestUtils.createInjector().inject(processor);
WroTestUtils.runConcurrently(new Callable |
| File |
|---|
| TestCssUrlRewritingProcessor.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Annotation |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
=======
throws IOException {
public void processResourceWithDataUriEncodedValue()
throws IOException {
final String resourceUri = "classpath:cssUrlRewriting-dataUri.css";
<<<<<<< HEAD
WroTestUtils.compareProcessedResourceContents(resourceUri, resourceUri, new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
WroTestUtils.compareProcessedResourceContents(resourceUri, resourceUri, new ResourcePostProcessor() {
public void process(final Reader reader, final Writer writer)
throws IOException {
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
processor.process(createMockResource(resourceUri), reader, writer);
}
}); |
| Solution content |
|---|
import java.net.URL;
import org.junit.After;
/*
* Copyright (c) 2008. All rights reserved.
*/
package ro.isdc.wro.model.resource.processor;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import java.io.File;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
import java.util.Random;
import java.util.concurrent.Callable;
* the processor.
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.mockito.Mockito;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.model.group.Inject;
import ro.isdc.wro.model.resource.Resource;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.model.resource.processor.impl.css.CssUrlRewritingProcessor;
import ro.isdc.wro.model.resource.support.DefaultResourceAuthorizationManager;
import ro.isdc.wro.model.resource.support.ResourceAuthorizationManager;
import ro.isdc.wro.util.WroTestUtils;
/**
* Test for {@link CssUrlRewritingProcessor} class.
*
* @author Alex Objelean
* @created Created on Nov 3, 2008
*/
public class TestCssUrlRewritingProcessor {
private static final Logger LOG = LoggerFactory.getLogger(TestCssUrlRewritingProcessor.class);
private CssUrlRewritingProcessor processor;
private static final String CSS_INPUT_NAME = "cssUrlRewriting.css";
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp() {
Context.set(Context.standaloneContext());
processor = new CssUrlRewritingProcessor() {
@Inject
private ResourceAuthorizationManager authorizationManager;
@Override
protected void onProcessCompleted() {
if (authorizationManager instanceof DefaultResourceAuthorizationManager) {
LOG.debug("allowed urls: {}", ((DefaultResourceAuthorizationManager) authorizationManager).list());
}
}
@Override
protected String getUrlPrefix() {
return "[WRO-PREFIX]?id=";
}
};
WroTestUtils.createInjector().inject(processor);
}
@After
public void tearDown() {
Context.unset();
}
@Test
public void testFromFolder()
throws Exception {
final URL url = getClass().getResource("cssUrlRewriting");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expected");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
/**
* When background url contains a dataUri, the rewriting should have no effect.
*/
@Test
public void processResourceWithDataUriEncodedValue()
throws IOException {
final String resourceUri = "classpath:cssUrlRewriting-dataUri.css";
WroTestUtils.compareProcessedResourceContents(resourceUri, resourceUri, new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource(resourceUri), reader, writer);
}
});
}
/**
* Test a classpath css resource.
*/
@Test
public void processClasspathResourceType()
throws IOException {
final String resourceUri = "classpath:" + CSS_INPUT_NAME;
*/
@Test
WroTestUtils.compareProcessedResourceContents(resourceUri, "classpath:cssUrlRewriting-classpath-outcome.css",
new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource(resourceUri), reader, writer);
}
});
}
/**
* @param resourceUri
* the resource should return.
* @return mocked {@link Resource} object.
*/
private Resource createMockResource(final String resourceUri) {
final Resource resource = Mockito.mock(Resource.class);
Mockito.when(resource.getUri()).thenReturn(resourceUri);
return resource;
}
/**
* Test a servletContext css resource.
*/
@Test
public void processServletContextResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-servletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a servletContext css resource.
*/
@Test
public void processServletContextResourceTypeWithAggregatedFolderSet()
throws IOException {
Context.get().setAggregatedFolderPath("wro/css");
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-servletContext-aggregatedFolderSet-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a resource which is located inside WEB-INF protected folder.
*/
@Test
public void processWEBINFServletContextResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-WEBINFservletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/WEB-INF/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a url css resource.
*/
@Test
public void processUrlResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-url-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("http://www.site.com/static/css/" + CSS_INPUT_NAME), reader, writer);
}
});
}
@Test
public void checkUrlIsAllowed()
throws Exception {
processClasspathResourceType();
assertFalse(processor.isUriAllowed("/WEB-INF/web.xml"));
assertTrue(processor.isUriAllowed("classpath:folder/img.gif"));
}
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
/**
* Tests that the Context injected into processor is thread safe and uses the values of set by the thread which runs
public void shouldUseCorrectAggregatedFolderSetEvenWhenContextIsChangedInAnotherThread()
throws Exception {
WroTestUtils.createInjector().inject(processor);
WroTestUtils.runConcurrently(new Callable |
| File |
|---|
| TestCssUrlRewritingProcessor.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
throws IOException {
final String resourceUri = "classpath:" + CSS_INPUT_NAME;
WroTestUtils.compareProcessedResourceContents(resourceUri, "classpath:cssUrlRewriting-classpath-outcome.css",
<<<<<<< HEAD
new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource(resourceUri), reader, writer);
}
});
=======
new ResourcePostProcessor() {
public void process(final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource(resourceUri), reader, writer);
}
});
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
}
/** |
| Solution content |
|---|
@Test
}
});
}
new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource(resourceUri), reader, writer);
}
});
}
/**
* @param resourceUri
* the resource should return.
* @return mocked {@link Resource} object.
*/
private Resource createMockResource(final String resourceUri) {
final Resource resource = Mockito.mock(Resource.class);
Mockito.when(resource.getUri()).thenReturn(resourceUri);
return resource;
}
/**
* Test a servletContext css resource.
*/
@Test
public void processServletContextResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-servletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a servletContext css resource.
*/
@Test
public void processServletContextResourceTypeWithAggregatedFolderSet()
throws IOException {
Context.get().setAggregatedFolderPath("wro/css");
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-servletContext-aggregatedFolderSet-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a resource which is located inside WEB-INF protected folder.
*/
@Test
public void processWEBINFServletContextResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-WEBINFservletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/WEB-INF/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a url css resource.
*/
@Test
public void processUrlResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-url-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("http://www.site.com/static/css/" + CSS_INPUT_NAME), reader, writer);
public void checkUrlIsAllowed()
throws Exception {
processClasspathResourceType();
assertFalse(processor.isUriAllowed("/WEB-INF/web.xml"));
assertTrue(processor.isUriAllowed("classpath:folder/img.gif"));
}
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
/**
* Tests that the Context injected into processor is thread safe and uses the values of set by the thread which runs
* the processor.
*/
@Test
public void shouldUseCorrectAggregatedFolderSetEvenWhenContextIsChangedInAnotherThread()
throws Exception {
WroTestUtils.createInjector().inject(processor);
WroTestUtils.runConcurrently(new Callable |
| File |
|---|
| TestCssUrlRewritingProcessor.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
public void processServletContextResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
<<<<<<< HEAD
"classpath:cssUrlRewriting-servletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
=======
"classpath:cssUrlRewriting-servletContext-outcome.css", new ResourcePostProcessor() {
public void process(final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
}
/** |
| Solution content |
|---|
@Test
"classpath:cssUrlRewriting-servletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a servletContext css resource.
*/
@Test
public void processServletContextResourceTypeWithAggregatedFolderSet()
throws IOException {
Context.get().setAggregatedFolderPath("wro/css");
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-servletContext-aggregatedFolderSet-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a resource which is located inside WEB-INF protected folder.
*/
@Test
public void processWEBINFServletContextResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-WEBINFservletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/WEB-INF/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a url css resource.
*/
@Test
public void processUrlResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-url-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("http://www.site.com/static/css/" + CSS_INPUT_NAME), reader, writer);
}
});
}
public void checkUrlIsAllowed()
throws Exception {
processClasspathResourceType();
assertFalse(processor.isUriAllowed("/WEB-INF/web.xml"));
assertTrue(processor.isUriAllowed("classpath:folder/img.gif"));
}
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
/**
* Tests that the Context injected into processor is thread safe and uses the values of set by the thread which runs
* the processor.
*/
@Test
public void shouldUseCorrectAggregatedFolderSetEvenWhenContextIsChangedInAnotherThread()
throws Exception {
WroTestUtils.createInjector().inject(processor);
WroTestUtils.runConcurrently(new Callable |
| File |
|---|
| TestCssUrlRewritingProcessor.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
throws IOException {
Context.get().setAggregatedFolderPath("wro/css");
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
<<<<<<< HEAD
"classpath:cssUrlRewriting-servletContext-aggregatedFolderSet-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
=======
"classpath:cssUrlRewriting-servletContext-aggregatedFolderSet-outcome.css", new ResourcePostProcessor() {
public void process(final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
}
/** |
| Solution content |
|---|
try {
"classpath:cssUrlRewriting-servletContext-aggregatedFolderSet-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/static/img/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a resource which is located inside WEB-INF protected folder.
*/
@Test
public void processWEBINFServletContextResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-WEBINFservletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/WEB-INF/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a url css resource.
*/
@Test
public void processUrlResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-url-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("http://www.site.com/static/css/" + CSS_INPUT_NAME), reader, writer);
}
});
}
@Test
public void checkUrlIsAllowed()
throws Exception {
processClasspathResourceType();
assertFalse(processor.isUriAllowed("/WEB-INF/web.xml"));
assertTrue(processor.isUriAllowed("classpath:folder/img.gif"));
}
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
/**
* Tests that the Context injected into processor is thread safe and uses the values of set by the thread which runs
* the processor.
*/
@Test
public void shouldUseCorrectAggregatedFolderSetEvenWhenContextIsChangedInAnotherThread()
throws Exception {
WroTestUtils.createInjector().inject(processor);
WroTestUtils.runConcurrently(new Callable |
| File |
|---|
| TestCssUrlRewritingProcessor.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
/**
public void processWEBINFServletContextResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
<<<<<<< HEAD
"classpath:cssUrlRewriting-WEBINFservletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/WEB-INF/" + CSS_INPUT_NAME), reader, writer);
}
});
=======
"classpath:cssUrlRewriting-WEBINFservletContext-outcome.css", new ResourcePostProcessor() {
public void process(final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/WEB-INF/" + CSS_INPUT_NAME), reader, writer);
}
});
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
} |
| Solution content |
|---|
"classpath:cssUrlRewriting-WEBINFservletContext-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("/WEB-INF/" + CSS_INPUT_NAME), reader, writer);
}
});
}
/**
* Test a url css resource.
*/
@Test
public void processUrlResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
"classpath:cssUrlRewriting-url-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("http://www.site.com/static/css/" + CSS_INPUT_NAME), reader, writer);
}
});
}
@Test
public void checkUrlIsAllowed()
throws Exception {
processClasspathResourceType();
assertFalse(processor.isUriAllowed("/WEB-INF/web.xml"));
assertTrue(processor.isUriAllowed("classpath:folder/img.gif"));
}
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
/**
* Tests that the Context injected into processor is thread safe and uses the values of set by the thread which runs
* the processor.
*/
@Test
public void shouldUseCorrectAggregatedFolderSetEvenWhenContextIsChangedInAnotherThread()
throws Exception {
WroTestUtils.createInjector().inject(processor);
WroTestUtils.runConcurrently(new Callable |
| File |
|---|
| TestCssUrlRewritingProcessor.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
public void processUrlResourceType()
throws IOException {
WroTestUtils.compareProcessedResourceContents("classpath:" + CSS_INPUT_NAME,
<<<<<<< HEAD
"classpath:cssUrlRewriting-url-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("http://www.site.com/static/css/" + CSS_INPUT_NAME), reader, writer);
}
});
=======
"classpath:cssUrlRewriting-url-outcome.css", new ResourcePostProcessor() {
public void process(final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("http://www.site.com/static/css/" + CSS_INPUT_NAME), reader, writer);
}
});
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
}
@Test |
| Solution content |
|---|
"classpath:cssUrlRewriting-url-outcome.css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("http://www.site.com/static/css/" + CSS_INPUT_NAME), reader, writer);
}
});
}
@Test
public void checkUrlIsAllowed()
throws Exception {
processClasspathResourceType();
assertFalse(processor.isUriAllowed("/WEB-INF/web.xml"));
assertTrue(processor.isUriAllowed("classpath:folder/img.gif"));
}
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
/**
* Tests that the Context injected into processor is thread safe and uses the values of set by the thread which runs
* the processor.
*/
@Test
public void shouldUseCorrectAggregatedFolderSetEvenWhenContextIsChangedInAnotherThread()
throws Exception {
WroTestUtils.createInjector().inject(processor);
WroTestUtils.runConcurrently(new Callable |
| File |
|---|
| TestCssUrlRewritingProcessor.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
public void setUp() {
* @created Created on Mat 09, 2010
*/
public class TestDuplicateAwareCssDataUriPreProcessor {
<<<<<<< HEAD
private ResourceProcessor processor;
=======
private ResourcePreProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Before
processor = new DuplicatesAwareCssDataUriPreProcessor(); |
| Solution content |
|---|
/**
});
}
/*
* Copyright (c) 2010. All rights reserved.
*/
package ro.isdc.wro.model.resource.processor;
import static org.junit.Assert.assertEquals;
import java.io.File;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
import java.net.URL;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import org.mockito.Mockito;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.model.resource.Resource;
import ro.isdc.wro.model.resource.processor.impl.css.CssDataUriPreProcessor;
import ro.isdc.wro.model.resource.processor.impl.css.DuplicatesAwareCssDataUriPreProcessor;
import ro.isdc.wro.util.WroTestUtils;
/**
* Test for {@link CssDataUriPreProcessor} class.
*
* @author Alex Objelean
* @created Created on Mat 09, 2010
*/
public class TestDuplicateAwareCssDataUriPreProcessor {
private ResourceProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp() {
processor = new DuplicatesAwareCssDataUriPreProcessor();
Context.set(Context.standaloneContext());
WroTestUtils.initProcessor(processor);
}
@After
public void tearDown() {
Context.unset();
}
/**
* Check if a large dataUri with more than 32KB does not replace original url.
*/
@Test
public void processLargeDataUri()
throws Exception {
final URL url = getClass().getResource("duplicateAwareDataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expected");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("file:" + testFolder.getPath() + "/test.css"), reader, writer);
}
* @param resourceUri
* the resource should return.
* @return mocked {@link Resource} object.
*/
private Resource createMockResource(final String resourceUri) {
final Resource resource = Mockito.mock(Resource.class);
Mockito.when(resource.getUri()).thenReturn(resourceUri);
return resource;
}
} |
| File |
|---|
| TestDuplicateAwareCssDataUriPreProcessor.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expected");
<<<<<<< HEAD
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("file:" + testFolder.getPath() + "/test.css"), reader, writer);
}
});
=======
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css",
WroUtil.newResourceProcessor(createMockResource("file:" + testFolder.getPath() + "/test.css"), processor));
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
}
/** |
| Solution content |
|---|
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
processor.process(createMockResource("file:" + testFolder.getPath() + "/test.css"), reader, writer);
}
});
}
/**
* @param resourceUri
* the resource should return.
* @return mocked {@link Resource} object.
*/
private Resource createMockResource(final String resourceUri) {
final Resource resource = Mockito.mock(Resource.class);
Mockito.when(resource.getUri()).thenReturn(resourceUri);
return resource;
}
} |
| File |
|---|
| TestDuplicateAwareCssDataUriPreProcessor.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
import org.junit.BeforeClass;
};
//find a way to use a custom uriLocator
import org.junit.Test;
<<<<<<< HEAD
/*
* Copyright (c) 2010. All rights reserved.
*/
package ro.isdc.wro.model.resource.processor;
import java.io.File;
import java.net.URL;
import org.junit.Before;
import org.junit.Test;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.model.resource.processor.impl.css.CssDataUriPreProcessor;
import ro.isdc.wro.model.resource.processor.impl.css.FallbackCssDataUriProcessor;
import ro.isdc.wro.model.resource.processor.support.DataUriGenerator;
import ro.isdc.wro.util.WroTestUtils;
/**
* Test for {@link CssDataUriPreProcessor} class.
*
* @author Alex Objelean
* @created Created on Mat 09, 2010
*/
public class TestFallbackCssDataUriProcessor
extends TestCssDataUriPreProcessor {
private ResourceProcessor processor;
@Override
@Before
public void init() {
Context.set(Context.standaloneContext());
processor = new FallbackCssDataUriProcessor() {
@Override
protected DataUriGenerator getDataUriGenerator() {
return createMockDataUriGenerator();
}
initProcessor(processor);
}
@Override
@Test
public void shouldTransformResourcesFromFolder()
throws Exception {
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expectedFallback");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Override
@Test
public void shouldTransformLargeResources()
throws Exception {
processor = new CssDataUriPreProcessor();
initProcessor(processor);
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expectedFallbackLarge");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Override
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
}
=======
/*
* Copyright (c) 2010. All rights reserved.
*/
package ro.isdc.wro.model.resource.processor;
import static org.junit.Assert.assertEquals;
import java.io.File;
import java.net.URL;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import ro.isdc.wro.config.Context;
public void shouldTransformLargeResources()
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.model.resource.processor.impl.css.CssDataUriPreProcessor;
import ro.isdc.wro.model.resource.processor.impl.css.FallbackCssDataUriProcessor;
import ro.isdc.wro.model.resource.processor.support.DataUriGenerator;
import ro.isdc.wro.util.WroTestUtils;
/**
* Test for {@link CssDataUriPreProcessor} class.
*
* @author Alex Objelean
* @created Created on Mat 09, 2010
*/
public class TestFallbackCssDataUriProcessor
extends TestCssDataUriPreProcessor {
private ResourcePreProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Override
@Before
public void setUp() {
Context.set(Context.standaloneContext());
processor = new FallbackCssDataUriProcessor() {
@Override
protected DataUriGenerator getDataUriGenerator() {
return createMockDataUriGenerator();
}
};
// find a way to use a custom uriLocator
initProcessor(processor);
}
@After
public void tearDown() {
Context.unset();
}
@Override
@Test
public void shouldTransformResourcesFromFolder()
throws Exception {
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expectedFallback");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Override
@Test
throws Exception {
processor = new CssDataUriPreProcessor();
initProcessor(processor);
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expectedFallbackLarge");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Override
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 |
| Solution content |
|---|
/*
* Copyright (c) 2010. All rights reserved.
*/
package ro.isdc.wro.model.resource.processor;
import static org.junit.Assert.assertEquals;
import java.io.File;
import java.net.URL;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.model.resource.processor.impl.css.CssDataUriPreProcessor;
import ro.isdc.wro.model.resource.processor.impl.css.FallbackCssDataUriProcessor;
import ro.isdc.wro.model.resource.processor.support.DataUriGenerator;
import ro.isdc.wro.util.WroTestUtils;
/**
* Test for {@link CssDataUriPreProcessor} class.
*
* @author Alex Objelean
* @created Created on Mat 09, 2010
*/
public class TestFallbackCssDataUriProcessor
extends TestCssDataUriPreProcessor {
private ResourceProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Override
@Before
public void setUp() {
Context.set(Context.standaloneContext());
processor = new FallbackCssDataUriProcessor() {
@Override
protected DataUriGenerator getDataUriGenerator() {
return createMockDataUriGenerator();
}
};
// find a way to use a custom uriLocator
initProcessor(processor);
}
@After
public void tearDown() {
Context.unset();
}
@Override
@Test
public void shouldTransformResourcesFromFolder()
throws Exception {
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expectedFallback");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Override
@Test
public void shouldTransformLargeResources()
throws Exception {
processor = new CssDataUriPreProcessor();
initProcessor(processor);
final URL url = getClass().getResource("dataUri");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expectedFallbackLarge");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Override
@Test
public void shouldSupportOnlyCssResources() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
} |
| File |
|---|
| TestFallbackCssDataUriProcessor.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Class declaration |
| Comment |
| Import |
| Package declaration |
| Chunk |
|---|
| Conflicting content |
|---|
}
@Test
<<<<<<< HEAD
public void testFromFolder() throws IOException {
final ResourceProcessor processor = new JawrCssMinifierProcessor();
=======
public void testFromFolder()
throws IOException {
final ResourcePostProcessor processor = new JawrCssMinifierProcessor();
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
final URL url = getClass().getResource("jawrcss");
final File testFolder = new File(url.getFile(), "test"); |
| Solution content |
|---|
}
@Test
public void testFromFolder()
throws IOException {
final ResourceProcessor processor = new JawrCssMinifierProcessor();
final URL url = getClass().getResource("jawrcss");
final File testFolder = new File(url.getFile(), "test"); |
| File |
|---|
| TestJawrCssMinifierProcessor.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Method signature |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
@AfterClass
* @created Created on Nov 28, 2008
*/
public class TestJsMinProcessor {
<<<<<<< HEAD
private ResourceProcessor processor;
=======
private ResourcePreProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Before
public void setUp() {
processor = new JSMinProcessor(); |
| Solution content |
|---|
* @created Created on Nov 28, 2008
*/
public class TestJsMinProcessor {
private ResourceProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp() {
processor = new JSMinProcessor(); |
| File |
|---|
| TestJsMinProcessor.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
* @author Alex Objelean
*/
public class TestLessCssImportPreProcessor {
<<<<<<< HEAD
private ResourceProcessor victim;
=======
private ResourcePreProcessor victim;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Before
public void setUp() {
final WroConfiguration config = new WroConfiguration(); |
| Solution content |
|---|
WroTestUtils.assertProcessorSupportResourceTypes(victim, ResourceType.CSS);
}
/*
* Copyright (c) 2009. All rights reserved.
*/
package ro.isdc.wro.model.resource.processor;
import static org.junit.Assert.assertEquals;
import java.io.File;
import java.net.URL;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
import ro.isdc.wro.config.Context;
import ro.isdc.wro.config.jmx.WroConfiguration;
import ro.isdc.wro.model.resource.ResourceType;
import ro.isdc.wro.model.resource.processor.impl.css.LessCssImportPreProcessor;
import ro.isdc.wro.util.WroTestUtils;
/**
* @author Alex Objelean
*/
public class TestLessCssImportPreProcessor {
private ResourceProcessor victim;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp() {
final WroConfiguration config = new WroConfiguration();
config.setIgnoreFailingProcessor(true);
Context.set(Context.standaloneContext(), config);
victim = new LessCssImportPreProcessor();
WroTestUtils.initProcessor(victim);
}
@After
public void tearDown() {
Context.unset();
}
@Test
public void testFromFolder()
throws Exception {
Context.get().getConfig().setIgnoreMissingResources(false);
final URL url = getClass().getResource("cssImport");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expectedLess");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", victim);
}
@Test
public void shouldSupportCorrectResourceTypes() {
} |
| File |
|---|
| TestLessCssImportPreProcessor.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
}
@Test
<<<<<<< HEAD
public void testFromFolder() throws IOException {
final ResourceProcessor processor = new MultiLineCommentStripperProcessor();
=======
public void testFromFolder()
throws IOException {
final ResourcePostProcessor processor = new MultiLineCommentStripperProcessor();
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
final URL url = getClass().getResource("multiline");
final File testFolder = new File(url.getFile(), "test"); |
| Solution content |
|---|
@Test
public void testFromFolder()
}
throws IOException {
final ResourceProcessor processor = new MultiLineCommentStripperProcessor();
final URL url = getClass().getResource("multiline");
final File testFolder = new File(url.getFile(), "test"); |
| File |
|---|
| TestMultiLineCommentStripperProcessor.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Method signature |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
final URL url = getClass().getResource("semicolonAppender");
final File testFolder = new File(url.getFile(), "test");
@Test
public void testFromFolder()
<<<<<<< HEAD
throws IOException {
final ResourceProcessor processor = new SemicolonAppenderPreProcessor();
=======
throws IOException {
final ResourcePreProcessor processor = new SemicolonAppenderPreProcessor(); |
| Solution content |
|---|
@Test
public void testFromFolder()
throws IOException {
final ResourceProcessor processor = new SemicolonAppenderPreProcessor();
final URL url = getClass().getResource("semicolonAppender");
final File testFolder = new File(url.getFile(), "test"); |
| File |
|---|
| TestSemicolonAppenderPreProcessor.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
* @created Created on Aug 15, 2010
*/
public class TestVariablizeColorsCssProcessor {
<<<<<<< HEAD
private ResourceProcessor processor;
=======
private ResourcePreProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Before
public void setUp() {
processor = new VariablizeColorsCssProcessor(); |
| Solution content |
|---|
* @created Created on Aug 15, 2010
*/
public class TestVariablizeColorsCssProcessor {
private ResourceProcessor processor;
@BeforeClass
public static void onBeforeClass() {
assertEquals(0, Context.countActive());
}
@AfterClass
public static void onAfterClass() {
assertEquals(0, Context.countActive());
}
@Before
public void setUp() {
processor = new VariablizeColorsCssProcessor(); |
| File |
|---|
| TestVariablizeColorsCssProcessor.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
final File expectedFolder = new File(url.getFile(), "expected");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
<<<<<<< HEAD
=======
@Test
public void shouldSupportCorrectResourceTypes() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
} |
| Solution content |
|---|
final File expectedFolder = new File(url.getFile(), "expected");
WroTestUtils.compareFromDifferentFoldersByExtension(testFolder, expectedFolder, "css", processor);
}
@Test
public void shouldSupportCorrectResourceTypes() {
WroTestUtils.assertProcessorSupportResourceTypes(processor, ResourceType.CSS);
}
} |
| File |
|---|
| TestVariablizeColorsCssProcessor.java |
| Developer's decision |
|---|
| Version 2 |
| Kind of conflict |
|---|
| Annotation |
| Method declaration |
| Chunk |
|---|
| Conflicting content |
|---|
"js");
WroTestUtils.createInjector().inject(processor);
// we use test resource relative to TestProcessorsUtils class
<<<<<<< HEAD
final URL url = ResourceProcessor.class.getResource("extensionAware");
=======
final URL url = ResourcePreProcessor.class.getResource("extensionAware");
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expected");
WroTestUtils.compareFromDifferentFolders(testFolder, expectedFolder, processor); |
| Solution content |
|---|
"js");
WroTestUtils.createInjector().inject(processor);
// we use test resource relative to TestProcessorsUtils class
final URL url = ResourceProcessor.class.getResource("extensionAware");
final File testFolder = new File(url.getFile(), "test");
final File expectedFolder = new File(url.getFile(), "expected");
WroTestUtils.compareFromDifferentFolders(testFolder, expectedFolder, processor); |
| File |
|---|
| TestExtensionsAwareProcessorDecorator.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
throws Exception {
compareResultsFromFolderUsingProcessor("expectedFindImports", createFindImportsProcessor());
}
<<<<<<< HEAD
private void compareResultsFromFolderUsingProcessor(final String expectedFolderName, final ResourceProcessor processor) throws Exception {
=======
private void compareResultsFromFolderUsingProcessor(final String expectedFolderName,
final ResourcePreProcessor processor)
throws Exception {
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
final URL url = getClass().getResource("cssimport");
final File testFolder = new File(url.getFile(), "test"); |
| Solution content |
|---|
throws Exception {
compareResultsFromFolderUsingProcessor("expectedFindImports", createFindImportsProcessor());
}
private void compareResultsFromFolderUsingProcessor(final String expectedFolderName, final ResourcePreProcessor processor) throws Exception {
final URL url = getClass().getResource("cssimport");
final File testFolder = new File(url.getFile(), "test"); |
| File |
|---|
| TestCssImportInspector.java |
| Developer's decision |
|---|
| Version 2 |
| Kind of conflict |
|---|
| Method signature |
| Chunk |
|---|
| Conflicting content |
|---|
assertFalse(createCssImportInspector("#someId {color: red}").containsImport());
assertFalse(createCssImportInspector("#import {display: block}").containsImport());
}
<<<<<<< HEAD
private ResourceProcessor createFindImportsProcessor() {
return new ResourceProcessor() {
=======
private ResourcePreProcessor createFindImportsProcessor() {
return new ResourcePreProcessor() {
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
final List |
| Solution content |
|---|
assertFalse(createCssImportInspector("#someId {color: red}").containsImport());
assertFalse(createCssImportInspector("#import {display: block}").containsImport());
}
private ResourceProcessor createFindImportsProcessor() {
return new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
final List |
| File |
|---|
| TestCssImportInspector.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Method signature |
| Return statement |
| Chunk |
|---|
| Conflicting content |
|---|
}
};
}
<<<<<<< HEAD
private ResourceProcessor createImportsRemovalProcessor() {
return new ResourceProcessor() {
=======
private ResourcePreProcessor createImportsRemovalProcessor() {
return new ResourcePreProcessor() {
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
writer.write(createCssImportInspector("").removeImportsFromComments(IOUtils.toString(reader))); |
| Solution content |
|---|
}
};
}
private ResourceProcessor createImportsRemovalProcessor() {
return new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
writer.write(createCssImportInspector("").removeImportsFromComments(IOUtils.toString(reader))); |
| File |
|---|
| TestCssImportInspector.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Method signature |
| Return statement |
| Chunk |
|---|
| Conflicting content |
|---|
<<<<<<< HEAD
}
};
}
private ResourceProcessor createRemoveImportsProcessor() {
return new ResourceProcessor() {
=======
private ResourcePreProcessor createRemoveImportsProcessor() {
return new ResourcePreProcessor() {
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
writer.write(createCssImportInspector(IOUtils.toString(reader)).removeImportStatements()); |
| Solution content |
|---|
}
};
}
private ResourceProcessor createRemoveImportsProcessor() {
return new ResourceProcessor() {
public void process(final Resource resource, final Reader reader, final Writer writer)
throws IOException {
writer.write(createCssImportInspector(IOUtils.toString(reader)).removeImportStatements()); |
| File |
|---|
| TestCssImportInspector.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Method signature |
| Return statement |
| Chunk |
|---|
| Conflicting content |
|---|
import org.junit.BeforeClass; import org.junit.Test; <<<<<<< HEAD import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator; ======= import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.locator.ClasspathUriLocator; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 import ro.isdc.wro.model.resource.processor.support.ImageUrlRewriter.RewriterContext; |
| Solution content |
|---|
import org.junit.BeforeClass; import org.junit.Test; import ro.isdc.wro.config.Context; import ro.isdc.wro.model.resource.locator.support.ClasspathResourceLocator; import ro.isdc.wro.model.resource.processor.support.ImageUrlRewriter.RewriterContext; |
| File |
|---|
| TestImageUrlRewriter.java |
| Developer's decision |
|---|
| Combination |
| Kind of conflict |
|---|
| Import |
| Chunk |
|---|
| Conflicting content |
|---|
final String expected = DEFAULT_PREFIX + "classpath:/path/to/" + RELATIVE_IMAGE_URL;
assertEquals(expected, actual);
}
<<<<<<< HEAD
=======
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Test
public void checkRelativeImageUrlInClasspathCssResourceWhenContextPathIsNotDefault() {
context.setContextPath("/1/2/3"); |
| Solution content |
|---|
final String expected = DEFAULT_PREFIX + "classpath:/path/to/" + RELATIVE_IMAGE_URL;
assertEquals(expected, actual);
}
@Test
public void checkRelativeImageUrlInClasspathCssResourceWhenContextPathIsNotDefault() {
context.setContextPath("/1/2/3"); |
| File |
|---|
| TestImageUrlRewriter.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Blank |
| Chunk |
|---|
| Conflicting content |
|---|
@BeforeClass private ResourceWatcher victim; private final CacheKey cacheEntry = new CacheKey(GROUP_NAME, ResourceType.CSS, true); private final CacheKey cacheEntry2 = new CacheKey(GROUP_2, ResourceType.JS, true); @Mock <<<<<<< HEAD private ResourceLocator mockLocator; @Mock private ResourceLocatorFactory mockLocatorFactory; ======= private UriLocator mockLocator; >>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8 |
| Solution content |
|---|
private final CacheKey cacheEntry = new CacheKey(GROUP_NAME, ResourceType.CSS, true); private final CacheKey cacheEntry2 = new CacheKey(GROUP_2, ResourceType.JS, true); @Mock private ResourceLocator mockLocator; @Mock private ResourceLocatorFactory mockLocatorFactory; private ResourceWatcher victim; @BeforeClass |
| File |
|---|
| TestResourceWatcher.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Annotation |
| Attribute |
| Chunk |
|---|
| Conflicting content |
|---|
<<<<<<< HEAD
=======
throws Exception {
initMocks(this);
Context.set(Context.standaloneContext());
// spy the interface instead of WroTestUtils.createResourceMockingLocator() because of mockito bug which was
// reported on their mailing list.
mockLocator = Mockito.spy(new UriLocator() {
public InputStream locate(final String uri)
throws IOException {
return new ByteArrayInputStream(uri.getBytes());
}
public boolean accept(final String uri) {
return true;
}
});
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
victim = new ResourceWatcher();
when(mockLocatorFactory.getLocator(Mockito.anyString())).thenReturn(mockLocator);
when(mockLocatorFactory.locate(Mockito.anyString())).thenReturn(WroUtil.EMPTY_STREAM); |
| Solution content |
|---|
};
throws Exception {
initMocks(this);
Context.set(Context.standaloneContext());
victim = new ResourceWatcher();
when(mockLocatorFactory.getLocator(Mockito.anyString())).thenReturn(mockLocator);
when(mockLocatorFactory.locate(Mockito.anyString())).thenReturn(WroUtil.EMPTY_STREAM);
when(mockLocator.getInputStream()).thenReturn(WroUtil.EMPTY_STREAM);
public boolean accept(final String uri) {
return true;
}
});
victim = new ResourceWatcher();
createDefaultInjector().inject(victim);
}
@After
public void tearDown() {
Context.unset();
}
public Injector createDefaultInjector() {
final UriLocatorFactory locatorFactory = new AbstractUriLocatorFactory() {
public UriLocator getInstance(final String uri) {
return mockLocator;
}
};
final WroModel model = new WroModel().addGroup(new Group(GROUP_NAME).addResource(Resource.create(RESOURCE_URI)));
model.addGroup(new Group(GROUP_2).addResource(Resource.create(RESOURCE_FIRST)).addResource(
Resource.create("/path/2.js")));
final WroModelFactory modelFactory = WroTestUtils.simpleModelFactory(model);
final WroManagerFactory factory = new BaseWroManagerFactory().setModelFactory(modelFactory).setLocatorFactory(
mockLocatorFactory);
final Injector injector = InjectorBuilder.create(factory).build();
return injector;
}
@Test(expected = NullPointerException.class)
public void cannotCheckNullCacheEntry() {
Context.unset();
victim = new ResourceWatcher();
victim.check(null);
}
@Test
public void shouldNotDetectChangeAfterFirstRun()
throws Exception {
victim.check(cacheEntry);
assertFalse(victim.getResourceChangeDetector().checkChangeForGroup(RESOURCE_URI, GROUP_NAME));
}
@Test
public void shouldDetectResourceChange()
throws Exception {
// flag used to assert that the expected code was invoked
final AtomicBoolean flag = new AtomicBoolean(false);
victim = new ResourceWatcher() {
@Override
void onGroupChanged(final CacheKey cacheEntry) {
super.onGroupChanged(cacheEntry);
Assert.assertEquals(GROUP_NAME, cacheEntry.getGroupName());
flag.set(true);
}
};
createDefaultInjector().inject(victim);
victim.check(cacheEntry);
assertFalse(victim.getResourceChangeDetector().checkChangeForGroup(RESOURCE_URI, GROUP_NAME));
Mockito.when(mockLocatorFactory.locate(Mockito.anyString())).then(answerWithContent("different"));
victim.check(cacheEntry);
assertTrue(victim.getResourceChangeDetector().checkChangeForGroup(RESOURCE_URI, GROUP_NAME));
assertTrue(flag.get());
}
@Test
public void shouldAssumeResourceNotChangedWhenStreamIsUnavailable()
throws Exception {
victim = new ResourceWatcher() {
@Override
void onGroupChanged(final CacheKey cacheEntry) {
super.onGroupChanged(cacheEntry);
Assert.fail("Should not detect the change");
}
createDefaultInjector().inject(victim);
final ResourceChangeDetector mockChangeDetector = Mockito.spy(victim.getResourceChangeDetector());
Mockito.when(mockLocatorFactory.locate(Mockito.anyString())).thenThrow(new IOException("Resource is unavailable"));
victim.check(cacheEntry);
verify(mockChangeDetector, never()).checkChangeForGroup(Mockito.anyString(), Mockito.anyString());
}
@Test
public void shouldDetectChangeOfImportedResource()
throws Exception {
final String importResourceUri = "imported.css";
final AtomicBoolean groupChanged = new AtomicBoolean(false);
final AtomicBoolean importResourceChanged = new AtomicBoolean(false);
final CacheKey cacheEntry = new CacheKey(GROUP_NAME, ResourceType.CSS, true);
victim = new ResourceWatcher() {
@Override
void onResourceChanged(final Resource resource) {
importResourceChanged.set(true);
}
@Override
void onGroupChanged(final CacheKey key) {
groupChanged.set(true);
}
};
createDefaultInjector().inject(victim);
when(mockLocator.getInputStream()).then(answerWithContent(String.format("@import url(%s)", importResourceUri)));
final ResourceLocator mockImportedResourceLocator = mock(ResourceLocator.class);
when(mockImportedResourceLocator.getInputStream()).then(answerWithContent("initial"));
when(mockLocatorFactory.getLocator(Mockito.eq("/" + RESOURCE_URI))).thenReturn(mockLocator);
when(mockLocatorFactory.getLocator(Mockito.eq("/" + importResourceUri))).thenReturn(mockImportedResourceLocator);
victim.check(cacheEntry);
when(mockImportedResourceLocator.getInputStream()).then(answerWithContent("changed"));
victim.check(cacheEntry);
assertTrue(groupChanged.get());
assertTrue(importResourceChanged.get());
}
/**
* Fix the issue described here.
*/
@Test
public void shouldNotDetectErroneouslyChange()
throws Exception {
final AtomicBoolean groupChanged = new AtomicBoolean(false);
final AtomicBoolean resourceChanged = new AtomicBoolean(false);
victim = new ResourceWatcher() {
@Override
void onResourceChanged(final Resource resource) {
resourceChanged.set(true);
}
@Override
void onGroupChanged(final CacheKey key) {
groupChanged.set(true);
}
};
createDefaultInjector().inject(victim);
// first check will always detect changes.
victim.check(cacheEntry2);
Mockito.when(mockLocatorFactory.locate(RESOURCE_FIRST)).then(answerWithContent("different"));
victim.check(cacheEntry2);
assertTrue(groupChanged.get());
assertTrue(resourceChanged.get());
groupChanged.set(false);
resourceChanged.set(false);
// next check should find no change
victim.check(cacheEntry2);
assertFalse(groupChanged.get());
assertFalse(resourceChanged.get());
}
private static class CallbackRegistryHolder {
@Inject
private LifecycleCallbackRegistry registry;
}
@Test
public void shouldInvokeCallbackWhenChangeIsDetected()
throws Exception {
final CallbackRegistryHolder callbackRegistryHolder = new CallbackRegistryHolder();
victim = new ResourceWatcher();
final AtomicBoolean flag = new AtomicBoolean();
final Injector injector = createDefaultInjector();
injector.inject(victim);
injector.inject(callbackRegistryHolder);
callbackRegistryHolder.registry.registerCallback(new ObjectFactory |
| File |
|---|
| TestResourceWatcher.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Attribute |
| Comment |
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
createDefaultInjector().inject(victim);
}
<<<<<<< HEAD
public Injector createDefaultInjector()
throws Exception {
=======
@After
public void tearDown() {
Context.unset();
}
public Injector createDefaultInjector() {
final UriLocatorFactory locatorFactory = new AbstractUriLocatorFactory() {
public UriLocator getInstance(final String uri) {
return mockLocator;
}
};
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
final WroModel model = new WroModel().addGroup(new Group(GROUP_NAME).addResource(Resource.create(RESOURCE_URI)));
model.addGroup(new Group(GROUP_2).addResource(Resource.create(RESOURCE_FIRST)).addResource(
Resource.create("/path/2.js"))); |
| Solution content |
|---|
victim = new ResourceWatcher();
createDefaultInjector().inject(victim);
}
@After
public void tearDown() {
Context.unset();
}
public Injector createDefaultInjector() {
final UriLocatorFactory locatorFactory = new AbstractUriLocatorFactory() {
public UriLocator getInstance(final String uri) {
return mockLocator;
}
};
final WroModel model = new WroModel().addGroup(new Group(GROUP_NAME).addResource(Resource.create(RESOURCE_URI)));
model.addGroup(new Group(GROUP_2).addResource(Resource.create(RESOURCE_FIRST)).addResource(
Resource.create("/path/2.js"))); |
| File |
|---|
| TestResourceWatcher.java |
| Developer's decision |
|---|
| Manual |
| Kind of conflict |
|---|
| Annotation |
| Method declaration |
| Method invocation |
| Method signature |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
createDefaultInjector().inject(victim);
victim.check(cacheEntry);
assertFalse(victim.getResourceChangeDetector().checkChangeForGroup(RESOURCE_URI, GROUP_NAME));
<<<<<<< HEAD
Mockito.when(mockLocatorFactory.locate(Mockito.anyString())).then(answerWithContent("different"));
=======
Mockito.when(mockLocator.locate(Mockito.anyString())).thenReturn(new ByteArrayInputStream("different".getBytes()));
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
victim.check(cacheEntry);
assertTrue(victim.getResourceChangeDetector().checkChangeForGroup(RESOURCE_URI, GROUP_NAME));
assertTrue(flag.get()); |
| Solution content |
|---|
createDefaultInjector().inject(victim);
victim.check(cacheEntry);
assertFalse(victim.getResourceChangeDetector().checkChangeForGroup(RESOURCE_URI, GROUP_NAME));
Mockito.when(mockLocatorFactory.locate(Mockito.anyString())).then(answerWithContent("different"));
victim.check(cacheEntry);
assertTrue(victim.getResourceChangeDetector().checkChangeForGroup(RESOURCE_URI, GROUP_NAME));
assertTrue(flag.get()); |
| File |
|---|
| TestResourceWatcher.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
};
createDefaultInjector().inject(victim);
final ResourceChangeDetector mockChangeDetector = Mockito.spy(victim.getResourceChangeDetector());
<<<<<<< HEAD
Mockito.when(mockLocatorFactory.locate(Mockito.anyString())).thenThrow(new IOException("Resource is unavailable"));
=======
Mockito.when(mockLocator.locate(Mockito.anyString())).thenThrow(new IOException("Resource is unavailable"));
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
victim.check(cacheEntry);
verify(mockChangeDetector, never()).checkChangeForGroup(Mockito.anyString(), Mockito.anyString());
} |
| Solution content |
|---|
};
createDefaultInjector().inject(victim);
final ResourceChangeDetector mockChangeDetector = Mockito.spy(victim.getResourceChangeDetector());
Mockito.when(mockLocatorFactory.locate(Mockito.anyString())).thenThrow(new IOException("Resource is unavailable"));
victim.check(cacheEntry);
verify(mockChangeDetector, never()).checkChangeForGroup(Mockito.anyString(), Mockito.anyString());
} |
| File |
|---|
| TestResourceWatcher.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
void onResourceChanged(final Resource resource) {
importResourceChanged.set(true);
}
<<<<<<< HEAD
=======
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
@Override
void onGroupChanged(final CacheKey key) {
groupChanged.set(true); |
| Solution content |
|---|
void onResourceChanged(final Resource resource) {
importResourceChanged.set(true);
}
@Override
void onGroupChanged(final CacheKey key) {
groupChanged.set(true); |
| File |
|---|
| TestResourceWatcher.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Blank |
| Chunk |
|---|
| Conflicting content |
|---|
}
};
createDefaultInjector().inject(victim);
<<<<<<< HEAD
when(mockLocator.getInputStream()).then(answerWithContent(String.format("@import url(%s)", importResourceUri)));
final ResourceLocator mockImportedResourceLocator = mock(ResourceLocator.class);
when(mockImportedResourceLocator.getInputStream()).then(answerWithContent("initial"));
when(mockLocatorFactory.getLocator(Mockito.eq("/" + RESOURCE_URI))).thenReturn(mockLocator);
when(mockLocatorFactory.getLocator(Mockito.eq("/" + importResourceUri))).thenReturn(mockImportedResourceLocator);
victim.check(cacheEntry);
when(mockImportedResourceLocator.getInputStream()).then(answerWithContent("changed"));
=======
when(mockLocator.locate(Mockito.anyString())).thenAnswer(answerWithContent("initial"));
when(mockLocator.locate("/" + Mockito.eq(RESOURCE_URI))).thenAnswer(
answerWithContent(String.format("@import url(%s)", importResourceUri)));
victim.check(cacheEntry);
when(mockLocator.locate(Mockito.anyString())).thenAnswer(answerWithContent("changed"));
when(mockLocator.locate("/" + Mockito.eq(RESOURCE_URI))).thenAnswer(
answerWithContent(String.format("@import url(%s)", importResourceUri)));
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
victim.check(cacheEntry);
assertTrue(groupChanged.get());
assertTrue(importResourceChanged.get()); |
| Solution content |
|---|
}
};
createDefaultInjector().inject(victim);
when(mockLocator.getInputStream()).then(answerWithContent(String.format("@import url(%s)", importResourceUri)));
final ResourceLocator mockImportedResourceLocator = mock(ResourceLocator.class);
when(mockImportedResourceLocator.getInputStream()).then(answerWithContent("initial"));
when(mockLocatorFactory.getLocator(Mockito.eq("/" + RESOURCE_URI))).thenReturn(mockLocator);
when(mockLocatorFactory.getLocator(Mockito.eq("/" + importResourceUri))).thenReturn(mockImportedResourceLocator);
victim.check(cacheEntry);
when(mockImportedResourceLocator.getInputStream()).then(answerWithContent("changed"));
victim.check(cacheEntry);
assertTrue(groupChanged.get());
assertTrue(importResourceChanged.get()); |
| File |
|---|
| TestResourceWatcher.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Variable |
| Chunk |
|---|
| Conflicting content |
|---|
createDefaultInjector().inject(victim);
// first check will always detect changes.
victim.check(cacheEntry2);
<<<<<<< HEAD
Mockito.when(mockLocatorFactory.locate(RESOURCE_FIRST)).then(answerWithContent("different"));
=======
when(mockLocator.locate(RESOURCE_FIRST)).thenAnswer(answerWithContent("changed"));
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8
victim.check(cacheEntry2);
assertTrue(groupChanged.get());
assertTrue(resourceChanged.get()); |
| Solution content |
|---|
createDefaultInjector().inject(victim);
// first check will always detect changes.
victim.check(cacheEntry2);
Mockito.when(mockLocatorFactory.locate(RESOURCE_FIRST)).then(answerWithContent("different"));
victim.check(cacheEntry2);
assertTrue(groupChanged.get());
assertTrue(resourceChanged.get()); |
| File |
|---|
| TestResourceWatcher.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Method invocation |
| Chunk |
|---|
| Conflicting content |
|---|
}
/**
<<<<<<< HEAD:wro4j-extensions/src/main/java/ro/isdc/wro/extensions/locator/WebjarResourceLocator.java
* {@inheritDoc}
*/
@Override
public long lastModified() {
return 0;
=======
* Replaces the protocol specific prefix and removes the query path if it exist, since it should not be accepted.
*/
private String extractPath(final String uri) {
return DefaultWildcardStreamLocator.stripQueryPath(uri.replace(PREFIX, ""));
>>>>>>> 6f5e55d8e28e841cf9cd458712f7717869f786d8:wro4j-extensions/src/main/java/ro/isdc/wro/extensions/locator/WebjarUriLocator.java
}
/** |
| Solution content |
|---|
@Override
* {@inheritDoc}
}
/**
*/
public long lastModified() {
return 0;
}
/** |
| File |
|---|
| WebjarResourceLocator.java |
| Developer's decision |
|---|
| Version 1 |
| Kind of conflict |
|---|
| Annotation |
| Comment |
| Method invocation |
| Method signature |
| Return statement |