Skip to content

Commit e1e7863

Browse files
comiuscopybara-github
authored andcommitted
Rewrite tests for proto_common.declare_generated_files
PiperOrigin-RevId: 747780475 Change-Id: Id13d36717463eef795b0a0748e38d5523ef3c8e9
1 parent 8299d93 commit e1e7863

File tree

1 file changed

+2
-79
lines changed

1 file changed

+2
-79
lines changed

src/test/java/com/google/devtools/build/lib/rules/proto/BazelProtoCommonTest.java

+2-79
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,10 @@
1515
package com.google.devtools.build.lib.rules.proto;
1616

1717
import static com.google.common.truth.Truth.assertThat;
18-
import static com.google.devtools.build.lib.actions.util.ActionsTestUtil.prettyArtifactNames;
1918

2019
import com.google.common.truth.Correspondence;
2120
import com.google.devtools.build.lib.actions.ResourceSet;
2221
import com.google.devtools.build.lib.analysis.ConfiguredTarget;
23-
import com.google.devtools.build.lib.analysis.FileProvider;
2422
import com.google.devtools.build.lib.analysis.actions.SpawnAction;
2523
import com.google.devtools.build.lib.analysis.util.BuildViewTestCase;
2624
import com.google.devtools.build.lib.packages.util.MockProtoSupport;
@@ -93,7 +91,7 @@ public final void setup() throws Exception {
9391

9492
scratch.file(
9593
"foo/generate.bzl",
96-
"""
94+
"""
9795
load("@com_google_protobuf//bazel/common:proto_info.bzl", "ProtoInfo")
9896
load("@com_google_protobuf//bazel/common:proto_common.bzl", "proto_common")
9997
load("@com_google_protobuf//bazel/common:proto_lang_toolchain_info.bzl", "ProtoLangToolchainInfo")
@@ -140,52 +138,9 @@ def _impl(ctx):
140138
})
141139
""");
142140

143-
scratch.file(
144-
"foo/should_generate.bzl",
145-
"""
146-
load("@com_google_protobuf//bazel/common:proto_info.bzl", "ProtoInfo")
147-
load("@com_google_protobuf//bazel/common:proto_common.bzl", "proto_common")
148-
load("@com_google_protobuf//bazel/common:proto_lang_toolchain_info.bzl", "ProtoLangToolchainInfo")
149-
BoolProvider = provider()
150-
def _impl(ctx):
151-
result = proto_common.experimental_should_generate_code(
152-
ctx.attr.proto_dep[ProtoInfo],
153-
ctx.attr.toolchain[ProtoLangToolchainInfo],
154-
'MyRule',
155-
ctx.attr.proto_dep.label)
156-
return [BoolProvider(value = result)]
157-
should_compile_rule = rule(_impl,
158-
attrs = {
159-
'proto_dep': attr.label(),
160-
'toolchain': attr.label(default = '//foo:toolchain'),
161-
})
162-
""");
163-
164-
scratch.file(
165-
"foo/declare_generated_files.bzl",
166-
"""
167-
load("@com_google_protobuf//bazel/common:proto_info.bzl", "ProtoInfo")
168-
load("@com_google_protobuf//bazel/common:proto_common.bzl", "proto_common")
169-
def _impl(ctx):
170-
files = proto_common.declare_generated_files(
171-
ctx.actions,
172-
ctx.attr.proto_dep[ProtoInfo],
173-
ctx.attr.extension,
174-
(lambda s: s.replace('-','_').replace('.','/')) if ctx.attr.python_names else None)
175-
for f in files:
176-
ctx.actions.write(f, '')
177-
return [DefaultInfo(files = depset(files))]
178-
declare_generated_files = rule(_impl,
179-
attrs = {
180-
'proto_dep': attr.label(),
181-
'extension': attr.string(),
182-
'python_names': attr.bool(default = False),
183-
})
184-
""");
185-
186141
scratch.file(
187142
"foo/check_collocated.bzl",
188-
"""
143+
"""
189144
load("@com_google_protobuf//bazel/common:proto_info.bzl", "ProtoInfo")
190145
load("@com_google_protobuf//bazel/common:proto_common.bzl", "proto_common")
191146
load("@com_google_protobuf//bazel/common:proto_lang_toolchain_info.bzl", "ProtoLangToolchainInfo")
@@ -308,38 +263,6 @@ public void protoCommonCompile_overrideProgressMessage() throws Exception {
308263
assertThat(spawnAction.getProgressMessage()).isEqualTo("My //bar:simple");
309264
}
310265

311-
/** Verifies <code>proto_common.declare_generated_files</code> call. */
312-
@Test
313-
public void declareGenerateFiles_basic() throws Exception {
314-
scratch.file(
315-
"bar/BUILD",
316-
"load('@com_google_protobuf//bazel:proto_library.bzl', 'proto_library')",
317-
"load('//foo:declare_generated_files.bzl', 'declare_generated_files')",
318-
"proto_library(name = 'proto', srcs = ['A.proto', 'b/B.proto'])",
319-
"declare_generated_files(name = 'simple', proto_dep = ':proto', extension = '.cc')");
320-
321-
ConfiguredTarget target = getConfiguredTarget("//bar:simple");
322-
323-
assertThat(prettyArtifactNames(target.getProvider(FileProvider.class).getFilesToBuild()))
324-
.containsExactly("bar/A.cc", "bar/b/B.cc");
325-
}
326-
327-
/** Verifies <code>proto_common.declare_generated_files</code> call for Python. */
328-
@Test
329-
public void declareGenerateFiles_pythonc() throws Exception {
330-
scratch.file(
331-
"bar/BUILD",
332-
"load('@com_google_protobuf//bazel:proto_library.bzl', 'proto_library')",
333-
"load('//foo:declare_generated_files.bzl', 'declare_generated_files')",
334-
"proto_library(name = 'proto', srcs = ['my-proto.gen.proto'])",
335-
"declare_generated_files(name = 'simple', proto_dep = ':proto', extension = '_pb2.py',",
336-
" python_names = True)");
337-
338-
ConfiguredTarget target = getConfiguredTarget("//bar:simple");
339-
340-
assertThat(prettyArtifactNames(target.getProvider(FileProvider.class).getFilesToBuild()))
341-
.containsExactly("bar/my_proto/gen_pb2.py");
342-
}
343266

344267
@Test
345268
public void langProtoLibrary_inDifferentPackage_allowed() throws Exception {

0 commit comments

Comments
 (0)