65 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			V
		
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			V
		
	
	
module sim
 | 
						|
 | 
						|
fn test_add() {
 | 
						|
	v := vector(
 | 
						|
		x: -0.016957230930171364
 | 
						|
		y: -0.02937078552673521
 | 
						|
		z: 0.002311063475327252
 | 
						|
	)
 | 
						|
	result := v + v
 | 
						|
	expected := vector(
 | 
						|
		x: -0.03391446186034273
 | 
						|
		y: -0.05874157105347042
 | 
						|
		z: 0.004622126950654504
 | 
						|
	)
 | 
						|
	assert result == expected
 | 
						|
}
 | 
						|
 | 
						|
fn test_dot() {
 | 
						|
	v := vector(
 | 
						|
		x: -0.016957230930171364
 | 
						|
		y: -0.02937078552673521
 | 
						|
		z: 0.002311063475327252
 | 
						|
	)
 | 
						|
	result := v * v
 | 
						|
	expected := 0.0011555317376636305
 | 
						|
	assert result == expected
 | 
						|
}
 | 
						|
 | 
						|
fn test_scale() {
 | 
						|
	v := vector(
 | 
						|
		x: -0.016957230930171364
 | 
						|
		y: -0.02937078552673521
 | 
						|
		z: 0.002311063475327252
 | 
						|
	)
 | 
						|
	result := v.scale(2.0)
 | 
						|
	expected := vector(
 | 
						|
		x: -0.03391446186034273
 | 
						|
		y: -0.05874157105347042
 | 
						|
		z: 0.004622126950654504
 | 
						|
	)
 | 
						|
	assert result == expected
 | 
						|
}
 | 
						|
 | 
						|
fn test_norm_squared() {
 | 
						|
	v := vector(
 | 
						|
		x: -0.016957230930171364
 | 
						|
		y: -0.02937078552673521
 | 
						|
		z: 0.002311063475327252
 | 
						|
	)
 | 
						|
	result := v.norm_squared()
 | 
						|
	expected := 0.0011555317376636305
 | 
						|
	assert result == expected
 | 
						|
}
 | 
						|
 | 
						|
fn test_norm() {
 | 
						|
	v := vector(
 | 
						|
		x: -0.016957230930171364
 | 
						|
		y: -0.02937078552673521
 | 
						|
		z: 0.002311063475327252
 | 
						|
	)
 | 
						|
	result := v.norm()
 | 
						|
	expected := 0.033993113091678295
 | 
						|
	assert result == expected
 | 
						|
}
 |