This is an automated email from the ASF dual-hosted git repository.

dangogh pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-trafficcontrol.git

commit 59e8aab565adff9c7e17ed88fc1afae9277b6894
Author: Dewayne Richardson <dewr...@apache.org>
AuthorDate: Tue Feb 20 08:06:56 2018 -0700

    updated regions to use the CRUD interface
---
 lib/go-tc/regions.go                               |  2 +-
 traffic_ops/traffic_ops_golang/region/regions.go   | 30 ++++++++++------------
 .../traffic_ops_golang/region/regions_test.go      | 29 +++++++--------------
 3 files changed, 24 insertions(+), 37 deletions(-)

diff --git a/lib/go-tc/regions.go b/lib/go-tc/regions.go
index 9c4edc3..d32556c 100644
--- a/lib/go-tc/regions.go
+++ b/lib/go-tc/regions.go
@@ -24,7 +24,7 @@ type RegionsResponse struct {
 }
 
 type Region struct {
-       DivisionName string `json:"divisionName" db:"divisionname"`
+       DivisionName string `json:"divisionName"`
        Division     int    `json:"division" db:"division"`
        ID           int    `json:"id" db:"id"`
        LastUpdated  Time   `json:"lastUpdated" db:"last_updated"`
diff --git a/traffic_ops/traffic_ops_golang/region/regions.go 
b/traffic_ops/traffic_ops_golang/region/regions.go
index cc9ed61..7c1153b 100644
--- a/traffic_ops/traffic_ops_golang/region/regions.go
+++ b/traffic_ops/traffic_ops_golang/region/regions.go
@@ -73,17 +73,16 @@ func (region *TORegion) Read(db *sqlx.DB, parameters 
map[string]string, user aut
        // Query Parameters to Database Query column mappings
        // see the fields mapped in the SQL query
        queryParamsToQueryCols := map[string]dbhelpers.WhereColumnInfo{
-               "domainName":    dbhelpers.WhereColumnInfo{"domain_name", nil},
-               "dnssecEnabled": dbhelpers.WhereColumnInfo{"dnssec_enabled", 
nil},
-               "id":            dbhelpers.WhereColumnInfo{"id", api.IsInt},
-               "name":          dbhelpers.WhereColumnInfo{"name", nil},
+               "name":     dbhelpers.WhereColumnInfo{"name", nil},
+               "division": dbhelpers.WhereColumnInfo{"division", nil},
+               "id":       dbhelpers.WhereColumnInfo{"id", api.IsInt},
        }
        where, orderBy, queryValues, errs := 
dbhelpers.BuildWhereAndOrderBy(parameters, queryParamsToQueryCols)
        if len(errs) > 0 {
                return nil, errs, tc.DataConflictError
        }
 
-       query := selectRegionsQuery() + where + orderBy
+       query := selectQuery() + where + orderBy
        log.Debugln("Query is ", query)
 
        rows, err := db.NamedQuery(query, queryValues)
@@ -106,15 +105,16 @@ func (region *TORegion) Read(db *sqlx.DB, parameters 
map[string]string, user aut
        return Regions, []error{}, tc.NoError
 }
 
-func selectRegionsQuery() string {
-       query := `SELECT
-description,
-division,
-id,
-last_updated,
-name
+func selectQuery() string {
 
-FROM region r`
+       query := `SELECT
+r.division,
+d.name as divisionname,
+r.id,
+r.last_updated,
+r.name
+FROM region r
+JOIN division d ON r.division = d.id`
        return query
 }
 
@@ -300,7 +300,6 @@ func (region *TORegion) Delete(db *sqlx.DB, user 
auth.CurrentUser) (error, tc.Ap
 func updateQuery() string {
        query := `UPDATE
 region SET
-description=:description,
 division=:division,
 name=:name
 WHERE id=:id RETURNING last_updated`
@@ -309,11 +308,10 @@ WHERE id=:id RETURNING last_updated`
 
 func insertQuery() string {
        query := `INSERT INTO region (
-description,
 division,
 name) VALUES (
-:description,
 :division,
+:name,
 :name) RETURNING id,last_updated`
        return query
 }
diff --git a/traffic_ops/traffic_ops_golang/region/regions_test.go 
b/traffic_ops/traffic_ops_golang/region/regions_test.go
index b4fac20..b0d8446 100644
--- a/traffic_ops/traffic_ops_golang/region/regions_test.go
+++ b/traffic_ops/traffic_ops_golang/region/regions_test.go
@@ -24,6 +24,7 @@ import (
        "time"
 
        "github.com/apache/incubator-trafficcontrol/lib/go-tc"
+       
"github.com/apache/incubator-trafficcontrol/traffic_ops/traffic_ops_golang/auth"
        
"github.com/apache/incubator-trafficcontrol/traffic_ops/traffic_ops_golang/test"
        "github.com/jmoiron/sqlx"
 
@@ -47,7 +48,7 @@ func getTestRegions() []tc.Region {
        return regions
 }
 
-func TestGetRegions(t *testing.T) {
+func TestReadRegions(t *testing.T) {
        mockDB, mock, err := sqlmock.New()
        if err != nil {
                t.Fatalf("an error '%s' was not expected when opening a stub 
database connection", err)
@@ -57,13 +58,14 @@ func TestGetRegions(t *testing.T) {
        db := sqlx.NewDb(mockDB, "sqlmock")
        defer db.Close()
 
-       testCase := getTestRegions()
+       refType := GetRefType()
+
+       testRegions := getTestRegions()
        cols := test.ColsFromStructByTag("db", tc.Region{})
        rows := sqlmock.NewRows(cols)
 
-       for _, ts := range testCase {
+       for _, ts := range testRegions {
                rows = rows.AddRow(
-                       ts.DivisionName,
                        ts.Division,
                        ts.ID,
                        ts.LastUpdated,
@@ -73,25 +75,12 @@ func TestGetRegions(t *testing.T) {
        mock.ExpectQuery("SELECT").WillReturnRows(rows)
        v := map[string]string{"dsId": "1"}
 
-       servers, errs, errType := getRegions(v, db)
+       servers, errs, _ := refType.Read(db, v, auth.CurrentUser{})
        if len(errs) > 0 {
-               t.Errorf("getRegions expected: no errors, actual: %v with error 
type: %s", errs, errType.String())
+               t.Errorf("cdn.Read expected: no errors, actual: %v", errs)
        }
 
        if len(servers) != 2 {
-               t.Errorf("getRegions expected: len(servers) == 1, actual: %v", 
len(servers))
+               t.Errorf("cdn.Read expected: len(servers) == 2, actual: %v", 
len(servers))
        }
-
-}
-
-type SortableRegions []tc.Region
-
-func (s SortableRegions) Len() int {
-       return len(s)
-}
-func (s SortableRegions) Swap(i, j int) {
-       s[i], s[j] = s[j], s[i]
-}
-func (s SortableRegions) Less(i, j int) bool {
-       return s[i].Name < s[j].Name
 }

-- 
To stop receiving notification emails like this one, please contact
dang...@apache.org.

Reply via email to