fixing a few fromattings

This commit is contained in:
linux chips 2017-12-06 10:32:20 +03:00
parent 1c1675afe3
commit 5114b1f792
2 changed files with 13 additions and 12 deletions

View File

@ -38,7 +38,7 @@ func NewMssqlQueryEndpoint(datasource *models.DataSource) (tsdb.TsdbQueryEndpoin
serport := datasource.Url
// fix me: need to have a default port if user did not provide. i.e. 1433
words := strings.Split(serport,":")
words := strings.Split(serport, ":")
server, port := words[0], words[1]
cnnstr := fmt.Sprintf("server=%s;port=%s;database=%s;user id=%s;password=%s;",
server,
@ -106,16 +106,16 @@ func (e MssqlQueryEndpoint) transformToTable(query *tsdb.Query, rows *core.Rows,
func (e MssqlQueryEndpoint) getTypedRowData(types []*sql.ColumnType, rows *core.Rows) (tsdb.RowValues, error) {
values := make([]interface{}, len(types))
valuePtrs := make([]interface{}, len(types))
valuePtrs := make([]interface{}, len(types))
for i, stype := range types {
e.log.Debug("type", "type", stype)
valuePtrs[i] = &values[i]
valuePtrs[i] = &values[i]
}
if err := rows.Scan(valuePtrs...); err != nil {
return nil, err
}
if err := rows.Scan(valuePtrs...); err != nil {
return nil, err
}
return values, nil
}

View File

@ -1,9 +1,9 @@
package mssql
import (
"strings"
"testing"
"time"
"strings"
_ "github.com/denisenkom/go-mssqldb"
"github.com/go-xorm/xorm"
@ -18,6 +18,7 @@ import (
// and set up a MSSQL db named grafana_tests and a user/password grafana/password
// and set the variable below to the IP address of the database
var serverIP string = "10.20.30.40"
func TestMSSQL(t *testing.T) {
//SkipConvey("MSSQL", t, func() {
SkipConvey("MSSQL", t, func() {
@ -96,19 +97,19 @@ func TestMSSQL(t *testing.T) {
So(column[7].(string), ShouldEqual, "hi varchar")
So(column[8].(string), ShouldEqual, "I am only char")
So(column[9].(float64), ShouldEqual, 1.1100000143051147) // MSSQL dose not have precision for "real" datatype
So(column[9].(float64), ShouldEqual, 1.1100000143051147) // MSSQL dose not have precision for "real" datatype
// fiix me: MSSQL driver puts the decimal inside an array of chars. and the test fails despite the values are correct.
//So(column[10].([]uint8), ShouldEqual, []uint8{'2', '.', '2', '2'})
So(column[11].(float64), ShouldEqual, 3.33)
So(column[12].(time.Time), ShouldHappenWithin, time.Duration(15*time.Second), time.Now().UTC() )
So(column[13].(time.Time), ShouldHappenWithin, time.Duration(15*time.Second), time.Now().UTC().Truncate(24*time.Hour) )
So(column[14].(time.Time), ShouldHappenWithin, time.Duration(15*time.Second), time.Date( 1, time.January, 1, time.Now().UTC().Hour(), time.Now().UTC().Minute(), time.Now().UTC().Second(), 0, time.UTC) )
So(column[12].(time.Time), ShouldHappenWithin, time.Duration(15*time.Second), time.Now().UTC())
So(column[13].(time.Time), ShouldHappenWithin, time.Duration(15*time.Second), time.Now().UTC().Truncate(24*time.Hour))
So(column[14].(time.Time), ShouldHappenWithin, time.Duration(15*time.Second), time.Date(1, time.January, 1, time.Now().UTC().Hour(), time.Now().UTC().Minute(), time.Now().UTC().Second(), 0, time.UTC))
})
})
}
func InitMSSQLTestDB(t *testing.T) *xorm.Engine {
x, err := xorm.NewEngine(sqlutil.TestDB_Mssql.DriverName, strings.Replace(sqlutil.TestDB_Mssql.ConnStr, "localhost", serverIP, 1) )
x, err := xorm.NewEngine(sqlutil.TestDB_Mssql.DriverName, strings.Replace(sqlutil.TestDB_Mssql.ConnStr, "localhost", serverIP, 1))
// x.ShowSQL()