Skip to content

Commit

Permalink
Fixed comments
Browse files Browse the repository at this point in the history
Signed-off-by: nithinkdb <nithin.krishnamurthi@databricks.com>
  • Loading branch information
nithinkdb committed Sep 7, 2023
1 parent 1f59d21 commit 27d9a87
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 15 deletions.
2 changes: 1 addition & 1 deletion connection.go
Original file line number Diff line number Diff line change
Expand Up @@ -394,7 +394,7 @@ func (c *conn) pollOperation(ctx context.Context, opHandle *cli_service.TOperati

func (c *conn) CheckNamedValue(nv *driver.NamedValue) error {
var err error
if dbsqlParam, ok := nv.Value.(DbSqlParam); ok {
if dbsqlParam, ok := nv.Value.(DBSqlParam); ok {
nv.Name = dbsqlParam.Name
dbsqlParam.Value, err = driver.DefaultParameterConverter.ConvertValue(dbsqlParam.Value)
return err
Expand Down
5 changes: 3 additions & 2 deletions parameter_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,20 @@ import (

func TestParameter_Inference(t *testing.T) {
t.Run("Should infer types correctly", func(t *testing.T) {
values := [5]driver.NamedValue{{Name: "", Value: float32(5.1)}, {Name: "", Value: time.Now()}, {Name: "", Value: int64(5)}, {Name: "", Value: true}, {Name: "", Value: DbSqlParam{Value: "6.2", Type: Decimal}}}
values := [5]driver.NamedValue{{Name: "", Value: float32(5.1)}, {Name: "", Value: time.Now()}, {Name: "", Value: int64(5)}, {Name: "", Value: true}, {Name: "", Value: DBSqlParam{Value: "6.2", Type: Decimal}}}
parameters := convertNamedValuesToSparkParams(values[:])
assert.Equal(t, strconv.FormatFloat(float64(5.1), 'f', -1, 64), *parameters[0].Value.StringValue)
assert.NotNil(t, parameters[1].Value.StringValue)
assert.Equal(t, string("TIMESTAMP"), *parameters[1].Type)
assert.Equal(t, &cli_service.TSparkParameterValue{StringValue: strPtr("5")}, parameters[2].Value)
assert.Equal(t, string("true"), *parameters[3].Value.StringValue)
assert.Equal(t, string("DECIMAL"), *parameters[4].Type)
assert.Equal(t, string("6.2"), *parameters[4].Value.StringValue)
})
}
func TestParameters_Names(t *testing.T) {
t.Run("Should infer types correctly", func(t *testing.T) {
values := [2]driver.NamedValue{{Name: "1", Value: int(26)}, {Name: "2", Value: DbSqlParam{Type: Decimal, Value: "6.2"}}}
values := [2]driver.NamedValue{{Name: "1", Value: int(26)}, {Name: "", Value: DBSqlParam{Name: "2", Type: Decimal, Value: "6.2"}}}
parameters := convertNamedValuesToSparkParams(values[:])
assert.Equal(t, string("1"), *parameters[0].Name)
assert.Equal(t, cli_service.TSparkParameterValue{StringValue: strPtr("26")}, *parameters[0].Value)
Expand Down
25 changes: 13 additions & 12 deletions parameters.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import (
"github.com/databricks/databricks-sql-go/internal/cli_service"
)

type DbSqlParam struct {
type DBSqlParam struct {
Name string
Type SqlType
Value any
Expand All @@ -25,9 +25,9 @@ const (
Decimal
Double
Integer
Bigint
Smallint
Tinyint
BigInt
SmallInt
TinyInt
Boolean
IntervalMonth
IntervalDay
Expand All @@ -49,11 +49,11 @@ func (s SqlType) String() string {
return "DOUBLE"
case Integer:
return "INTEGER"
case Bigint:
case BigInt:
return "BIGINT"
case Smallint:
case SmallInt:
return "SMALLINT"
case Tinyint:
case TinyInt:
return "TINYINT"
case Boolean:
return "BOOLEAN"
Expand All @@ -65,19 +65,19 @@ func (s SqlType) String() string {
return "unknown"
}

func valuesToDBSQLParams(namedValues []driver.NamedValue) []DbSqlParam {
var params []DbSqlParam
func valuesToDBSQLParams(namedValues []driver.NamedValue) []DBSqlParam {
var params []DBSqlParam
for i := range namedValues {
namedValue := namedValues[i]
param := *new(DbSqlParam)
param := *new(DBSqlParam)
param.Name = namedValue.Name
param.Value = namedValue.Value
params = append(params, param)
}
return params
}

func inferTypes(params []DbSqlParam) {
func inferTypes(params []DBSqlParam) {
for i := range params {
param := &params[i]
switch value := param.Value.(type) {
Expand Down Expand Up @@ -123,7 +123,8 @@ func inferTypes(params []DbSqlParam) {
case time.Time:
param.Value = value.String()
param.Type = Timestamp
case DbSqlParam:
case DBSqlParam:
param.Name = value.Name
param.Value = value.Value
param.Type = value.Type
default:
Expand Down

0 comments on commit 27d9a87

Please sign in to comment.