I am a firm believer that boiling down a problem into its simplest form is the fastest way to solving it. I also think one of the fundamentals of programming is breaking a problem into a bunch of smaller problems. If you combine these together, you get test cases out the wazoo.
I find that I am able to develop faster and more accurately by separating out the particular problems out of the application and testing it on the most simple scenario possible. Another benefit is you can keep these examples for reference later. Here is simple one I made on NullAsValue. I made this test case in a separate app in a couple of minutes, versus trying it on a client’s app over hundreds of millions of rows and with a reload taking hours.
Test Case: NullAsValue Execution Test
Description: This Test is to determine whether the NullAsValue gets applied on the data being loaded in or on the resulting data.
Result: On the resulting data.
status_map: Mapping Load * Inline [ input, output 1, one 2, two 3, three ]; Raw: Load 'A' as dim, 1 as num AutoGenerate (1); Concatenate(Raw) Load 'B' as dim, Null() as num AutoGenerate (1); Concatenate(Raw) Load 'C' as dim, 3 as num AutoGenerate (1); NullAsValue num; NullValue = 2; Check: NoConcatenate Load dim, ApplyMap('status_map',num) as num resident Raw; Drop table Raw; Exit script;