Skip to content

integration-cli: make some tests less noisy and easier debuggable#40115

Merged
cpuguy83 merged 5 commits into
moby:masterfrom
thaJeztah:integration_cli_denoise
Oct 24, 2019
Merged

integration-cli: make some tests less noisy and easier debuggable#40115
cpuguy83 merged 5 commits into
moby:masterfrom
thaJeztah:integration_cli_denoise

Conversation

@thaJeztah

Copy link
Copy Markdown
Member

see individual commits for details

@thaJeztah

Copy link
Copy Markdown
Member Author

welp! why does CI not show the TestCp tests? on other PR's, I can see them running (e.g. TestDockerSuite/TestCpFromCaseC in https://ci.docker.com/public/job/moby/job/PR-40111/1/execution/node/220/log/?consoleFull), but on this PR they're missing https://ci.docker.com/public/job/moby/job/PR-40115/2/execution/node/265/log/?consoleFull

Is something in the filter we use in the Jenkinsfile causing them to not be found?

TEST_INTEGRATION_DEST=2 CONTAINER_NAME=${CONTAINER_NAME}-2 TEST_SKIP_INTEGRATION=1 TESTFLAGS="-test.run Test(DockerSuite|DockerNetworkSuite|DockerHubPullSuite|DockerRegistrySuite|DockerSchema1RegistrySuite|DockerRegistryAuthTokenSuite|DockerRegistryAuthHtpasswdSuite)/" run_tests &

@thaJeztah

Copy link
Copy Markdown
Member Author

OK something definitely weird; running locally, the tests are included;

make TEST_SKIP_INTEGRATION=1 TESTFLAGS="-test.run TestDockerSuite/" test-integration

...
=== RUN   TestDockerSuite/TestContainersInMultipleNetworks
=== RUN   TestDockerSuite/TestContainersInUserDefinedNetwork
=== RUN   TestDockerSuite/TestContainersNetworkIsolation
=== RUN   TestDockerSuite/TestCopyAndRestart
=== RUN   TestDockerSuite/TestCopyCreatedContainer
=== RUN   TestDockerSuite/TestCpAbsolutePath
=== RUN   TestDockerSuite/TestCpAbsoluteSymlink
=== RUN   TestDockerSuite/TestCpCheckDestOwnership
=== RUN   TestDockerSuite/TestCpFromCaseA
=== RUN   TestDockerSuite/TestCpFromCaseB
=== RUN   TestDockerSuite/TestCpFromCaseC
=== RUN   TestDockerSuite/TestCpFromCaseD
=== RUN   TestDockerSuite/TestCpFromCaseE
=== RUN   TestDockerSuite/TestCpFromCaseF
=== RUN   TestDockerSuite/TestCpFromCaseG
=== RUN   TestDockerSuite/TestCpFromCaseH
=== RUN   TestDockerSuite/TestCpFromCaseI
=== RUN   TestDockerSuite/TestCpFromCaseJ
=== RUN   TestDockerSuite/TestCpFromSymlinkDestination
=== RUN   TestDockerSuite/TestCpFromSymlinkToDirectory
=== RUN   TestDockerSuite/TestCpGarbagePath
=== RUN   TestDockerSuite/TestCpLocalOnly
=== RUN   TestDockerSuite/TestCpNameHasColon
=== RUN   TestDockerSuite/TestCpRelativePath
=== RUN   TestDockerSuite/TestCpSpecialFiles
=== RUN   TestDockerSuite/TestCpSymlinkComponent
=== RUN   TestDockerSuite/TestCpSymlinkFromConToHostFollowSymlink
=== RUN   TestDockerSuite/TestCpToCaseA
=== RUN   TestDockerSuite/TestCpToCaseB
=== RUN   TestDockerSuite/TestCpToCaseC
=== RUN   TestDockerSuite/TestCpToCaseD
=== RUN   TestDockerSuite/TestCpToCaseE
=== RUN   TestDockerSuite/TestCpToCaseF
=== RUN   TestDockerSuite/TestCpToCaseG
=== RUN   TestDockerSuite/TestCpToCaseH
=== RUN   TestDockerSuite/TestCpToCaseI
=== RUN   TestDockerSuite/TestCpToCaseJ
=== RUN   TestDockerSuite/TestCpToContainerWithPermissions
...

While on this PR, the only tests that are run from the TestDockerSuite are:

Details
=== RUN   TestDockerSuite/TestAPIClientVersionOldNotSupported
 === RUN   TestDockerSuite/TestAPICreateDeletePredefinedNetworks
 === RUN   TestDockerSuite/TestAPIErrorJSON
 === RUN   TestDockerSuite/TestAPIErrorNotFoundJSON
 === RUN   TestDockerSuite/TestAPIErrorNotFoundPlainText
 === RUN   TestDockerSuite/TestAPIErrorPlainText
 === RUN   TestDockerSuite/TestAPIGetEnabledCORS
 === RUN   TestDockerSuite/TestAPIImagesDelete
 === RUN   TestDockerSuite/TestAPIImagesFilter
 === RUN   TestDockerSuite/TestAPIImagesHistory
 === RUN   TestDockerSuite/TestAPIImagesImportBadSrc
 === RUN   TestDockerSuite/TestAPIImagesSaveAndLoad
 === RUN   TestDockerSuite/TestAPIImagesSearchJSONContentType
 === RUN   TestDockerSuite/TestAPIImagesSizeCompatibility
 === RUN   TestDockerSuite/TestAPINetworkConnectDisconnect
 === RUN   TestDockerSuite/TestAPINetworkCreateCheckDuplicate
 === RUN   TestDockerSuite/TestAPINetworkFilter
 === RUN   TestDockerSuite/TestAPINetworkGetDefaults
 === RUN   TestDockerSuite/TestAPINetworkIPAMMultipleBridgeNetworks
 === RUN   TestDockerSuite/TestAPINetworkInspectBridge
 === RUN   TestDockerSuite/TestAPINetworkInspectUserDefinedNetwork
 === RUN   TestDockerSuite/TestAPIOptionsRoute
 === RUN   TestDockerSuite/TestAPIStatsContainerNotFound
 === RUN   TestDockerSuite/TestAPIStatsNetworkStats
 === RUN   TestDockerSuite/TestAPIStatsNetworkStatsVersioning
 === RUN   TestDockerSuite/TestAPIStatsNoStreamConnectedContainers
 === RUN   TestDockerSuite/TestAPIStatsNoStreamGetCpu
 === RUN   TestDockerSuite/TestAPIStatsStoppedContainerInGoroutines
 === RUN   TestDockerSuite/TestAppArmorDeniesChmodProc
 === RUN   TestDockerSuite/TestAppArmorDeniesPtrace
 === RUN   TestDockerSuite/TestAppArmorTraceSelf
 === RUN   TestDockerSuite/TestAttachAfterDetach
 === RUN   TestDockerSuite/TestAttachClosedOnContainerStop
 === RUN   TestDockerSuite/TestAttachDetach
 === RUN   TestDockerSuite/TestAttachDisconnect
 === RUN   TestDockerSuite/TestAttachMultipleAndRestart
 === RUN   TestDockerSuite/TestAttachPausedContainer
 === RUN   TestDockerSuite/TestAttachTTYWithoutStdin
 === RUN   TestDockerSuite/TestBuildAPIBuildGitWithF
 === RUN   TestDockerSuite/TestBuildAPIDockerFileRemote
 === RUN   TestDockerSuite/TestBuildAPIDoubleDockerfile
 === RUN   TestDockerSuite/TestBuildAPILowerDockerfile
 === RUN   TestDockerSuite/TestBuildAPIRemoteTarballContext
 === RUN   TestDockerSuite/TestBuildAPIRemoteTarballContextWithCustomDockerfile
 === RUN   TestDockerSuite/TestBuildAPIUnnormalizedTarPaths
 === RUN   TestDockerSuite/TestBuildAddAndCopyFileWithWhitespace
 === RUN   TestDockerSuite/TestBuildAddBadLinks
 === RUN   TestDockerSuite/TestBuildAddBadLinksVolume
 === RUN   TestDockerSuite/TestBuildAddBrokenTar
 === RUN   TestDockerSuite/TestBuildAddCacheOnFileChange
 === RUN   TestDockerSuite/TestBuildAddChangeOwnership
 === RUN   TestDockerSuite/TestBuildAddCurrentDirWithCache
 === RUN   TestDockerSuite/TestBuildAddCurrentDirWithoutCache
 === RUN   TestDockerSuite/TestBuildAddDirContentToExistingDir
 === RUN   TestDockerSuite/TestBuildAddDirContentToRoot
 === RUN   TestDockerSuite/TestBuildAddFileNotFound
 === RUN   TestDockerSuite/TestBuildAddLocalAndRemoteFilesWithAndWithoutCache
 === RUN   TestDockerSuite/TestBuildAddMultipleLocalFileWithAndWithoutCache
 === RUN   TestDockerSuite/TestBuildAddNonTar
 === RUN   TestDockerSuite/TestBuildAddOrCopyEtcToRootShouldNotConflict
 === RUN   TestDockerSuite/TestBuildAddPreservesFilesSpecialBits
 === RUN   TestDockerSuite/TestBuildAddRemoteFileMTime
 === RUN   TestDockerSuite/TestBuildAddRemoteFileWithAndWithoutCache
 === RUN   TestDockerSuite/TestBuildAddRemoteNoDecompress
 === RUN   TestDockerSuite/TestBuildAddScript
 === RUN   TestDockerSuite/TestBuildAddSingleFileToExistDir
 === RUN   TestDockerSuite/TestBuildAddSingleFileToNonExistingDir
 === RUN   TestDockerSuite/TestBuildAddSingleFileToRoot
 === RUN   TestDockerSuite/TestBuildAddSingleFileToWorkdir
 === RUN   TestDockerSuite/TestBuildAddTar
 === RUN   TestDockerSuite/TestBuildAddTarXz
 === RUN   TestDockerSuite/TestBuildAddTarXzGz
 === RUN   TestDockerSuite/TestBuildAddToSymlinkDest
 === RUN   TestDockerSuite/TestBuildAddWholeDirToRoot
 === RUN   TestDockerSuite/TestBuildBlankName
 === RUN   TestDockerSuite/TestBuildBuildTimeArg
 === RUN   TestDockerSuite/TestBuildBuildTimeArgBuiltinArg
 === RUN   TestDockerSuite/TestBuildBuildTimeArgCacheHit
 === RUN   TestDockerSuite/TestBuildBuildTimeArgCacheMissExtraArg
 === RUN   TestDockerSuite/TestBuildBuildTimeArgCacheMissSameArgDiffVal
 === RUN   TestDockerSuite/TestBuildBuildTimeArgDefaultOverride
 === RUN   TestDockerSuite/TestBuildBuildTimeArgDefinitionWithNoEnvInjection
 === RUN   TestDockerSuite/TestBuildBuildTimeArgEmptyValVariants
 === RUN   TestDockerSuite/TestBuildBuildTimeArgEnv
 === RUN   TestDockerSuite/TestBuildBuildTimeArgExpansion
 === RUN   TestDockerSuite/TestBuildBuildTimeArgExpansionOverride
 === RUN   TestDockerSuite/TestBuildBuildTimeArgHistory
 === RUN   TestDockerSuite/TestBuildBuildTimeArgOverrideArgDefinedBeforeEnv
 === RUN   TestDockerSuite/TestBuildBuildTimeArgOverrideEnvDefinedBeforeArg
 === RUN   TestDockerSuite/TestBuildBuildTimeArgQuotedValVariants
 === RUN   TestDockerSuite/TestBuildBuildTimeArgUnconsumedArg
 === RUN   TestDockerSuite/TestBuildBuildTimeArgUntrustedDefinedAfterUse
 === RUN   TestDockerSuite/TestBuildCacheAdd
 === RUN   TestDockerSuite/TestBuildCacheBrokenSymlink
 === RUN   TestDockerSuite/TestBuildCacheFrom
 === RUN   TestDockerSuite/TestBuildCacheFromEqualDiffIDsLength
 === RUN   TestDockerSuite/TestBuildCacheRootSource
 === RUN   TestDockerSuite/TestBuildCancellationKillsSleep
 === RUN   TestDockerSuite/TestBuildChownOnCopy
 === RUN   TestDockerSuite/TestBuildChownSingleFile
 === RUN   TestDockerSuite/TestBuildCleanupCmdOnEntrypoint
 === RUN   TestDockerSuite/TestBuildClearCmd
 === RUN   TestDockerSuite/TestBuildCmd
 === RUN   TestDockerSuite/TestBuildCmdJSONNoShDashC
 === RUN   TestDockerSuite/TestBuildCmdShDashC
 === RUN   TestDockerSuite/TestBuildCmdShellArgsEscaped
 === RUN   TestDockerSuite/TestBuildCmdSpaces
 === RUN   TestDockerSuite/TestBuildCommentsShebangs
 === RUN   TestDockerSuite/TestBuildConditionalCache
 === RUN   TestDockerSuite/TestBuildContChar
 === RUN   TestDockerSuite/TestBuildContainerWithCgroupParent
 === RUN   TestDockerSuite/TestBuildContextCleanup
 === RUN   TestDockerSuite/TestBuildContextCleanupFailedBuild
 === RUN   TestDockerSuite/TestBuildContextTarGzip
 === RUN   TestDockerSuite/TestBuildContextTarNoCompression
 === RUN   TestDockerSuite/TestBuildCopyAddMultipleFiles
 === RUN   TestDockerSuite/TestBuildCopyCacheOnFileChange
 === RUN   TestDockerSuite/TestBuildCopyDirButNotFile
 === RUN   TestDockerSuite/TestBuildCopyDirContentToExistDir
 === RUN   TestDockerSuite/TestBuildCopyDirContentToRoot
 === RUN   TestDockerSuite/TestBuildCopyFileDotWithWorkdir
 === RUN   TestDockerSuite/TestBuildCopyFileWithWhitespaceOnWindows
 === RUN   TestDockerSuite/TestBuildCopyFromForbidWindowsRelativePaths
 === RUN   TestDockerSuite/TestBuildCopyFromForbidWindowsSystemPaths
 === RUN   TestDockerSuite/TestBuildCopyFromWindowsIsCaseInsensitive
 === RUN   TestDockerSuite/TestBuildCopySingleFileToExistDir
 === RUN   TestDockerSuite/TestBuildCopySingleFileToNonExistDir
 === RUN   TestDockerSuite/TestBuildCopySingleFileToRoot
 === RUN   TestDockerSuite/TestBuildCopySingleFileToWorkdir
 === RUN   TestDockerSuite/TestBuildCopyWholeDirToRoot
 === RUN   TestDockerSuite/TestBuildCopyWildcard
 === RUN   TestDockerSuite/TestBuildCopyWildcardCache
 === RUN   TestDockerSuite/TestBuildCopyWildcardInName
 === RUN   TestDockerSuite/TestBuildDeleteCommittedFile
 === RUN   TestDockerSuite/TestBuildDockerfileStdin
 === RUN   TestDockerSuite/TestBuildDockerfileStdinConflict
 === RUN   TestDockerSuite/TestBuildDockerfileStdinDockerignore
 === RUN   TestDockerSuite/TestBuildDockerfileStdinDockerignoreIgnored
 === RUN   TestDockerSuite/TestBuildDockerfileStdinNoExtraFiles
 === RUN   TestDockerSuite/TestBuildDockerignore

@thaJeztah

Copy link
Copy Markdown
Member Author

Problem seems to have resolved itself, only now validate is failing; looks like master is broken because a PR was merged that didn't add godoc to exported methods (which wasn't previously caught by the linter rules)

Before:

    make TEST_FILTER=TestServiceLogs test-integration
    ...
    --- PASS: TestDockerSwarmSuite/TestServiceLogs (14.63s)
             docker_cli_service_logs_test.go:49: log for "TestServiceLogs1": "TestServiceLogs1.1.rjyqj1v08llu@625d614f901a    | hello1\n"
             docker_cli_service_logs_test.go:49: log for "TestServiceLogs2": "TestServiceLogs2.1.fyaljkh9tmp3@625d614f901a    | hello2\n"

After:

    make TEST_FILTER=TestServiceLogs test-integration
    ...
    --- PASS: TestDockerSwarmSuite/TestServiceLogs (14.63s)

Signed-off-by: Sebastiaan van Stijn <[email protected]>
Before:

    --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate (24.21s)
         docker_api_containers_test.go:2100: case 0 - config: {volume  /foo false  <nil> <nil> <nil>}
         docker_api_containers_test.go:2100: case 1 - config: {volume  /foo/ false  <nil> <nil> <nil>}
         docker_api_containers_test.go:2100: case 2 - config: {volume test1 /foo false  <nil> <nil> <nil>}
         docker_api_containers_test.go:2100: case 3 - config: {volume test2 /foo true  <nil> <nil> <nil>}
         docker_api_containers_test.go:2100: case 4 - config: {volume test3 /foo false  <nil> 0xc000876640 <nil>}
         docker_api_containers_test.go:2100: case 5 - config: {bind /tmp/test-mounts-api-1770842294 /foo false  <nil> <nil> <nil>}
         docker_api_containers_test.go:2100: case 6 - config: {bind /tmp/test-mounts-api-1770842294 /foo true  <nil> <nil> <nil>}
         docker_api_containers_test.go:2100: case 7 - config: {bind /tmp/test-mounts-api-3832384157 /foo false  <nil> <nil> <nil>}
         docker_api_containers_test.go:2100: case 8 - config: {bind /tmp/test-mounts-api-3832384157 /foo true  <nil> <nil> <nil>}
         docker_api_containers_test.go:2100: case 9 - config: {bind /tmp/test-mounts-api-3832384157 /foo true  0xc000876aa0 <nil> <nil>}
         docker_api_containers_test.go:2100: case 10 - config: {volume  /foo false  <nil> 0xc000876ac0 <nil>}
         docker_api_containers_test.go:2100: case 11 - config: {volume  /foo/ false  <nil> 0xc000876ae0 <nil>}
         docker_api_containers_test.go:2100: case 12 - config: {volume test4 /foo false  <nil> 0xc000876b00 <nil>}
         docker_api_containers_test.go:2100: case 13 - config: {volume test5 /foo true  <nil> 0xc000876b20 <nil>}

After:

    --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate (63.59s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/0_config:_{volume__/foo_false__<nil>_<nil>_<nil>} (2.98s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/1_config:_{volume__/foo/_false__<nil>_<nil>_<nil>} (2.11s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/2_config:_{volume_test1_/foo_false__<nil>_<nil>_<nil>} (2.26s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/3_config:_{volume_test2_/foo_true__<nil>_<nil>_<nil>} (7.78s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/4_config:_{volume_test3_/foo_false__<nil>_0xc00000ecc0_<nil>} (25.19s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/5_config:_{bind_/tmp/test-mounts-api-1123034866_/foo_false__<nil>_<nil>_<nil>} (2.21s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/6_config:_{bind_/tmp/test-mounts-api-1123034866_/foo_true__<nil>_<nil>_<nil>} (2.21s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/7_config:_{bind_/tmp/test-mounts-api-3533158313_/foo_false__<nil>_<nil>_<nil>} (2.16s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/8_config:_{bind_/tmp/test-mounts-api-3533158313_/foo_true__<nil>_<nil>_<nil>} (2.18s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/9_config:_{bind_/tmp/test-mounts-api-3533158313_/foo_true__0xc00000f760_<nil>_<nil>} (2.18s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/10_config:_{volume__/foo_false__<nil>_0xc00000f780_<nil>} (2.25s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/11_config:_{volume__/foo/_false__<nil>_0xc00000f7e0_<nil>} (2.37s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/12_config:_{volume_test4_/foo_false__<nil>_0xc00000f800_<nil>} (2.28s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsCreate/13_config:_{volume_test5_/foo_true__<nil>_0xc00000f820_<nil>} (2.44s)

Signed-off-by: Sebastiaan van Stijn <[email protected]>
Before:

     --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation (0.52s)
         docker_api_containers_test.go:1927: case 0
         docker_api_containers_test.go:1927: case 1
         docker_api_containers_test.go:1927: case 2
         docker_api_containers_test.go:1927: case 3
         docker_api_containers_test.go:1927: case 4
         docker_api_containers_test.go:1927: case 5
         docker_api_containers_test.go:1927: case 6
         docker_api_containers_test.go:1927: case 7
         docker_api_containers_test.go:1927: case 8
         docker_api_containers_test.go:1927: case 9
         docker_api_containers_test.go:1927: case 10
         docker_api_containers_test.go:1927: case 11
         docker_api_containers_test.go:1927: case 12
         docker_api_containers_test.go:1927: case 13
         docker_api_containers_test.go:1927: case 14
         docker_api_containers_test.go:1927: case 15

After:

    --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation (1.13s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_0 (0.01s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_1 (0.00s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_2 (0.00s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_3 (0.00s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_4 (0.00s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_5 (0.11s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_6 (0.12s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_7 (0.13s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_8 (0.00s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_9 (0.06s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_10 (0.08s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_11 (0.10s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_12 (0.18s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_13 (0.12s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_14 (0.14s)
        --- PASS: TestDockerSuite/TestContainersAPICreateMountsValidation/case_15 (0.00s)

Signed-off-by: Sebastiaan van Stijn <[email protected]>
Now that we marked these utilities as helpers, it should be
possible to find which test-case failed (if any), and we
can skip logging in the "happy path".

This makes these tests less noisy, which makes it easier
to find actually important information in the output:

     --- PASS: TestDockerSuite/TestCpFromCaseC (0.96s)
         docker_cli_cp_utils_test.go:244: checking that file "/tmp/test-cp-from-case-c450122079/file2" contains "file2\n"
         docker_cli_cp_utils_test.go:192: running `docker cp  962b1f3311e742b0842e13b2ad350214cea25883999fd26e87e8c9ddf40d5eb4:/root/file1 /tmp/test-cp-from-case-c450122079/file2`
         docker_cli_cp_utils_test.go:244: checking that file "/tmp/test-cp-from-case-c450122079/file2" contains "file1\n"

Some of these tests should probably be rewritten to use subtests,
but that's something for a follow-up.

Signed-off-by: Sebastiaan van Stijn <[email protected]>
@thaJeztah
thaJeztah force-pushed the integration_cli_denoise branch from 479e5dc to 3ddb410 Compare October 21, 2019 22:15
@thaJeztah

Copy link
Copy Markdown
Member Author

@tiborvass @kolyshkin ptal; all green now 👍

} else {
assert.NilError(c, err)
}
x := x

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we enable Parallel, otherwise you can get surprising failures (ran into that a while back); see https://blog.golang.org/subtests, which also shows this

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TIL

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I learned the hard way. Scratching my head why things were randomly failing 😅

@thaJeztah

Copy link
Copy Markdown
Member Author

@kolyshkin @cpuguy83 ptal

@cpuguy83 cpuguy83 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@cpuguy83
cpuguy83 merged commit 352d840 into moby:master Oct 24, 2019
@thaJeztah
thaJeztah deleted the integration_cli_denoise branch October 24, 2019 22:25
@thaJeztah thaJeztah added this to the 20.03.0 milestone Apr 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/testing kind/refactor PR's that refactor, or clean-up code status/2-code-review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants