diff options
Diffstat (limited to 'src/test/java/com/google/devtools/build')
4 files changed, 61 insertions, 32 deletions
diff --git a/src/test/java/com/google/devtools/build/lib/cmdline/PackageIdentifierTest.java b/src/test/java/com/google/devtools/build/lib/cmdline/PackageIdentifierTest.java index 17aecaf70b..2e43b80315 100644 --- a/src/test/java/com/google/devtools/build/lib/cmdline/PackageIdentifierTest.java +++ b/src/test/java/com/google/devtools/build/lib/cmdline/PackageIdentifierTest.java @@ -17,9 +17,7 @@ package com.google.devtools.build.lib.cmdline; import static com.google.common.truth.Truth.assertThat; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertSame; -import static org.junit.Assert.fail; -import com.google.devtools.build.lib.cmdline.PackageIdentifier.RepositoryName; import com.google.devtools.build.lib.vfs.PathFragment; import org.junit.Test; @@ -54,34 +52,6 @@ public class PackageIdentifierTest { assertThat(mainA.getRepository()).isEqualTo(PackageIdentifier.MAIN_REPOSITORY_NAME); } - public void assertNotValid(String name, String expectedMessage) { - try { - RepositoryName.create(name); - fail(); - } catch (LabelSyntaxException expected) { - assertThat(expected.getMessage()).contains(expectedMessage); - } - } - - @Test - public void testValidateRepositoryName() throws Exception { - assertEquals("@foo", RepositoryName.create("@foo").toString()); - assertThat(RepositoryName.create("").toString()).isEmpty(); - assertEquals("@foo_bar", RepositoryName.create("@foo_bar").toString()); - assertEquals("@foo-bar", RepositoryName.create("@foo-bar").toString()); - assertEquals("@foo.bar", RepositoryName.create("@foo.bar").toString()); - assertEquals("@..foo", RepositoryName.create("@..foo").toString()); - assertEquals("@foo..", RepositoryName.create("@foo..").toString()); - assertEquals("@.foo", RepositoryName.create("@.foo").toString()); - - assertNotValid("x", "workspace names must start with '@'"); - assertNotValid("@.", "workspace names are not allowed to be '@.'"); - assertNotValid("@..", "workspace names are not allowed to be '@..'"); - assertNotValid("@foo/bar", "workspace names may contain only A-Z, a-z, 0-9, '-', '_' and '.'"); - assertNotValid("@foo@", "workspace names may contain only A-Z, a-z, 0-9, '-', '_' and '.'"); - assertNotValid("@foo\0", "workspace names may contain only A-Z, a-z, 0-9, '-', '_' and '.'"); - } - @Test public void testToString() throws Exception { PackageIdentifier local = PackageIdentifier.create("", new PathFragment("bar/baz")); diff --git a/src/test/java/com/google/devtools/build/lib/cmdline/RepositoryNameTest.java b/src/test/java/com/google/devtools/build/lib/cmdline/RepositoryNameTest.java new file mode 100644 index 0000000000..b84af2fde6 --- /dev/null +++ b/src/test/java/com/google/devtools/build/lib/cmdline/RepositoryNameTest.java @@ -0,0 +1,59 @@ +// Copyright 2016 The Bazel Authors. All rights reserved. +// +// 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.devtools.build.lib.cmdline; + +import static com.google.common.truth.Truth.assertThat; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.fail; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.JUnit4; + +/** + * Tests for @{link RepositoryName}. + */ +@RunWith(JUnit4.class) +public class RepositoryNameTest { + + public void assertNotValid(String name, String expectedMessage) { + try { + RepositoryName.create(name); + fail(); + } catch (LabelSyntaxException expected) { + assertThat(expected.getMessage()).contains(expectedMessage); + } + } + + @Test + public void testValidateRepositoryName() throws Exception { + assertEquals("@foo", RepositoryName.create("@foo").toString()); + assertThat(RepositoryName.create("").toString()).isEmpty(); + assertEquals("@foo_bar", RepositoryName.create("@foo_bar").toString()); + assertEquals("@foo-bar", RepositoryName.create("@foo-bar").toString()); + assertEquals("@foo.bar", RepositoryName.create("@foo.bar").toString()); + assertEquals("@..foo", RepositoryName.create("@..foo").toString()); + assertEquals("@foo..", RepositoryName.create("@foo..").toString()); + assertEquals("@.foo", RepositoryName.create("@.foo").toString()); + + assertNotValid("x", "workspace names must start with '@'"); + assertNotValid("@.", "workspace names are not allowed to be '@.'"); + assertNotValid("@..", "workspace names are not allowed to be '@..'"); + assertNotValid("@foo/bar", "workspace names may contain only A-Z, a-z, 0-9, '-', '_' and '.'"); + assertNotValid("@foo@", "workspace names may contain only A-Z, a-z, 0-9, '-', '_' and '.'"); + assertNotValid("@foo\0", "workspace names may contain only A-Z, a-z, 0-9, '-', '_' and '.'"); + } + +} diff --git a/src/test/java/com/google/devtools/build/lib/packages/util/MockCcSupport.java b/src/test/java/com/google/devtools/build/lib/packages/util/MockCcSupport.java index 0f61571d82..ae897889da 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/util/MockCcSupport.java +++ b/src/test/java/com/google/devtools/build/lib/packages/util/MockCcSupport.java @@ -20,7 +20,7 @@ import com.google.devtools.build.lib.actions.Artifact; import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.LabelSyntaxException; import com.google.devtools.build.lib.cmdline.PackageIdentifier; -import com.google.devtools.build.lib.cmdline.PackageIdentifier.RepositoryName; +import com.google.devtools.build.lib.cmdline.RepositoryName; import com.google.devtools.build.lib.testutil.TestConstants; import com.google.devtools.build.lib.vfs.PathFragment; import com.google.devtools.build.lib.view.config.crosstool.CrosstoolConfig; diff --git a/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgKeyTest.java b/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgKeyTest.java index 61ec920061..2b264e32ff 100644 --- a/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgKeyTest.java +++ b/src/test/java/com/google/devtools/build/lib/skyframe/RecursivePkgKeyTest.java @@ -18,7 +18,7 @@ import static org.junit.Assert.fail; import com.google.common.collect.ImmutableSet; import com.google.devtools.build.lib.analysis.util.BuildViewTestCase; import com.google.devtools.build.lib.cmdline.PackageIdentifier; -import com.google.devtools.build.lib.cmdline.PackageIdentifier.RepositoryName; +import com.google.devtools.build.lib.cmdline.RepositoryName; import com.google.devtools.build.lib.skyframe.RecursivePkgValue.RecursivePkgKey; import com.google.devtools.build.lib.vfs.PathFragment; import com.google.devtools.build.lib.vfs.RootedPath; |