From 5e99198c66443e0298b406212c1e80a55fc729aa Mon Sep 17 00:00:00 2001 From: Laurent Le Brun Date: Fri, 14 Oct 2016 13:39:45 +0000 Subject: Cleanup, remove differences between Build and Skylark environments. The only visible difference for users is that a few more functions are available in BUILD files. That's fine, this difference was not even documented. RELNOTES: A few functions are added to BUILD files for consistency (hash, dir, hasattr, getattr) with .bzl files, although they are not very useful. -- MOS_MIGRATED_REVID=136151633 --- .../lib/packages/SubincludePreprocessorTest.java | 16 +--- .../lib/packages/util/SubincludePreprocessor.java | 3 - .../devtools/build/lib/syntax/EnvironmentTest.java | 92 ++++++++++++++++++---- .../build/lib/syntax/util/EvaluationTestCase.java | 8 +- .../devtools/build/lib/testutil/TestMode.java | 6 +- 5 files changed, 88 insertions(+), 37 deletions(-) (limited to 'src/test/java/com/google') diff --git a/src/test/java/com/google/devtools/build/lib/packages/SubincludePreprocessorTest.java b/src/test/java/com/google/devtools/build/lib/packages/SubincludePreprocessorTest.java index 5fc46214f7..2f4ce9fce9 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/SubincludePreprocessorTest.java +++ b/src/test/java/com/google/devtools/build/lib/packages/SubincludePreprocessorTest.java @@ -22,33 +22,24 @@ import static org.junit.Assert.fail; import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.packages.util.PackageLoadingTestCase; import com.google.devtools.build.lib.packages.util.SubincludePreprocessor; -import com.google.devtools.build.lib.syntax.Environment; -import com.google.devtools.build.lib.syntax.Mutability; import com.google.devtools.build.lib.syntax.ParserInputSource; import com.google.devtools.build.lib.testutil.Suite; import com.google.devtools.build.lib.testutil.TestSpec; import com.google.devtools.build.lib.vfs.Path; - +import java.io.IOException; +import java.nio.CharBuffer; +import java.nio.charset.StandardCharsets; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; -import java.io.IOException; -import java.nio.CharBuffer; -import java.nio.charset.StandardCharsets; - @TestSpec(size = Suite.MEDIUM_TESTS) @RunWith(JUnit4.class) public class SubincludePreprocessorTest extends PackageLoadingTestCase { private Path packageRoot; protected SubincludePreprocessor preprocessor; - protected Environment globalEnv = - Environment.builder(Mutability.create("test")) - .setGlobals(Environment.BUILD) - .setEventHandler(reporter) - .build(); public SubincludePreprocessorTest() {} @@ -83,7 +74,6 @@ public class SubincludePreprocessorTest extends PackageLoadingTestCase { buildFileBytes, packageName, /*globber=*/ null, - globalEnv.getGlobals(), /*ruleNames=*/ null); Event.replayEventsOn(reporter, result.events); return result; diff --git a/src/test/java/com/google/devtools/build/lib/packages/util/SubincludePreprocessor.java b/src/test/java/com/google/devtools/build/lib/packages/util/SubincludePreprocessor.java index 06d350a617..dd161a2933 100644 --- a/src/test/java/com/google/devtools/build/lib/packages/util/SubincludePreprocessor.java +++ b/src/test/java/com/google/devtools/build/lib/packages/util/SubincludePreprocessor.java @@ -22,13 +22,11 @@ import com.google.devtools.build.lib.events.StoredEventHandler; import com.google.devtools.build.lib.packages.CachingPackageLocator; import com.google.devtools.build.lib.packages.Globber; import com.google.devtools.build.lib.packages.Preprocessor; -import com.google.devtools.build.lib.syntax.Environment; import com.google.devtools.build.lib.syntax.ParserInputSource; import com.google.devtools.build.lib.vfs.FileSystem; import com.google.devtools.build.lib.vfs.FileSystemUtils; import com.google.devtools.build.lib.vfs.Path; import com.google.devtools.build.lib.vfs.PathFragment; - import java.io.IOException; import java.nio.CharBuffer; import java.util.Arrays; @@ -107,7 +105,6 @@ public class SubincludePreprocessor implements Preprocessor { byte[] buildFileBytes, String packageName, Globber globber, - Environment.Frame globals, Set ruleNames) throws IOException, InterruptedException { StoredEventHandler eventHandler = new StoredEventHandler(); diff --git a/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentTest.java b/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentTest.java index f38695c0e7..1e8ae71195 100644 --- a/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentTest.java +++ b/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentTest.java @@ -100,10 +100,12 @@ public class EnvironmentTest extends EvaluationTestCase { Environment outerEnv; Environment innerEnv; try (Mutability mut = Mutability.create("outer")) { - outerEnv = Environment.builder(mut) - .setGlobals(Environment.BUILD).build() - .update("foo", "bar") - .update("wiz", 3); + outerEnv = + Environment.builder(mut) + .setGlobals(Environment.DEFAULT_GLOBALS) + .build() + .update("foo", "bar") + .update("wiz", 3); } try (Mutability mut = Mutability.create("inner")) { innerEnv = Environment.builder(mut) @@ -112,15 +114,74 @@ public class EnvironmentTest extends EvaluationTestCase { .update("quux", 42); } - assertEquals(Sets.newHashSet("foo", "wiz", - "False", "None", "True", - "-", "all", "any", "bool", "dict", "enumerate", "fail", "int", "len", "list", "max", - "min", "print", "range", "repr", "reversed", "select", "set", "sorted", "str", "zip"), + assertEquals( + Sets.newHashSet( + "foo", + "wiz", + "False", + "None", + "True", + "-", + "all", + "any", + "bool", + "dict", + "dir", + "enumerate", + "fail", + "getattr", + "hasattr", + "hash", + "int", + "len", + "list", + "max", + "min", + "print", + "range", + "repr", + "reversed", + "select", + "set", + "sorted", + "str", + "type", + "zip"), outerEnv.getVariableNames()); - assertEquals(Sets.newHashSet("foo", "wiz", "quux", - "False", "None", "True", - "-", "all", "any", "bool", "dict", "enumerate", "fail", "int", "len", "list", "max", - "min", "print", "range", "repr", "reversed", "select", "set", "sorted", "str", "zip"), + assertEquals( + Sets.newHashSet( + "foo", + "wiz", + "quux", + "False", + "None", + "True", + "-", + "all", + "any", + "bool", + "dict", + "dir", + "enumerate", + "fail", + "getattr", + "hasattr", + "hash", + "int", + "len", + "list", + "max", + "min", + "print", + "range", + "repr", + "reversed", + "select", + "set", + "sorted", + "str", + "type", + "zip"), innerEnv.getVariableNames()); } @@ -145,8 +206,11 @@ public class EnvironmentTest extends EvaluationTestCase { public void testFrozen() throws Exception { Environment env; try (Mutability mutability = Mutability.create("testFrozen")) { - env = Environment.builder(mutability) - .setGlobals(Environment.BUILD).setEventHandler(Environment.FAIL_FAST_HANDLER).build(); + env = + Environment.builder(mutability) + .setGlobals(Environment.DEFAULT_GLOBALS) + .setEventHandler(Environment.FAIL_FAST_HANDLER) + .build(); env.update("x", 1); assertEquals(env.lookup("x"), 1); env.update("y", 2); diff --git a/src/test/java/com/google/devtools/build/lib/syntax/util/EvaluationTestCase.java b/src/test/java/com/google/devtools/build/lib/syntax/util/EvaluationTestCase.java index a9873e3fc1..de6bfc2e6b 100644 --- a/src/test/java/com/google/devtools/build/lib/syntax/util/EvaluationTestCase.java +++ b/src/test/java/com/google/devtools/build/lib/syntax/util/EvaluationTestCase.java @@ -34,11 +34,9 @@ import com.google.devtools.build.lib.syntax.ParserInputSource; import com.google.devtools.build.lib.syntax.Statement; import com.google.devtools.build.lib.testutil.TestConstants; import com.google.devtools.build.lib.testutil.TestMode; - -import org.junit.Before; - import java.util.LinkedList; import java.util.List; +import org.junit.Before; /** * Base class for test cases that use parsing and evaluation services. @@ -69,7 +67,7 @@ public class EvaluationTestCase { */ public Environment newBuildEnvironment() { return Environment.builder(mutability) - .setGlobals(Environment.BUILD) + .setGlobals(Environment.DEFAULT_GLOBALS) .setEventHandler(getEventHandler()) .setToolsRepository(TestConstants.TOOLS_REPOSITORY) .setPhase(Phase.LOADING) @@ -83,7 +81,7 @@ public class EvaluationTestCase { public Environment newSkylarkEnvironment() { return Environment.builder(mutability) .setSkylark() - .setGlobals(Environment.SKYLARK) + .setGlobals(Environment.DEFAULT_GLOBALS) .setEventHandler(getEventHandler()) .build(); } diff --git a/src/test/java/com/google/devtools/build/lib/testutil/TestMode.java b/src/test/java/com/google/devtools/build/lib/testutil/TestMode.java index f58dca3978..b239f1bc11 100644 --- a/src/test/java/com/google/devtools/build/lib/testutil/TestMode.java +++ b/src/test/java/com/google/devtools/build/lib/testutil/TestMode.java @@ -27,7 +27,8 @@ public abstract class TestMode { @Override public Environment createEnvironment(EventHandler eventHandler, Environment environment) { return Environment.builder(Mutability.create("build test")) - .setGlobals(environment == null ? Environment.BUILD : environment.getGlobals()) + .setGlobals( + environment == null ? Environment.DEFAULT_GLOBALS : environment.getGlobals()) .setEventHandler(eventHandler) .build(); } @@ -39,7 +40,8 @@ public abstract class TestMode { public Environment createEnvironment(EventHandler eventHandler, Environment environment) { return Environment.builder(Mutability.create("skylark test")) .setSkylark() - .setGlobals(environment == null ? Environment.SKYLARK : environment.getGlobals()) + .setGlobals( + environment == null ? Environment.DEFAULT_GLOBALS : environment.getGlobals()) .setEventHandler(eventHandler) .build(); } -- cgit v1.2.3