| Summary: | Dictionary caseSensitive not working on first key | ||
|---|---|---|---|
| Product: | z_Archived | Reporter: | broy2 |
| Component: | EDT | Assignee: | Project Inbox <edt.mofmodel-inbox> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P1 | CC: | jeffdouglas, pharmon, svihovec |
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Windows XP | ||
| Whiteboard: | |||
The problem is that the xml has altered the value of "ID" to "id", which causes the failures. I have fixed this with a change to EGL2MofExpression Verified in 20111020 build. |
Debug the following: program caseProblem myDictionary Dictionary = new dictionary ( true, OrderingKind.byInsertion ) { ID = 5, lastName = "Twain", firstName = "Mark" }; myBoolean boolean; function main() myBoolean = myDictionary.containsKey("ID"); SysLib.writeStdout("Should be true > " + myBoolean); myBoolean = myDictionary.containsKey("id"); SysLib.writeStdout("Should be false > " + myBoolean); myBoolean = myDictionary.containsKey("lastName"); SysLib.writeStdout("Should be true > " + myBoolean); myBoolean = myDictionary.containsKey("lastname"); SysLib.writeStdout("Should be false > " + myBoolean); end end It looks like the caseSensitive true is not working on the first key ID but is working on lastName and firstName. Looking at the variables view in debug: myDictionary id <-- should be ID lastName firstName EDT results: Should be true > false Should be false > true Should be true > true Should be false > false RBD results as expected: Should be true > true Should be false > false Should be true > true Should be false > false /** * Constructor used to set the value of case sensitivity and ordering * * @param caseSensitive set if the dictionary is case sensitive * @param ordering set the order maintained in the dictionary. */ constructor(caseSensitive boolean in, ordering OrderingKind in);