Test failure cases for measurement create command

pull/1644/head
Philip O'Toole 2015-02-18 16:44:54 -08:00
parent 3435da9626
commit 93dea5d527
1 changed files with 36 additions and 1 deletions

View File

@ -138,7 +138,7 @@ func TestCreateMeasurementsCommand(t *testing.T) {
t.Fatalf("measurement has wrong number of tags, expected 2, got %d", n)
}
// Add a fields.
// Add a field.
err = c.addFieldIfNotExists("bar", "value", influxql.Number)
if err != nil {
t.Fatal("error adding field \"value\"")
@ -162,6 +162,41 @@ func TestCreateMeasurementsCommand(t *testing.T) {
}
}
// Ensure the createMeasurementsIfNotExistsCommand returns expected errors.
func TestCreateMeasurementsCommand_Errors(t *testing.T) {
var err error
c := newCreateMeasurementsIfNotExistsCommand("foo")
if c == nil {
t.Fatal("createMeasurementsIfNotExistsCommand is nil")
}
err = c.addSeriesIfNotExists("bar", nil)
if err != ErrMeasurementNotFound {
t.Fatalf("expected ErrMeasurementNotFound got %s", err.Error())
}
err = c.addFieldIfNotExists("bar", "value", influxql.Number)
if err != ErrMeasurementNotFound {
t.Fatalf("expected ErrMeasurementNotFound got %s", err.Error())
}
// Add Measurement.
err = c.addMeasurementIfNotExists("bar")
if err != nil {
t.Fatal("error adding measurement bar")
}
// Test type conflicts
err = c.addFieldIfNotExists("bar", "value", influxql.Number)
if err != nil {
t.Fatal("error adding field \"value\"")
}
err = c.addFieldIfNotExists("bar", "value", influxql.String)
if err != ErrFieldTypeConflict {
t.Fatalf("expected ErrFieldTypeConflict got %s", err.Error())
}
}
// MustParseExpr parses an expression string and returns its AST representation.
func MustParseExpr(s string) influxql.Expr {
expr, err := influxql.ParseExpr(s)