![]() |
![]() |
| |||||||||||||||||||||||||||||||||||||||||||
Chapter 4KCMS Test Script DescriptionsIn This ChapterThis chapter describes each test script in the KCMS test suite. The chapter groups the test scripts into the categories listed in Table 4-1 and presents them in the order shown (that is, loading profiles is presented first, connecting profiles second, and so forth). Test Script CategoriesTable 4-1 shows the KCMS API function name and the corresponding script command name that is used by the kcmstest utility. When describing a function being performed, this chapter uses the test script command name. Table 4-1 Test Script Categories
Cross-Category API Functions And Script CommandsThe KcsAvailable(), KcsCreateProfile(), KcsFreeProfile(), KcsModifyLoadHints(), KcsSaveProfile(), and KcsSetCallback() functions in the KCMS framework API are not addressed directly as a testing category in a single script. Each of these functions is exercised in the course of performing normal testing.
In addition, the LOG: command is not associated with a particular KCMS API function. Instead it serves to show comment data in the test scripts. Table 4-2 Testing the SAVE: Command
For More Information on API FunctionsThis chapter summarizes the testing of the KCMS API functions. Operation of a function is described only where it is necessary to describe the associated testing. For a detailed function descriptions, see the KCMS SDK manual KCMS Application Developer's Guide. Note - Many of the images resulting from EVAL: calls are not saved. This is only to limit the amount of disk space used by the test suite. See EVAL: Keywords and Values (ImageOut= keyword) for details on how to save the resulting image. Loading ProfilesLoad All NowScript NameIC_lana.scr ConceptIC_lana.scr loads an arbitrarily large number of profiles and verifies that profiles can be connected and an image evaluated. DescriptionThis script demonstrates that the KCMS framework can load and maintain several profiles in memory at the same time. The load hint specified in each of the load commands is AllNow. (See Table 3-11 for the LOAD: command LoadHint= keyword values and the corresponding load hints.) The type of profiles loaded varies (monitor, printer, scanner, color space). The script first loads all the profiles, after which it performs some simple operations such as CONNECT: and EVAL: to demonstrate that the framework can operate under these conditions. Then all the profiles are freed from memory with the FREE: command. VerificationEach command is expected to return a successful status. Examine the test images output by the EVAL: command. Do not make color quality evaluations unless you have the appropriate devices to do so. Load ManyScript NameIC_lmany.scr ConceptIC_lmany.scr performs many loads but with few profiles in memory at any one time. It confirms that subsequent profile-related operations can be performed successfully. DescriptionThis script demonstrates that the KCMS framework can load many profiles in succession while the framework continues to operate without error. The type of profiles loaded vary (monitor, printer, scanner, color space), and the profiles are loaded with the AllNow load hint. (See Table 3-11 for the LOAD: command LoadHint= keyword values and the corresponding load hints.) In general, the script simply loads the profiles and immediately frees them. After loading and freeing 100 profiles, it loads more profiles, connects them, and evaluates some images. Then it frees the profiles with the FREE: command. VerificationEach command is expected to return a successful status. Examine the test images output by the EVAL: command. Do not make color quality evaluations unless you have the appropriate devices to do so. Load Hints TestScript NameIC_lhints.scr ConceptIC_lhints.scr loads profiles, varying the load hints applied. It performs subsequent operations, verifying that all parts of a profile required for an operation get automatically loaded if they were not specified in the load hints. DescriptionThis script demonstrates that the KCMS framework can perform a LOAD: command with a variety of load hints applied. The script performs additional functions to verify the automatic loading of profiles. For example, when a profile is loaded specifying attributes only, it is expected that a CONNECT: command can complete successfully without having to manually load the remainder of the profile. The type of profiles loaded vary (monitor, printer, scanner, color space). The load hints are broken down into categories similar to the ones in the KCMS Application Developer's Guide (that is, what, how, when, and where to load and unload a profile). The script mixes these various load hint categories and loads several profiles. After these operations are completed all the profiles are freed from memory. Note - The operation load hints forward, reverse, simulate, and gamut have no effect in the LOAD: command. Unless attributes only is specified, all available transformations are loaded. Even if attributes only is specified, KcsConnectProfiles()automatically loads all the transformations. This is provided, however, for CMM developers who provide these capabilities in their CMMs. The script performs the following operation sequence:
| |||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||