本文整理汇总了Golang中github.com/jportoles/influxdb092/influxql.MustParseStatement函数的典型用法代码示例。如果您正苦于以下问题:Golang MustParseStatement函数的具体用法?Golang MustParseStatement怎么用?Golang MustParseStatement使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了MustParseStatement函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: TestStatementExecutor_ExecuteStatement_ShowGrantsFor
// Ensure a SHOW GRANTS FOR statement can be executed.
func TestStatementExecutor_ExecuteStatement_ShowGrantsFor(t *testing.T) {
t.Skip("Intermittent test failure: issue 3028")
e := NewStatementExecutor()
e.Store.UserPrivilegesFn = func(username string) (map[string]influxql.Privilege, error) {
if username != "dejan" {
t.Fatalf("unexpected username: %s", username)
}
return map[string]influxql.Privilege{
"dejan": influxql.ReadPrivilege,
"golja": influxql.WritePrivilege,
}, nil
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`SHOW GRANTS FOR dejan`)); res.Err != nil {
t.Fatal(res.Err)
} else if !reflect.DeepEqual(res.Series, influxql.Rows{
{
Columns: []string{"database", "privilege"},
Values: [][]interface{}{
{"dejan", "READ"},
{"golja", "WRITE"},
},
},
}) {
t.Fatalf("unexpected rows: %s", spew.Sdump(res.Series))
}
}
示例2: TestStatementExecutor_ExecuteStatement_CreateRetentionPolicy
// Ensure a CREATE RETENTION POLICY statement can be executed.
func TestStatementExecutor_ExecuteStatement_CreateRetentionPolicy(t *testing.T) {
e := NewStatementExecutor()
e.Store.CreateRetentionPolicyFn = func(database string, rpi *meta.RetentionPolicyInfo) (*meta.RetentionPolicyInfo, error) {
if database != "foo" {
t.Fatalf("unexpected database: %s", database)
} else if rpi.Name != "rp0" {
t.Fatalf("unexpected name: %s", rpi.Name)
} else if rpi.Duration != 2*time.Hour {
t.Fatalf("unexpected duration: %v", rpi.Duration)
} else if rpi.ReplicaN != 3 {
t.Fatalf("unexpected replication factor: %v", rpi.ReplicaN)
}
return nil, nil
}
e.Store.SetDefaultRetentionPolicyFn = func(database, name string) error {
if database != "foo" {
t.Fatalf("unexpected database: %s", database)
} else if name != "rp0" {
t.Fatalf("unexpected name: %s", name)
}
return nil
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`CREATE RETENTION POLICY rp0 ON foo DURATION 2h REPLICATION 3 DEFAULT`)); res.Err != nil {
t.Fatal(res.Err)
} else if res.Series != nil {
t.Fatalf("unexpected rows: %#v", res.Series)
}
}
示例3: TestStatementExecutor_ExecuteStatement_CreateRetentionPolicy_Err
// Ensure a CREATE RETENTION POLICY statement returns errors from the store.
func TestStatementExecutor_ExecuteStatement_CreateRetentionPolicy_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.CreateRetentionPolicyFn = func(database string, rpi *meta.RetentionPolicyInfo) (*meta.RetentionPolicyInfo, error) {
return nil, errors.New("marker")
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`CREATE RETENTION POLICY rp0 ON foo DURATION 2h REPLICATION 1`)); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例4: TestStatementExecutor_ExecuteStatement_ShowRetentionPolicies_Err
// Ensure a SHOW RETENTION POLICIES statement can return an error from the store.
func TestStatementExecutor_ExecuteStatement_ShowRetentionPolicies_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.DatabaseFn = func(name string) (*meta.DatabaseInfo, error) {
return nil, errors.New("marker")
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`SHOW RETENTION POLICIES ON db0`)); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例5: TestStatementExecutor_ExecuteStatement_Grant_Err
// Ensure a GRANT statement returns errors from the store.
func TestStatementExecutor_ExecuteStatement_Grant_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.SetPrivilegeFn = func(username, database string, p influxql.Privilege) error {
return errors.New("marker")
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`GRANT READ ON foo TO susy`)); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例6: TestStatementExecutor_ExecuteStatement_ShowRetentionPolicies_ErrDatabaseNotFound
// Ensure a SHOW RETENTION POLICIES statement can return an error if the database doesn't exist.
func TestStatementExecutor_ExecuteStatement_ShowRetentionPolicies_ErrDatabaseNotFound(t *testing.T) {
e := NewStatementExecutor()
e.Store.DatabaseFn = func(name string) (*meta.DatabaseInfo, error) {
return nil, nil
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`SHOW RETENTION POLICIES ON db0`)); res.Err != meta.ErrDatabaseNotFound {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例7: TestStatementExecutor_ExecuteStatement_DropUser_Err
// Ensure a DROP USER statement returns errors from the store.
func TestStatementExecutor_ExecuteStatement_DropUser_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.DropUserFn = func(name string) error {
return errors.New("marker")
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`DROP USER susy`)); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例8: TestStatementExecutor_ExecuteStatement_SetPassword_Err
// Ensure a SET PASSWORD statement returns errors from the store.
func TestStatementExecutor_ExecuteStatement_SetPassword_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.UpdateUserFn = func(name, password string) error {
return errors.New("marker")
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`SET PASSWORD FOR susy = 'pass'`)); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例9: TestStatementExecutor_ExecuteStatement_ShowDatabases_Err
// Ensure a SHOW DATABASES statement returns errors from the store.
func TestStatementExecutor_ExecuteStatement_ShowDatabases_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.DatabasesFn = func() ([]meta.DatabaseInfo, error) {
return nil, errors.New("marker")
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`SHOW DATABASES`)); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例10: TestStatementExecutor_ExecuteStatement_CreateUser_Err
// Ensure a CREATE USER statement returns errors from the store.
func TestStatementExecutor_ExecuteStatement_CreateUser_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.CreateUserFn = func(name, password string, admin bool) (*meta.UserInfo, error) {
return nil, errors.New("marker")
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`CREATE USER susy WITH PASSWORD 'pass'`)); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例11: TestStatementExecutor_ExecuteStatement_RevokeAdmin_Err
// Ensure a REVOKE statement for admin privilege returns errors from the store.
func TestStatementExecutor_ExecuteStatement_RevokeAdmin_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.SetAdminPrivilegeFn = func(username string, admin bool) error {
return errors.New("marker")
}
if res := e.ExecuteStatement(influxql.MustParseStatement(`REVOKE ALL PRIVILEGES FROM susy`)); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例12: TestStatementExecutor_ExecuteStatement_AlterRetentionPolicy_Err
// Ensure a ALTER RETENTION POLICY statement returns errors from the store.
func TestStatementExecutor_ExecuteStatement_AlterRetentionPolicy_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.UpdateRetentionPolicyFn = func(database, name string, rpu *meta.RetentionPolicyUpdate) error {
return errors.New("marker")
}
stmt := influxql.MustParseStatement(`ALTER RETENTION POLICY rp0 ON foo DURATION 1m REPLICATION 4 DEFAULT`)
if res := e.ExecuteStatement(stmt); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例13: TestStatementExecutor_ExecuteStatement_DropRetentionPolicy_Err
// Ensure a DROP RETENTION POLICY statement returns errors from the store.
func TestStatementExecutor_ExecuteStatement_DropRetentionPolicy_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.DropRetentionPolicyFn = func(database, name string) error {
return errors.New("marker")
}
stmt := influxql.MustParseStatement(`DROP RETENTION POLICY rp0 ON foo`)
if res := e.ExecuteStatement(stmt); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例14: TestStatementExecutor_ExecuteStatement_DropContinuousQuery_Err
// Ensure a DROP CONTINUOUS QUERY statement can return an error from the store.
func TestStatementExecutor_ExecuteStatement_DropContinuousQuery_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.DropContinuousQueryFn = func(database, name string) error {
return errors.New("marker")
}
stmt := influxql.MustParseStatement(`DROP CONTINUOUS QUERY cq0 ON db0`)
if res := e.ExecuteStatement(stmt); res.Err == nil || res.Err.Error() != "marker" {
t.Fatalf("unexpected error: %s", res.Err)
}
}
示例15: TestStatementExecutor_ExecuteStatement_ShowContinuousQueries_Err
// Ensure a SHOW CONTINUOUS QUERIES statement can return an error from the store.
func TestStatementExecutor_ExecuteStatement_ShowContinuousQueries_Err(t *testing.T) {
e := NewStatementExecutor()
e.Store.DatabasesFn = func() ([]meta.DatabaseInfo, error) {
return nil, errors.New("marker")
}
stmt := influxql.MustParseStatement(`SHOW CONTINUOUS QUERIES`)
if res := e.ExecuteStatement(stmt); res.Err == nil || res.Err.Error() != "marker" {
t.Fatal(res.Err)
}
}