Claims
- 1. A method for testing operation of a computer application, comprising:
providing an emulator to run on a development platform subject to limitations of multiple different target devices, the emulator including a set of emulator APIs corresponding to target Application Program Interfaces (APIs) available on the different target devices; specifying a subset of the target APIs that are supported by one of the target devices; blocking access by the emulator to the emulator APIs that correspond to one or more of the target APIs that are not in the specified subset; and running the application on the emulator subject to the blocked access.
- 2. A method according to claim 1, wherein specifying the subset of the target APIs comprises selecting one of the target devices to emulate, and wherein the subset of the target APIs comprises the target APIs that are supported by the selected one of the target devices.
- 3. A method according to claim 1, wherein specifying the subset of the target APIs comprises specifying the target APIs that are not supported by the one of the target devices.
- 4. A method according to claim 1, wherein blocking access comprises deleting, from the set of emulator APIs, emulator APIs that correspond to target APIs that are not in the specified subset of the target APIs.
- 5. A method according to claim 1, wherein running the application subject to the blocked access comprises generating an error indication when the emulator attempts to access one of the emulator APIs that corresponds to one of the target APIs that are not in the specified subset.
- 6. A method according to claim 1, wherein the target devices comprise mobile devices, and wherein the emulator comprises a toolkit for developing applications for execution in a wireless environment.
- 7. A method according to claim 1, wherein the target devices and the emulator comprise respective virtual machines that support execution of programs written in an object-oriented, platform-independent programming language.
- 8. A method according to claim 1, wherein blocking access to the emulator APIs comprises deleting program components used by the emulator APIs to which access is blocked from a set of the program components available to the emulator.
- 9. A method according to claim 1, wherein blocking access to the emulator APIs comprises deleting names of program components used by the emulator APIs to which access is blocked from a list of the program components available to the emulator.
- 10. A method according to claim 9, wherein the program components comprise classes of an object-oriented, platform-independent programming language.
- 11. A method according to claim 9, wherein deleting the names of program components comprises extracting the names from at least one compressed file containing the names.
- 12. A method according to claim 11, wherein the compressed file is compressed in a platform-independent compression and file packaging format that supports bundling of executable files and other related application files.
- 13. A method for testing operation of a computer application, comprising:
providing an emulator including a set of emulator Application Program Interfaces (APIs); specifying a subset of the set of APIs; blocking access by the emulator to the APIs in the specified subset by deleting names of program components used by the emulator APIs to which access is blocked from a list of the program components available to the emulator; and running the application on the emulator subject to the blocked access.
- 14. A system for testing operation of a computer software application, the system comprising an emulation workstation, which is configured to operate as an emulator so as to run the application subject to limitations of multiple different target devices, the emulator having a set of emulator Application Program Interfaces (APIs) corresponding to target APIs available on the different target devices, such that when a subset of the target APIs that are supported by one of the target devices is specified, the emulator runs the application while blocking access to the emulator APIs that correspond to the target APIs that are not in the specified subset.
- 15. A system according to claim 14, wherein the subset of the target APIs is specified by selecting one of the target devices to emulate, and wherein the subset of the target APIs comprises the target APIs that are supported by the selected one of the target devices.
- 16. A system according to claim 14, wherein the subset of the target APIs is specified by specifying the target APIs that are not supported by the one of the target devices.
- 17. A system according to claim 14, wherein the emulator is adapted to block access to the emulator APIs that correspond to the target APIs that are not in the specified subset by deleting, from the set of emulator APIs, the emulator APIs that correspond to the target APIs that are not in the specified subset of the target APIs.
- 18. A system according to claim 14, wherein the emulator is adapted to generate an error indication when the emulator attempts to access one of the emulator APIs that corresponds to one of the target APIs that are not in the specified subset.
- 19. A system according to claim 14, wherein the target devices comprise mobile devices, and wherein the emulator comprises a toolkit for developing applications for execution in a wireless environment.
- 20. A system according to claim 14, wherein the target devices and the emulator comprise respective virtual machines that support execution of programs written in an object-oriented, platform-independent programming language.
- 21. A system according to claim 14, wherein the emulator is adapted to block access to the emulator APIs that correspond to the target APIs that are not in the specified subset by deleting program components used by the emulator APIs to which access is blocked from a set of the program components available to the emulator.
- 22. A system according to claim 14, wherein the emulator is adapted to block access to the emulator APIs that correspond to the target APIs that are not in the specified subset by deleting names of program components used by the emulator APIs to which access is blocked from a list of the program components available to the emulator.
- 23. A system according to claim 22, wherein the program components comprise classes of an object-oriented, platform-independent programming language.
- 24. A system according to claim 22, wherein the emulator is adapted to extract the names of the program components to which access is blocked from at least one compressed file containing the names.
- 25. A system according to claim 24, wherein the compressed file is compressed in a platform-independent compression and file packaging format that supports bundling of executable files and other related application files.
- 26. A system for testing operation of a computer application, the system comprising a emulation workstation, which is configured to operate as an emulator, the emulator having a set of emulator Application Program Interfaces (APIs), such that when a subset of the emulator APIs is specified, the computer runs the application while blocking access to the emulator APIs that are in the specified subset by deleting names of program components used by the emulator APIs to which access is blocked from a list of the program components available to the emulator.
- 27. A computer software product for testing operation of a software application for a target device, the product comprising a computer-readable medium, in which program instructions are stored, which instructions, when read by a computer, cause the computer to operate as an emulator so as to run the application subject to limitations of multiple different target devices, the emulator having a set of emulator Application Program Interfaces (APIs) corresponding to target APIs available on the different target devices, such that when a subset of the target APIs that are supported by one of the target devices is specified, the computer runs the application while blocking access to the emulator APIs that correspond to the target APIs that are not in the specified subset.
- 28. A product according to claim 27, wherein the subset of the target APIs is specified by selecting one of the target devices to emulate, and wherein the subset of the target APIs comprises the target APIs that are supported by the selected one of the target devices.
- 29. A product according to claim 27, wherein the subset of the target APIs is specified by specifying the target APIs that are not supported by the one of the target devices.
- 30. A product according to claim 27, wherein the instructions cause the computer to block access to the emulator APIs that correspond to the target APIs that are not in the specified subset by deleting, from the set of emulator APIs, emulator APIs that correspond to target APIs that are not in the specified subset of the target APIs.
- 31. A product according to claim 27, wherein the instructions cause the computer to generate an error indication when the computer attempts to access one of the emulator APIs that corresponds to one of the target APIs that are not in the specified subset.
- 32. A product according to claim 27, wherein the target devices comprise mobile devices, and wherein the program instructions are a component of a toolkit for developing applications for execution in a wireless environment.
- 33. A product according to claim 27, wherein the target devices comprise a first virtual machine, and wherein the program instructions cause a second virtual machine to run on the computer, the first and second virtual machines providing substantially identical support for execution of programs written in an object-oriented, platform-independent programming language.
- 34. A product according to claim 27, wherein the instructions cause the computer to block access to the emulator APIs that correspond to the target APIs that are not in the specified subset by deleting program components used by the emulator APIs to which access is blocked from a set of the program components available to the emulator.
- 35. A product according to claim 27, wherein the instructions cause the computer to block access to the emulator APIs that correspond to the target APIs that are not in the specified subset by deleting names of program components used by the emulator APIs to which access is blocked from a list of the program components available to the emulator.
- 36. A product according to claim 35, wherein the program components comprise classes of an object-oriented, platform-independent programming language.
- 37. A product according to claim 35, wherein the instructions cause the computer to extract the names of the program components to which access is blocked from at least one compressed file containing the names.
- 38. A product according to claim 37, wherein the compressed file is compressed in a platform-independent compression and file packaging format that supports bundling of executable files and other related application files.
- 39. A computer software product for testing operation of a computer application, the product comprising a computer-readable medium, in which program instructions are stored, which instructions, when read by a computer, cause the computer to operate as an emulator, the emulator having a set of Application Program Interfaces (APIs), such that when a subset of the set of APIs is specified, the computer runs the application while blocking access to the APIs that that are in the specified subset.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Patent Application No. 60/378,460, filed May 6, 2002, which is incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60378460 |
May 2002 |
US |