| ## CMX Fragments |
| |
| This directory contains the cmx fragments that are required for running |
| Fuchsia tests hermetically. Tests start from `minimum_capabilities.test-cmx` |
| and add additional capabilities as necessary by providing the |
| `additional_manifest_fragments` argument. Some fragments are explained in detail |
| below: |
| |
| ### General Purpose Fragments |
| |
| #### font_capabilities.test-cmx |
| For tests that test fonts by providing `fuchsia.fonts.Provider`. |
| |
| #### jit_capabilities.test-cmx |
| Required by tests that execute JavaScript. Should only be required in a small |
| number of tests. |
| |
| #### minimum_capabilites.test-cmx |
| Capabilities required by anything that uses `//base/test`, used as the base |
| fragment for all test suites. |
| |
| #### read_debug_data.test-cmx |
| Required by tests that need access to its debug directory. Should only be |
| required in a small number of tests. |
| |
| #### test_logger_capabilities.test-cmx |
| For tests that test logging functionality by providing `fuchsia.logger.Log`. |
| |
| ### WebEngine Fragments |
| The following fragments are specific to WebEngine functionality as documented |
| documentation at |
| https://fuchsia.dev/reference/fidl/fuchsia.web#CreateContextParams and |
| https://fuchsia.dev/reference/fidl/fuchsia.web#ContextFeatureFlags. |
| Any test-specific exceptions are documented for each file. |
| |
| #### audio_capabilities.test-cmx |
| Corresponds to the `AUDIO` flag. Required for enabling audio input and output. |
| |
| #### network_capabilities.test-cmx |
| Corresponds to the `NETWORK` flag. Required for enabling network access. Note |
| that access to the root SSL certificates is not needed if ContextProvider is |
| used to launch the `Context`. The `fuchsia.device.NameProvider` dependency comes |
| from fdio. |
| |
| #### present_view_capabilities.test-cmx |
| Services that are needed to render web content in a Scenic view and present it. |
| Most services are required per the FIDL documentation. |
| `fuchsia.ui.policy.Presenter` is additionally required by tests that create |
| views. |
| |
| #### vulkan_capabilities.test-cmx |
| Corresponds to the `VULKAN` flag. Required for enabling GPU-accelerated |
| rendering of the web content. |
| |
| #### web_engine_required_capabilities.test-cmx |
| Contains services that need to be present when creating a |
| `fuchsia.web.Context`. Note that the `fuchsia.scheduler.ProfileProvider` service |
| is only used in tests that encounter memory pressure code. |