func Test_Data_CreateRetentionPolicy(t *testing.T) { data := meta.Data{} err := data.CreateDatabase("foo") if err != nil { t.Fatal(err) } err = data.CreateRetentionPolicy("foo", &meta.RetentionPolicyInfo{ Name: "bar", ReplicaN: 1, Duration: 24 * time.Hour, }, false) if err != nil { t.Fatal(err) } rp, err := data.RetentionPolicy("foo", "bar") if err != nil { t.Fatal(err) } if rp == nil { t.Fatal("creation of retention policy failed") } // Try to recreate the same RP with default set to true, should fail err = data.CreateRetentionPolicy("foo", &meta.RetentionPolicyInfo{ Name: "bar", ReplicaN: 1, Duration: 24 * time.Hour, }, true) if err == nil || err != meta.ErrRetentionPolicyConflict { t.Fatalf("unexpected error. got: %v, exp: %s", err, meta.ErrRetentionPolicyConflict) } // Creating the same RP with the same specifications should succeed err = data.CreateRetentionPolicy("foo", &meta.RetentionPolicyInfo{ Name: "bar", ReplicaN: 1, Duration: 24 * time.Hour, }, false) if err != nil { t.Fatal(err) } }