diff options
| author | Furkan Sahin <furkan-dev@proton.me> | 2021-09-06 02:12:52 -0500 |
|---|---|---|
| committer | Furkan Sahin <furkan-dev@proton.me> | 2021-09-06 02:12:52 -0500 |
| commit | 08f60342d7219bc5eb67fdf4f071c6fd67548034 (patch) | |
| tree | 015f6af79c764990ef1fbc6ada7515c5d21817ee /adapters/gtest/executable.go | |
| parent | b5b5aa22cb9a6e65fc4ba7b8b5f5aff7a2450aec (diff) | |
| parent | 4a38e9734d093e151b281e40479707e34de2c5dd (diff) | |
Merge branch 'upstream' into ppa
Update to v0.1.1
Diffstat (limited to 'adapters/gtest/executable.go')
| -rw-r--r-- | adapters/gtest/executable.go | 43 |
1 files changed, 29 insertions, 14 deletions
diff --git a/adapters/gtest/executable.go b/adapters/gtest/executable.go index feafe97..f0eb158 100644 --- a/adapters/gtest/executable.go +++ b/adapters/gtest/executable.go @@ -12,14 +12,22 @@ import ( "sort" "context" - "golang.furkistan.com/planr" -) + "golang.furkistan.com/planr") type executable struct { - exeNm string - testpath string - srcs []string - tcs []planr.TestCase + exeNm string + testpath string + srcs []string + includeSrc bool + compilerOptions string + tcs []planr.TestCase +} + +func dieConflictingExeProperty(exe executable, tc planr.TestCase, property string) { + log.Fatalf( + "Two test cases (including %s) belonging to the same executable (%s) have one or more conflicting properties\nProperty :%s", + tc.Cname, exe.testpath, property, + ) } func createExecutables(tcs []planr.TestCase) []executable { @@ -39,10 +47,12 @@ func createExecutables(tcs []planr.TestCase) []executable { exe := executable { - planr.Cname("", file), - file, - cfg.Srcs, - exeTcs, + exeNm: planr.Cname("", file), + testpath: file, + srcs: cfg.Srcs, + includeSrc: *cfg.Include_src, + compilerOptions: cfg.Compiler_options, + tcs: exeTcs, } exes[file] = exe @@ -53,10 +63,15 @@ func createExecutables(tcs []planr.TestCase) []executable { // We could create two different executables for each source list // But, that would be confusing so we're going to disallow it if !reflect.DeepEqual(exe.srcs, cfg.Srcs) { - log.Fatalf( - "Two test case definitions %s and %s have different lists of sources", - exe.testpath, cfg.Testfile, - ) + dieConflictingExeProperty(exe, tc, "srcs") + } + + if exe.compilerOptions != cfg.Compiler_options { + dieConflictingExeProperty(exe, tc, "compiler_options") + } + + if exe.includeSrc != *cfg.Include_src { + dieConflictingExeProperty(exe, tc, "include_src") } exe.tcs = append(exe.tcs, tc) |
