diff options
| author | 2020-08-31 07:54:32 +0000 | |
|---|---|---|
| committer | 2020-08-31 07:54:32 +0000 | |
| commit | 416149e09b30e80e0599c1b9b482605704ac29c3 (patch) | |
| tree | 31583bbd2a24da34cd804259afc2190035796ee4 /rust/binary_test.go | |
| parent | 9c35c9ae6305a64173da2e29d171748a90ca0048 (diff) | |
| parent | fabaff6bd74cda382dd7d5152df7362bffe233a3 (diff) | |
Merge changes I94fd8bbc,I497dcdff,I1873a180
* changes:
rust: strip libraries and binaries
rust: add ccToolchain to Module
rust: enable use-android-relr-tags
Diffstat (limited to 'rust/binary_test.go')
| -rw-r--r-- | rust/binary_test.go | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/rust/binary_test.go b/rust/binary_test.go index 2fc38ed74..cfef57a77 100644 --- a/rust/binary_test.go +++ b/rust/binary_test.go @@ -96,3 +96,33 @@ func TestLinkObjects(t *testing.T) { t.Errorf("missing shared dependency 'libfoo.so' in linkFlags: %#v", linkFlags) } } + +// Test that stripped versions are correctly generated and used. +func TestStrippedBinary(t *testing.T) { + ctx := testRust(t, ` + rust_binary { + name: "foo", + srcs: ["foo.rs"], + } + rust_binary { + name: "bar", + srcs: ["foo.rs"], + strip: { + none: true + } + } + `) + + foo := ctx.ModuleForTests("foo", "android_arm64_armv8-a") + foo.Output("stripped/foo") + // Check that the `cp` rules is using the stripped version as input. + cp := foo.Rule("android.Cp") + if !strings.HasSuffix(cp.Input.String(), "stripped/foo") { + t.Errorf("installed binary not based on stripped version: %v", cp.Input) + } + + fizzBar := ctx.ModuleForTests("bar", "android_arm64_armv8-a").MaybeOutput("stripped/bar") + if fizzBar.Rule != nil { + t.Errorf("stripped version of bar has been generated") + } +} |