diff options
author | Tobias Bosch <tbosch@google.com> | 2019-07-17 04:22:34 -0700 |
---|---|---|
committer | Tobias Bosch <tbosch@google.com> | 2019-07-18 09:08:50 +0000 |
commit | 198a3c9519e5d93ffeb8f5e1b6694c34b178c5c4 (patch) | |
tree | 770bbd6c63184a1dbcdbcee01bf551815d062bee /compiler_wrapper/clang_syntax_flag_test.go | |
parent | 22c32b40be54a9e4062655f90908f98b11e73966 (diff) | |
download | toolchain-utils-198a3c9519e5d93ffeb8f5e1b6694c34b178c5c4.tar.gz |
Fix minor bugs
These bugs were detected while creating golden tests
and comparing them to the old wrapper (see next commit).
Also makes flag order in old wrapper deterministic by
replacing sets with a SetList class that is based
on a list.
BUG=chromium:773875
TEST=unit test
Change-Id: I8e2680f732577f1f590042f1ccd589dfedadd6ce
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/toolchain-utils/+/1706791
Tested-by: Tobias Bosch <tbosch@google.com>
Reviewed-by: George Burgess <gbiv@chromium.org>
Diffstat (limited to 'compiler_wrapper/clang_syntax_flag_test.go')
-rw-r--r-- | compiler_wrapper/clang_syntax_flag_test.go | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/compiler_wrapper/clang_syntax_flag_test.go b/compiler_wrapper/clang_syntax_flag_test.go index d2661812..c30d9795 100644 --- a/compiler_wrapper/clang_syntax_flag_test.go +++ b/compiler_wrapper/clang_syntax_flag_test.go @@ -124,10 +124,35 @@ func TestUseGomaForClangSyntaxCheck(t *testing.T) { } return nil } - ctx.must(callCompiler(ctx, ctx.cfg, + cmd := ctx.must(callCompiler(ctx, ctx.cfg, ctx.newCommand(gccX86_64, "-clang-syntax", mainCc))) if ctx.cmdCount != 2 { t.Errorf("expected 2 calls. Got: %d", ctx.cmdCount) } + if err := verifyPath(cmd, gomaPath); err != nil { + t.Error(err) + } + }) +} + +func TestPartiallyOmitCCacheForClangSyntaxCheck(t *testing.T) { + withTestContext(t, func(ctx *testContext) { + ctx.cfg.useCCache = true + ctx.cmdMock = func(cmd *command, stdout io.Writer, stderr io.Writer) error { + if ctx.cmdCount == 1 { + if err := verifyPath(cmd, "usr/bin/clang"); err != nil { + return err + } + } + return nil + } + cmd := ctx.must(callCompiler(ctx, ctx.cfg, + ctx.newCommand(gccX86_64, "-clang-syntax", mainCc))) + if ctx.cmdCount != 2 { + t.Errorf("expected 2 calls. Got: %d", ctx.cmdCount) + } + if err := verifyPath(cmd, "/usr/bin/ccache"); err != nil { + t.Error(err) + } }) } |