yahoo / ycb

A multi-dimensional configuration library that builds bundles from resource files describing a variety of values.
BSD 3-Clause "New" or "Revised" License
67 stars 24 forks source link

ycb doesn't do replacement for empty values #28

Closed pranavparikh closed 8 years ago

pranavparikh commented 10 years ago

Here, if we've "filterUrl" as "", ycb doesn't replace it.

e.g 1) [{"dimensions":[{"environment":{"development":{"dev":null,"test":null},"production":{"int":null,"stage":null,"prod":null}}}]},{"settings":["master"],"name":"highlander_client","config":{"baseUrl":"http://finance.yahoo.com","filterUrl":""},"dataprovider":{"Test YHOO Original 1":{"group":"smoke","params":{"page":"$$config.baseUrl$$$$config.filterUrl$$","test":"test.js"}}}}]

after ycb replacement translates to

{"name":"highlander_client","config":{"baseUrl":"http://finance.yahoo.com","filterUrl":""},"dataprovider":{"Test YHOO Original 1":{"group":"smoke","params":{"page":"$$config.baseUrl$$$$config.filterUrl$$","test":"test.js"}}}}

2) In case of non-empty values, replacement works good

[{"dimensions":[{"environment":{"development":{"dev":null,"test":null},"production":{"int":null,"stage":null,"prod":null}}}]},{"settings":["master"],"name":"highlander_client","config":{"baseUrl":"http://finance.yahoo.com","filterUrl":"/q?s=YHOO"},"dataprovider":{"Test YHOO Original 1":{"group":"smoke","params":{"page":"$$config.baseUrl$$$$config.filterUrl$$","test":"test.js"}}}}]

after ycb replacement translates to

{"name":"highlander_client","config":{"baseUrl":"http://finance.yahoo.com","filterUrl":"/q?s=YHOO"},"dataprovider":{"Test YHOO Original 1":{"group":"smoke","params":{"page":"http://finance.yahoo.com/q?s=YHOO","test":"test.js"}}}}

redonkulus commented 8 years ago

Fixed bt #29