Skip to content
This repository has been archived by the owner on Oct 11, 2019. It is now read-only.

Commit

Permalink
prepare 4.6.1 release (#134)
Browse files Browse the repository at this point in the history
  • Loading branch information
eli-darkly authored Nov 27, 2018
1 parent 13d47cc commit f38d450
Show file tree
Hide file tree
Showing 3 changed files with 50 additions and 3 deletions.
2 changes: 1 addition & 1 deletion ldconsul/consul_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,6 @@ func clearExistingData() error {
return err
}
kv := client.KV()
_, err = kv.DeleteTree(DefaultPrefix, nil)
_, err = kv.DeleteTree("", nil)
return err
}
2 changes: 1 addition & 1 deletion lddynamodb/dynamodb.go
Original file line number Diff line number Diff line change
Expand Up @@ -378,7 +378,7 @@ func (store *dynamoDBFeatureStore) GetInternal(kind ld.VersionedDataKind, key st
TableName: aws.String(store.table),
ConsistentRead: aws.Bool(true),
Key: map[string]*dynamodb.AttributeValue{
tablePartitionKey: {S: aws.String(kind.GetNamespace())},
tablePartitionKey: {S: aws.String(store.namespaceForKind(kind))},
tableSortKey: {S: aws.String(key)},
},
})
Expand Down
49 changes: 48 additions & 1 deletion shared_test/feature_store.go
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ func RunFeatureStorePrefixIndependenceTests(t *testing.T,
ld.Features: {flag1a.Key: &flag1a, flag1b.Key: &flag1b},
}
data2 := map[ld.VersionedDataKind]map[string]ld.VersionedData{
ld.Features: {flag2a.Key: &flag1a, flag2c.Key: &flag2c},
ld.Features: {flag2a.Key: &flag2a, flag2c.Key: &flag2c},
}

err := store1.Init(data1)
Expand All @@ -308,9 +308,56 @@ func RunFeatureStorePrefixIndependenceTests(t *testing.T,
require.NoError(t, err)
assert.Equal(t, data1[ld.Features], newFlags1)

newFlag1a, err := store1.Get(ld.Features, flag1a.Key)
require.NoError(t, err)
assert.Equal(t, &flag1a, newFlag1a)

newFlag1b, err := store1.Get(ld.Features, flag1b.Key)
require.NoError(t, err)
assert.Equal(t, &flag1b, newFlag1b)

newFlags2, err := store2.All(ld.Features)
require.NoError(t, err)
assert.Equal(t, data2[ld.Features], newFlags2)

newFlag2a, err := store2.Get(ld.Features, flag2a.Key)
require.NoError(t, err)
assert.Equal(t, &flag2a, newFlag2a)

newFlag2c, err := store2.Get(ld.Features, flag2c.Key)
require.NoError(t, err)
assert.Equal(t, &flag2c, newFlag2c)
})

runWithPrefixes(t, "Upsert/Delete", func(t *testing.T, store1 ld.FeatureStore, store2 ld.FeatureStore) {
assert.False(t, store1.Initialized())
assert.False(t, store2.Initialized())

flagKey := "flag"
flag1 := ld.FeatureFlag{Key: flagKey, Version: 1}
flag2 := ld.FeatureFlag{Key: flagKey, Version: 2}

// Insert the one with the higher version first, so we can verify that the version-checking logic
// is definitely looking in the right namespace
err := store2.Upsert(ld.Features, &flag2)
require.NoError(t, err)
err = store1.Upsert(ld.Features, &flag1)
require.NoError(t, err)

newFlag1, err := store1.Get(ld.Features, flagKey)
require.NoError(t, err)
assert.Equal(t, &flag1, newFlag1)

newFlag2, err := store2.Get(ld.Features, flagKey)
require.NoError(t, err)
assert.Equal(t, &flag2, newFlag2)

err = store1.Delete(ld.Features, flagKey, 2)
require.NoError(t, err)

newFlag1a, err := store1.Get(ld.Features, flagKey)
require.NoError(t, err)
assert.Equal(t, nil, newFlag1a)
})
}

Expand Down

0 comments on commit f38d450

Please sign in to comment.