Skip to content

Commit 4deca78

Browse files
authored
ts-proto improvements (#259)
* Enable js_outputs of proto_ts_library This was somewhat arbitrarily disabled. As it turns out, need to propagate the js files. * Add proto_plugin flags * Use basename for exclude comparison * ts-proto improve * Implement --include_proto_library_data=true * Suppres proto_compile if no outputs * Add M filtering * Fix plugin tests
1 parent 970a8ee commit 4deca78

26 files changed

Lines changed: 364 additions & 50 deletions

pkg/plugin/akka/akka_grpc/protoc_gen_akka_grpc_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ func TestProtoGenAkkaGrpcPlugin(t *testing.T) {
3232
),
3333
PluginName: "akka",
3434
Configuration: plugintest.WithConfiguration(
35+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/akka/akka-grpc:protoc-gen-akka-grpc"),
3536
plugintest.WithOutputs("test_akka_grpc.srcjar"),
3637
),
3738
SkipIntegration: true,

pkg/plugin/builtin/cpp_plugin_test.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ func TestCppPlugin(t *testing.T) {
1616
),
1717
PluginName: "cpp",
1818
Configuration: plugintest.WithConfiguration(
19+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:cpp"),
1920
plugintest.WithOutputs("test.pb.cc", "test.pb.h"),
2021
),
2122
},
@@ -26,6 +27,7 @@ func TestCppPlugin(t *testing.T) {
2627
"proto_plugin", "cpp implementation builtin:cpp",
2728
),
2829
Configuration: plugintest.WithConfiguration(
30+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:cpp"),
2931
plugintest.WithOutputs("test.pb.cc", "test.pb.h"),
3032
),
3133
},
@@ -36,6 +38,7 @@ func TestCppPlugin(t *testing.T) {
3638
"proto_plugin", "cpp implementation builtin:cpp",
3739
),
3840
Configuration: plugintest.WithConfiguration(
41+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:cpp"),
3942
plugintest.WithOutputs("test.pb.cc", "test.pb.h"),
4043
),
4144
},
@@ -47,6 +50,7 @@ func TestCppPlugin(t *testing.T) {
4750
"proto_plugin", "cpp implementation builtin:cpp",
4851
),
4952
Configuration: plugintest.WithConfiguration(
53+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:cpp"),
5054
plugintest.WithOutputs("rel/test.pb.cc", "rel/test.pb.h"),
5155
),
5256
},
@@ -58,6 +62,7 @@ func TestCppPlugin(t *testing.T) {
5862
"proto_plugin", "cpp implementation builtin:cpp",
5963
),
6064
Configuration: plugintest.WithConfiguration(
65+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:cpp"),
6166
plugintest.WithOutputs("snake_case.pb.cc", "snake_case.pb.h"),
6267
),
6368
},
@@ -69,6 +74,7 @@ func TestCppPlugin(t *testing.T) {
6974
"proto_plugin", "cpp implementation builtin:cpp",
7075
),
7176
Configuration: plugintest.WithConfiguration(
77+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:cpp"),
7278
plugintest.WithOutputs("PascalCase.pb.cc", "PascalCase.pb.h"),
7379
),
7480
},
@@ -80,6 +86,7 @@ func TestCppPlugin(t *testing.T) {
8086
"proto_plugin", "cpp implementation builtin:cpp",
8187
),
8288
Configuration: plugintest.WithConfiguration(
89+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:cpp"),
8390
plugintest.WithOutputs("camelCase.pb.cc", "camelCase.pb.h"),
8491
),
8592
},

pkg/plugin/builtin/csharp_plugin_test.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ func TestCsharpPlugin(t *testing.T) {
1717
),
1818
PluginName: "csharp",
1919
Configuration: plugintest.WithConfiguration(
20+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:csharp"),
2021
plugintest.WithOutputs("Test.cs"),
2122
),
2223
},
@@ -28,6 +29,7 @@ func TestCsharpPlugin(t *testing.T) {
2829
),
2930
PluginName: "csharp",
3031
Configuration: plugintest.WithConfiguration(
32+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:csharp"),
3133
plugintest.WithOutputs("Test.cs"),
3234
),
3335
},
@@ -39,6 +41,7 @@ func TestCsharpPlugin(t *testing.T) {
3941
),
4042
PluginName: "csharp",
4143
Configuration: plugintest.WithConfiguration(
44+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:csharp"),
4245
plugintest.WithOutputs("Test.cs"),
4346
),
4447
},
@@ -49,6 +52,7 @@ func TestCsharpPlugin(t *testing.T) {
4952
),
5053
PluginName: "csharp",
5154
Configuration: plugintest.WithConfiguration(
55+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:csharp"),
5256
plugintest.WithOutputs("Test.cs"),
5357
),
5458
},
@@ -60,7 +64,9 @@ func TestCsharpPlugin(t *testing.T) {
6064
),
6165
PluginName: "csharp",
6266
Configuration: plugintest.WithConfiguration(
67+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:csharp"),
6368
plugintest.WithOutputs("rel/Test.cs"),
69+
plugintest.WithOut("rel"),
6470
),
6571
},
6672
"basename converted to pascal": {
@@ -71,6 +77,7 @@ func TestCsharpPlugin(t *testing.T) {
7177
),
7278
PluginName: "csharp",
7379
Configuration: plugintest.WithConfiguration(
80+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:csharp"),
7481
plugintest.WithOutputs("FooBarBaz.cs"),
7582
),
7683
},

pkg/plugin/builtin/java_plugin_test.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@ func TestJavaPlugin(t *testing.T) {
1616
),
1717
PluginName: "java",
1818
Configuration: plugintest.WithConfiguration(
19+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:java"),
1920
plugintest.WithOutputs("test.srcjar"),
21+
plugintest.WithOut("test.srcjar"),
2022
),
2123
},
2224
"message with a package": {
@@ -26,7 +28,9 @@ func TestJavaPlugin(t *testing.T) {
2628
),
2729
PluginName: "java",
2830
Configuration: plugintest.WithConfiguration(
31+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:java"),
2932
plugintest.WithOutputs("test.srcjar"),
33+
plugintest.WithOut("test.srcjar"),
3034
),
3135
},
3236
"relative package location": {
@@ -37,7 +41,9 @@ func TestJavaPlugin(t *testing.T) {
3741
),
3842
PluginName: "java",
3943
Configuration: plugintest.WithConfiguration(
44+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:java"),
4045
plugintest.WithOutputs("src/main/java/foo/test.srcjar"),
46+
plugintest.WithOut("src/main/java/foo/test.srcjar"),
4147
),
4248
},
4349
})

pkg/plugin/builtin/js_closure_plugin_test.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ func TestJsClosurePlugin(t *testing.T) {
1616
),
1717
PluginName: "js",
1818
Configuration: plugintest.WithConfiguration(
19+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:closurejs"),
1920
plugintest.WithOutputs("test.js"),
2021
plugintest.WithOptions("import_style=closure", "library=test"),
2122
),
@@ -27,6 +28,7 @@ func TestJsClosurePlugin(t *testing.T) {
2728
),
2829
PluginName: "js",
2930
Configuration: plugintest.WithConfiguration(
31+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:closurejs"),
3032
plugintest.WithOutputs("test.js"),
3133
plugintest.WithOptions("import_style=closure", "library=test"),
3234
),
@@ -38,6 +40,7 @@ func TestJsClosurePlugin(t *testing.T) {
3840
),
3941
PluginName: "js",
4042
Configuration: plugintest.WithConfiguration(
43+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:closurejs"),
4144
plugintest.WithOutputs("test.js"),
4245
plugintest.WithOptions("import_style=closure", "library=test"),
4346
),
@@ -49,6 +52,7 @@ func TestJsClosurePlugin(t *testing.T) {
4952
),
5053
PluginName: "js",
5154
Configuration: plugintest.WithConfiguration(
55+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:closurejs"),
5256
plugintest.WithOutputs("test.js"),
5357
plugintest.WithOptions("import_style=closure", "library=test"),
5458
),
@@ -61,6 +65,7 @@ func TestJsClosurePlugin(t *testing.T) {
6165
),
6266
PluginName: "js",
6367
Configuration: plugintest.WithConfiguration(
68+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:closurejs"),
6469
plugintest.WithOutputs("rel/test.js"),
6570
plugintest.WithOptions("import_style=closure", "library=rel/test"),
6671
),

pkg/plugin/builtin/js_common_plugin_test.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ func TestJsCommonPlugin(t *testing.T) {
1616
),
1717
PluginName: "js",
1818
Configuration: plugintest.WithConfiguration(
19+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:commonjs"),
1920
plugintest.WithOutputs("test_pb.js"),
2021
plugintest.WithOptions("import_style=commonjs"),
2122
),
@@ -27,6 +28,7 @@ func TestJsCommonPlugin(t *testing.T) {
2728
),
2829
PluginName: "js",
2930
Configuration: plugintest.WithConfiguration(
31+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:commonjs"),
3032
plugintest.WithOutputs("test_pb.js"),
3133
plugintest.WithOptions("import_style=commonjs"),
3234
),
@@ -38,6 +40,7 @@ func TestJsCommonPlugin(t *testing.T) {
3840
),
3941
PluginName: "js",
4042
Configuration: plugintest.WithConfiguration(
43+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:commonjs"),
4144
plugintest.WithOutputs("test_pb.js"),
4245
plugintest.WithOptions("import_style=commonjs"),
4346
),
@@ -49,6 +52,7 @@ func TestJsCommonPlugin(t *testing.T) {
4952
),
5053
PluginName: "js",
5154
Configuration: plugintest.WithConfiguration(
55+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:commonjs"),
5256
plugintest.WithOutputs("test_pb.js"),
5357
plugintest.WithOptions("import_style=commonjs"),
5458
),
@@ -61,6 +65,7 @@ func TestJsCommonPlugin(t *testing.T) {
6165
),
6266
PluginName: "js",
6367
Configuration: plugintest.WithConfiguration(
68+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:commonjs"),
6469
plugintest.WithOutputs("rel/test_pb.js"),
6570
plugintest.WithOptions("import_style=commonjs"),
6671
),

pkg/plugin/builtin/objc_plugin_test.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ func TestObjcPlugin(t *testing.T) {
1616
),
1717
PluginName: "objc",
1818
Configuration: plugintest.WithConfiguration(
19+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:objc"),
1920
plugintest.WithOutputs("Test.pbobjc.h", "Test.pbobjc.m"),
2021
),
2122
},
@@ -26,6 +27,7 @@ func TestObjcPlugin(t *testing.T) {
2627
),
2728
PluginName: "objc",
2829
Configuration: plugintest.WithConfiguration(
30+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:objc"),
2931
plugintest.WithOutputs("Test.pbobjc.h", "Test.pbobjc.m"),
3032
),
3133
},
@@ -36,6 +38,7 @@ func TestObjcPlugin(t *testing.T) {
3638
),
3739
PluginName: "objc",
3840
Configuration: plugintest.WithConfiguration(
41+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:objc"),
3942
plugintest.WithOutputs("Test.pbobjc.h", "Test.pbobjc.m"),
4043
),
4144
},
@@ -46,6 +49,7 @@ func TestObjcPlugin(t *testing.T) {
4649
),
4750
PluginName: "objc",
4851
Configuration: plugintest.WithConfiguration(
52+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:objc"),
4953
plugintest.WithOutputs("Test.pbobjc.h", "Test.pbobjc.m"),
5054
),
5155
},
@@ -57,6 +61,7 @@ func TestObjcPlugin(t *testing.T) {
5761
),
5862
PluginName: "objc",
5963
Configuration: plugintest.WithConfiguration(
64+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:objc"),
6065
plugintest.WithOutputs("rel/Test.pbobjc.h", "rel/Test.pbobjc.m"),
6166
),
6267
},
@@ -68,6 +73,7 @@ func TestObjcPlugin(t *testing.T) {
6873
),
6974
PluginName: "objc",
7075
Configuration: plugintest.WithConfiguration(
76+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:objc"),
7177
plugintest.WithOutputs("FooBarBaz.pbobjc.h", "FooBarBaz.pbobjc.m"),
7278
),
7379
},

pkg/plugin/builtin/php_plugin_test.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ func TestPhpPlugin(t *testing.T) {
1616
),
1717
PluginName: "php",
1818
Configuration: plugintest.WithConfiguration(
19+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:php"),
1920
plugintest.WithOutputs("GPBMetadata/Test.php"),
2021
),
2122
},
@@ -26,6 +27,7 @@ func TestPhpPlugin(t *testing.T) {
2627
),
2728
PluginName: "php",
2829
Configuration: plugintest.WithConfiguration(
30+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:php"),
2931
plugintest.WithOutputs("GPBMetadata/Test.php", "E.php", "M.php"),
3032
),
3133
},
@@ -36,6 +38,7 @@ func TestPhpPlugin(t *testing.T) {
3638
),
3739
PluginName: "php",
3840
Configuration: plugintest.WithConfiguration(
41+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:php"),
3942
plugintest.WithOutputs("GPBMetadata/Test.php", "P/E.php", "P/M.php"),
4043
),
4144
},
@@ -46,6 +49,7 @@ func TestPhpPlugin(t *testing.T) {
4649
),
4750
PluginName: "php",
4851
Configuration: plugintest.WithConfiguration(
52+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:php"),
4953
plugintest.WithOutputs("GPBMetadata/Test.php", "foo/E.php", "foo/M.php"),
5054
),
5155
},
@@ -56,6 +60,7 @@ func TestPhpPlugin(t *testing.T) {
5660
),
5761
PluginName: "php",
5862
Configuration: plugintest.WithConfiguration(
63+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:php"),
5964
plugintest.WithOutputs("bar/Test.php", "P/E.php", "P/M.php"),
6065
),
6166
},
@@ -67,7 +72,9 @@ func TestPhpPlugin(t *testing.T) {
6772
),
6873
PluginName: "php",
6974
Configuration: plugintest.WithConfiguration(
75+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:php"),
7076
plugintest.WithOutputs("a/b/c/GPBMetadata/A/B/C/Test.php", "a/b/c/M.php"),
77+
plugintest.WithOut("a/b/c"),
7178
),
7279
},
7380
})

pkg/plugin/builtin/pyi_plugin_test.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ func TestPyiPlugin(t *testing.T) {
1616
),
1717
PluginName: "pyi",
1818
Configuration: plugintest.WithConfiguration(
19+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:pyi"),
1920
plugintest.WithOutputs("test_pb2.pyi"),
2021
),
2122
},
@@ -26,6 +27,7 @@ func TestPyiPlugin(t *testing.T) {
2627
),
2728
PluginName: "pyi",
2829
Configuration: plugintest.WithConfiguration(
30+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:pyi"),
2931
plugintest.WithOutputs("test_pb2.pyi"),
3032
),
3133
},
@@ -36,6 +38,7 @@ func TestPyiPlugin(t *testing.T) {
3638
),
3739
PluginName: "pyi",
3840
Configuration: plugintest.WithConfiguration(
41+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:pyi"),
3942
plugintest.WithOutputs("test_pb2.pyi"),
4043
),
4144
},
@@ -47,6 +50,7 @@ func TestPyiPlugin(t *testing.T) {
4750
),
4851
PluginName: "pyi",
4952
Configuration: plugintest.WithConfiguration(
53+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:pyi"),
5054
plugintest.WithOutputs("rel/test_pb2.pyi"),
5155
),
5256
},
@@ -58,6 +62,7 @@ func TestPyiPlugin(t *testing.T) {
5862
),
5963
PluginName: "pyi",
6064
Configuration: plugintest.WithConfiguration(
65+
plugintest.WithLabel(t, "@build_stack_rules_proto//plugin/builtin:pyi"),
6166
plugintest.WithOutputs("a_b*c+d=e|g!h#i_pb2.pyi"),
6267
),
6368
},

0 commit comments

Comments
 (0)