Open
Description
The following problems should be fixed... and the code examined for any others...
- The Properties property exposes IPropertyBag, which is intended as an extensibility interface, not one for users. Among other things, it allows setting properties, which is not a good idea and potentially confusing since they would not be persisted. The internal PropertyBag should be wrapped by an adapter object, just as we wrap the test and the result.
- The Properties indexer returns an IList. We should determine if this can be made type-safe. If it cannot be done at the present time (IIRC, we have both string and int properties at a minimum) then this should be spun out as a separate future issue.
- The IList returned by the indexer gives too much access. An IEnumerable would be better. Alternatively, another layer of adapter with enumeration and Count available would do the job.
Hard to know how to prioritize this. I'm marking it Low for now, but if we see other issues arising that relate to this problem we should increase it.