43 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Haxe
		
	
	
	
	
	
		
		
			
		
	
	
			43 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Haxe
		
	
	
	
	
	
| 
								 | 
							
								package auratests.utils;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import utest.Assert;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import kha.arrays.Float32Array;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import aura.utils.BufferUtils;
							 | 
						||
| 
								 | 
							
								import aura.utils.CircularBuffer;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import Utils;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								@:access(aura.utils.CircularBuffer)
							 | 
						||
| 
								 | 
							
								class TestCircularBuffer extends utest.Test {
							 | 
						||
| 
								 | 
							
									var buffer: CircularBuffer;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									function setup() {
							 | 
						||
| 
								 | 
							
										buffer = new CircularBuffer(8);
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									function teardown() {}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									function test_new_assertThatSizeIsPositiveNumber() {
							 | 
						||
| 
								 | 
							
										assertRaisesAssertion(() -> {
							 | 
						||
| 
								 | 
							
											new CircularBuffer(0);
							 | 
						||
| 
								 | 
							
										});
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										assertRaisesAssertion(() -> {
							 | 
						||
| 
								 | 
							
											new CircularBuffer(-1);
							 | 
						||
| 
								 | 
							
										});
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									function test_new_dataInitializedToZero() {
							 | 
						||
| 
								 | 
							
										// Please note that this test always succeeds on JS and has additional
							 | 
						||
| 
								 | 
							
										// false negatives on other targets, there the test still succeeds if data
							 | 
						||
| 
								 | 
							
										// is not actively initialized but the values are still 0
							 | 
						||
| 
								 | 
							
										// TODO If Aura has it's own array types at some point in time, implement
							 | 
						||
| 
								 | 
							
										//  active poisoning of values if unit tests are run
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
										final compareArray = createEmptyF32Array(buffer.length);
							 | 
						||
| 
								 | 
							
										assertEqualsFloat32Array(compareArray, buffer.data);
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								}
							 |