blob: 0121abfb58902bd53f5a53b7dacbe0a10a1b84cf [file] [log] [blame]
/*
* Copyright 2008 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.google.gwt.core.ext.linker;
import com.google.gwt.core.ext.linker.impl.StandardScriptReference;
import com.google.gwt.core.ext.linker.impl.StandardStylesheetReference;
import junit.framework.TestCase;
import java.util.SortedSet;
/**
* Tests for {@link ArtifactSet}.
*/
public class ArtifactSetTest extends TestCase {
public void testScriptOrder() {
StandardScriptReference fooScript = new StandardScriptReference("foo", 0);
StandardScriptReference barScript = new StandardScriptReference("bar", 1);
assertTrue(fooScript.compareTo(barScript) < 0);
assertTrue(barScript.compareTo(fooScript) > 0);
assertTrue(fooScript.compareTo(fooScript) == 0);
assertTrue(barScript.compareTo(barScript) == 0);
{
ArtifactSet set = new ArtifactSet();
// Add in order.
set.add(fooScript);
set.add(barScript);
assertEquals(2, set.size());
assertSame(fooScript, set.first());
assertSame(barScript, set.last());
SortedSet<StandardScriptReference> found = set.find(StandardScriptReference.class);
assertEquals(2, found.size());
assertSame(fooScript, found.first());
assertSame(barScript, found.last());
}
{
ArtifactSet set = new ArtifactSet();
// Reversed add order.
set.add(barScript);
set.add(fooScript);
assertEquals(2, set.size());
assertSame(fooScript, set.first());
assertSame(barScript, set.last());
SortedSet<StandardScriptReference> found = set.find(StandardScriptReference.class);
assertEquals(2, found.size());
assertSame(fooScript, found.first());
assertSame(barScript, found.last());
}
}
public void testStyleOrder() {
StandardStylesheetReference fooStyle = new StandardStylesheetReference(
"foo", 0);
StandardStylesheetReference barStyle = new StandardStylesheetReference(
"bar", 1);
assertTrue(fooStyle.compareTo(barStyle) < 0);
assertTrue(barStyle.compareTo(fooStyle) > 0);
assertTrue(fooStyle.compareTo(fooStyle) == 0);
assertTrue(barStyle.compareTo(barStyle) == 0);
{
ArtifactSet set = new ArtifactSet();
// Add in order.
set.add(fooStyle);
set.add(barStyle);
assertEquals(2, set.size());
assertSame(fooStyle, set.first());
assertSame(barStyle, set.last());
SortedSet<StandardStylesheetReference> found = set.find(StandardStylesheetReference.class);
assertEquals(2, found.size());
assertSame(fooStyle, found.first());
assertSame(barStyle, found.last());
}
{
ArtifactSet set = new ArtifactSet();
// Reversed add order.
set.add(barStyle);
set.add(fooStyle);
assertEquals(2, set.size());
assertSame(fooStyle, set.first());
assertSame(barStyle, set.last());
SortedSet<StandardStylesheetReference> found = set.find(StandardStylesheetReference.class);
assertEquals(2, found.size());
assertSame(fooStyle, found.first());
assertSame(barStyle, found.last());
}
}
}