31 lines
1.6 KiB
Plaintext
31 lines
1.6 KiB
Plaintext
|
${programmers}
|
||
|
Camel casing takes a string like "the first one" and converts it into a camel form of identifier, "theFirstOne".
|
||
|
|
||
|
But this had some problems when non-programmers are creating storytest tables:
|
||
|
* A valid identifier in one language would not be in another
|
||
|
* Certain identifiers can't be used, such as "case", "for", "do", etc in Java.
|
||
|
In addition, unicode can't be used for such names, because in general there is little support for unicode in development tools.
|
||
|
|
||
|
Extended camel is used with all of ${fitLibrary}, taking camel casing one step further. It converts a name into a valid identifier in the language concerned. For example, in Java the name "% discount" is translated into "percent discount", which is then camel-cased into "percentDiscount".
|
||
|
|
||
|
This can result in some weird and/or long identifiers. There's no need to work out such identifiers, however, as an unknown identifier is displayed in a error messages in the report of a table. These weird identifiers don't need to "pollute" the application, as they only need to appear in fixturing code (such as a ${domainAdapter}).
|
||
|
|
||
|
Here's some examples:
|
||
|
|
||
|
|!-fitlibrary.specify.utility.CamelCase-!|
|
||
|
|
||
|
|''actions''|
|
||
|
|
||
|
|''calculate''|
|
||
|
|name || identifier |
|
||
|
|" hi " || quoteHiQuote |
|
||
|
|^`{}~ || caretBackquoteLeftBraceRightBraceTilde |
|
||
|
|two words || twoWords |
|
||
|
|2 words || twoWords |
|
||
|
|cost $ || costDollar |
|
||
|
|!! || bangBang |
|
||
|
|meet @ || meetAt |
|
||
|
|rick@rimuResearch.com || rickAtRimuResearchDotCom |
|
||
|
| || blank |
|
||
|
|case || case_ |
|