diff --git a/spatial/spatial.go b/spatial/spatial.go index db918963..5128bb4f 100644 --- a/spatial/spatial.go +++ b/spatial/spatial.go @@ -42,14 +42,23 @@ func (f function) String() string { return "ST_IsValid" case SpatialTypeIntersects: return "ST_Intersects" + case SpatialTypeTransform: + return "ST_Transform" + case SpatialTypeX: + return "ST_X" + case SpatialTypeY: + return "ST_Y" + case SpatialTypeAsGeoJSON: + return "ST_AsGeoJSON" + case SpatialTypeArea: + return "ST_Area" } return "UNKNOWN FUNCTION" } // functions : const ( - SpatialTypeGeomCollection function = iota + 1 - SpatialTypeGeomFromText + SpatialTypeGeomFromText function = iota + 1 SpatialTypeDistance SpatialTypeWithin SpatialTypeEquals @@ -62,7 +71,7 @@ const ( SpatialTypeAsText SpatialTypeAsWKB SpatialTypeAsWKT - SpatilaTypeAsGeoJSON + SpatialTypeAsGeoJSON SpatialTypeSRID SpatialTypeX SpatialTypeY diff --git a/spatial/spatial_test.go b/spatial/spatial_test.go new file mode 100644 index 00000000..7ed98ca2 --- /dev/null +++ b/spatial/spatial_test.go @@ -0,0 +1,29 @@ +package spatial + +import ( + "testing" + + "github.com/stretchr/testify/require" +) + +func TestSpatialType(t *testing.T) { + + require.Equal(t, "ST_GeomFromText", SpatialTypeGeomFromText.String()) + require.Equal(t, "ST_Distance", SpatialTypeDistance.String()) + require.Equal(t, "ST_Within", SpatialTypeWithin.String()) + require.Equal(t, "ST_Equals", SpatialTypeEquals.String()) + require.Equal(t, "ST_PointFromText", SpatialTypePointFromText.String()) + require.Equal(t, "ST_LineString", SpatialTypeLineString.String()) + require.Equal(t, "ST_AsText", SpatialTypeAsText.String()) + require.Equal(t, "ST_AsWKB", SpatialTypeAsWKB.String()) + require.Equal(t, "ST_AsWKT", SpatialTypeAsWKT.String()) + require.Equal(t, "ST_SRID", SpatialTypeSRID.String()) + require.Equal(t, "ST_IsValid", SpatialTypeIsValid.String()) + require.Equal(t, "ST_X", SpatialTypeX.String()) + require.Equal(t, "ST_Y", SpatialTypeY.String()) + require.Equal(t, "ST_AsGeoJSON", SpatialTypeAsGeoJSON.String()) + require.Equal(t, "ST_Area", SpatialTypeArea.String()) + require.Equal(t, "ST_Intersects", SpatialTypeIntersects.String()) + require.Equal(t, "ST_Transform", SpatialTypeTransform.String()) + +} diff --git a/util/util_test.go b/util/util_test.go new file mode 100644 index 00000000..7b6b4366 --- /dev/null +++ b/util/util_test.go @@ -0,0 +1,24 @@ +package util + +import ( + "testing" + + "github.com/stretchr/testify/require" +) + +func TestString(t *testing.T) { + msg := "hello world" + blr := AcquireString() + defer ReleaseString(blr) + blr.WriteString(msg) + + require.Equal(t, msg, blr.String()) + blr.Reset() + require.Equal(t, "", blr.String()) +} + +func TestUnsafeString(t *testing.T) { + msg := `sqlike@1.6.0` + b := []byte(msg) + require.Equal(t, msg, UnsafeString(b)) +}