58 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Aura Tests
 | |
| 
 | |
| The `/Tests` directory contains a test suite to test some of Aura's functionality.
 | |
| 
 | |
| Because Kha/Kinc currently cannot run in headless mode (see the relevant
 | |
| [issue](https://github.com/Kode/Kinc/issues/564)) in targets other than node.js
 | |
| and the node.js target breaks quite often due to Kha updates, the tests currently
 | |
| run semi-automatically (i.e. they are invoked by the user) on Kha's `debug-html5`
 | |
| target in Electron. As a consequence, it is currently not possible to run
 | |
| the tests in a CI pipeline.
 | |
| 
 | |
| ## Setup
 | |
| 
 | |
| Running the tests requires node.js which you probably already have installed
 | |
| since it is required for running Khamake.
 | |
| 
 | |
| If you are using Leenkx, you can instead use the node.js executables included
 | |
| in the SDK at `<sdk-path>/nodejs`.
 | |
| 
 | |
| ## Running the Tests
 | |
| 
 | |
| ### Using VSCode/VSCodium
 | |
| 
 | |
| 1. Add the `/Tests` directory as a folder to your VSCode workspace
 | |
|    using `File > Add Folder to Workspace`. VSCode unfortunately doesn't search
 | |
|    for task.json files in subdirectories.
 | |
| 
 | |
| 2. Press `F1` or `Ctrl + Shift + P` and select `Tasks: Run Test Task`.
 | |
| 
 | |
|    > **Note**<br>
 | |
|    > The task automatically picks up the Kha version (and its corresponding
 | |
|    > Electron version) as configured for the Kha extension for VSCode.
 | |
| 
 | |
| ### From the Command Line
 | |
| 
 | |
| 1. Point the environment variable `KHA_PATH` to the root path of the Kha repository.
 | |
| 
 | |
| 2. Point the environment variable `ELECTRON_BIN` to an Electron executable.
 | |
| 
 | |
| 3. Run the following on a command line opened in this `/Tests` directory:
 | |
|    ```batch
 | |
|    node run.js
 | |
|    ```
 | |
| 
 | |
| ## Updating Dependencies
 | |
| 
 | |
| The first time the test project is built, all necessary dependencies are
 | |
| automatically installed. If you want to update them to the newest version,
 | |
| simply run the following on a command line opened in this `/Tests` directory:
 | |
| ```batch
 | |
| node install_deps.js
 | |
| ```
 | |
| 
 | |
| ## Defines
 | |
| 
 | |
| While the tests are run, the define `AURA_UNIT_TESTS` is set and the assertion
 | |
| level is set to `AURA_ASSERT_LEVEL=Debug`.
 |