From 5b574d5b5755fb4e78307bbe4f1b1d3447c6a1df Mon Sep 17 00:00:00 2001 From: Sunny Date: Fri, 28 Jul 2017 20:12:27 +0530 Subject: [PATCH 1/2] fix(status): tableOutput show override constraints Add `hasOverride` attribute to `BasicStatus` struct and use it to append "(override)" to projects with overridden constraints. Closes #892 --- cmd/dep/status.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cmd/dep/status.go b/cmd/dep/status.go index 02c14e426c..0c39040366 100644 --- a/cmd/dep/status.go +++ b/cmd/dep/status.go @@ -95,6 +95,9 @@ func (out *tableOutput) BasicLine(bs *BasicStatus) { } else { constraint = bs.Constraint.String() } + if bs.hasOverride { + constraint += "(override)" + } fmt.Fprintf(out.w, "%s\t%s\t%s\t%s\t%s\t%d\t\n", bs.ProjectRoot, @@ -250,6 +253,7 @@ type BasicStatus struct { Revision gps.Revision Latest gps.Version PackageCount int + hasOverride bool } // MissingStatus contains information about all the missing packages in a project. @@ -338,7 +342,7 @@ func runStatusAll(ctx *dep.Ctx, out outputter, p *dep.Project, sm gps.SourceMana // Check if the manifest has an override for this project. If so, // set that as the constraint. if pp, has := p.Manifest.Ovr[proj.Ident().ProjectRoot]; has && pp.Constraint != nil { - // TODO note somehow that it's overridden + bs.hasOverride = true bs.Constraint = pp.Constraint } else { bs.Constraint = gps.Any() From fbbac80ccec617d24d1204b46b48af5614a30f82 Mon Sep 17 00:00:00 2001 From: Sunny Date: Thu, 10 Aug 2017 22:25:03 +0530 Subject: [PATCH 2/2] test(status): tableOutput show override constraint Add integration test for tableOutput show override constraints. --- cmd/dep/status.go | 2 +- .../override_constraint/final/Gopkg.lock | 21 +++++++++++++++++++ .../override_constraint/final/Gopkg.toml | 3 +++ .../override_constraint/initial/Gopkg.lock | 21 +++++++++++++++++++ .../override_constraint/initial/Gopkg.toml | 3 +++ .../override_constraint/initial/main.go | 12 +++++++++++ .../status/override_constraint/stdout.txt | 3 +++ .../status/override_constraint/testcase.json | 11 ++++++++++ 8 files changed, 75 insertions(+), 1 deletion(-) create mode 100644 cmd/dep/testdata/harness_tests/status/override_constraint/final/Gopkg.lock create mode 100644 cmd/dep/testdata/harness_tests/status/override_constraint/final/Gopkg.toml create mode 100644 cmd/dep/testdata/harness_tests/status/override_constraint/initial/Gopkg.lock create mode 100644 cmd/dep/testdata/harness_tests/status/override_constraint/initial/Gopkg.toml create mode 100644 cmd/dep/testdata/harness_tests/status/override_constraint/initial/main.go create mode 100644 cmd/dep/testdata/harness_tests/status/override_constraint/stdout.txt create mode 100644 cmd/dep/testdata/harness_tests/status/override_constraint/testcase.json diff --git a/cmd/dep/status.go b/cmd/dep/status.go index 0c39040366..49ef9e9fec 100644 --- a/cmd/dep/status.go +++ b/cmd/dep/status.go @@ -96,7 +96,7 @@ func (out *tableOutput) BasicLine(bs *BasicStatus) { constraint = bs.Constraint.String() } if bs.hasOverride { - constraint += "(override)" + constraint += " (override)" } fmt.Fprintf(out.w, "%s\t%s\t%s\t%s\t%s\t%d\t\n", diff --git a/cmd/dep/testdata/harness_tests/status/override_constraint/final/Gopkg.lock b/cmd/dep/testdata/harness_tests/status/override_constraint/final/Gopkg.lock new file mode 100644 index 0000000000..f987a57915 --- /dev/null +++ b/cmd/dep/testdata/harness_tests/status/override_constraint/final/Gopkg.lock @@ -0,0 +1,21 @@ +# This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. + + +[[projects]] + name = "github.com/sdboyer/deptest" + packages = ["."] + revision = "3f4c3bea144e112a69bbe5d8d01c1b09a544253f" + version = "v0.8.1" + +[[projects]] + name = "github.com/sdboyer/deptestdos" + packages = ["."] + revision = "5c607206be5decd28e6263ffffdcee067266015e" + version = "v2.0.0" + +[solve-meta] + analyzer-name = "dep" + analyzer-version = 1 + inputs-digest = "1c4444f47ab5d5c484634d1a0c95d99beb879a37337bc0d7aecbd97cf79b6cb1" + solver-name = "gps-cdcl" + solver-version = 1 diff --git a/cmd/dep/testdata/harness_tests/status/override_constraint/final/Gopkg.toml b/cmd/dep/testdata/harness_tests/status/override_constraint/final/Gopkg.toml new file mode 100644 index 0000000000..a612225457 --- /dev/null +++ b/cmd/dep/testdata/harness_tests/status/override_constraint/final/Gopkg.toml @@ -0,0 +1,3 @@ +[[override]] + name = "github.com/sdboyer/deptest" + version = "=0.8.1" diff --git a/cmd/dep/testdata/harness_tests/status/override_constraint/initial/Gopkg.lock b/cmd/dep/testdata/harness_tests/status/override_constraint/initial/Gopkg.lock new file mode 100644 index 0000000000..f987a57915 --- /dev/null +++ b/cmd/dep/testdata/harness_tests/status/override_constraint/initial/Gopkg.lock @@ -0,0 +1,21 @@ +# This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. + + +[[projects]] + name = "github.com/sdboyer/deptest" + packages = ["."] + revision = "3f4c3bea144e112a69bbe5d8d01c1b09a544253f" + version = "v0.8.1" + +[[projects]] + name = "github.com/sdboyer/deptestdos" + packages = ["."] + revision = "5c607206be5decd28e6263ffffdcee067266015e" + version = "v2.0.0" + +[solve-meta] + analyzer-name = "dep" + analyzer-version = 1 + inputs-digest = "1c4444f47ab5d5c484634d1a0c95d99beb879a37337bc0d7aecbd97cf79b6cb1" + solver-name = "gps-cdcl" + solver-version = 1 diff --git a/cmd/dep/testdata/harness_tests/status/override_constraint/initial/Gopkg.toml b/cmd/dep/testdata/harness_tests/status/override_constraint/initial/Gopkg.toml new file mode 100644 index 0000000000..a612225457 --- /dev/null +++ b/cmd/dep/testdata/harness_tests/status/override_constraint/initial/Gopkg.toml @@ -0,0 +1,3 @@ +[[override]] + name = "github.com/sdboyer/deptest" + version = "=0.8.1" diff --git a/cmd/dep/testdata/harness_tests/status/override_constraint/initial/main.go b/cmd/dep/testdata/harness_tests/status/override_constraint/initial/main.go new file mode 100644 index 0000000000..6ebfee7840 --- /dev/null +++ b/cmd/dep/testdata/harness_tests/status/override_constraint/initial/main.go @@ -0,0 +1,12 @@ +// Copyright 2016 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package main + +import ( + _ "github.com/sdboyer/deptestdos" +) + +func main() { +} diff --git a/cmd/dep/testdata/harness_tests/status/override_constraint/stdout.txt b/cmd/dep/testdata/harness_tests/status/override_constraint/stdout.txt new file mode 100644 index 0000000000..e3df72b63d --- /dev/null +++ b/cmd/dep/testdata/harness_tests/status/override_constraint/stdout.txt @@ -0,0 +1,3 @@ +PROJECT CONSTRAINT VERSION REVISION LATEST PKGS USED +github.com/sdboyer/deptest * (override) v0.8.1 3f4c3be ff2948a 1 +github.com/sdboyer/deptestdos * v2.0.0 5c60720 5c60720 1 diff --git a/cmd/dep/testdata/harness_tests/status/override_constraint/testcase.json b/cmd/dep/testdata/harness_tests/status/override_constraint/testcase.json new file mode 100644 index 0000000000..e1f1eadeeb --- /dev/null +++ b/cmd/dep/testdata/harness_tests/status/override_constraint/testcase.json @@ -0,0 +1,11 @@ +{ + "commands": [ + ["ensure"], + ["status"] + ], + "error-expected": "", + "vendor-final": [ + "github.com/sdboyer/deptest", + "github.com/sdboyer/deptestdos" + ] +}