add more tests for Desired func (#1082)
Signed-off-by: yxxhero <aiopsclub@163.com>
This commit is contained in:
		
							parent
							
								
									d15f398ff4
								
							
						
					
					
						commit
						98c4aec0d4
					
				|  | @ -43,3 +43,42 @@ func TestExecuteTemplateExpressions(t *testing.T) { | ||||||
| 	require.NoErrorf(t, err, "failed to execute template expressions: %v", err) | 	require.NoErrorf(t, err, "failed to execute template expressions: %v", err) | ||||||
| 	require.Equalf(t, result.ValuesTemplate[0].(map[string]any)["fullnameOverride"], "foo", "failed to execute template expressions") | 	require.Equalf(t, result.ValuesTemplate[0].(map[string]any)["fullnameOverride"], "foo", "failed to execute template expressions") | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | func TestDesired(t *testing.T) { | ||||||
|  | 	cases := []struct { | ||||||
|  | 		name     string | ||||||
|  | 		expected bool | ||||||
|  | 		release  ReleaseSpec | ||||||
|  | 	}{ | ||||||
|  | 		{ | ||||||
|  | 			name:     "desired is true", | ||||||
|  | 			expected: true, | ||||||
|  | 			release: ReleaseSpec{ | ||||||
|  | 				Installed: &[]bool{true}[0], | ||||||
|  | 			}, | ||||||
|  | 		}, | ||||||
|  | 		{ | ||||||
|  | 			name:     "desired is false", | ||||||
|  | 			expected: false, | ||||||
|  | 			release: ReleaseSpec{ | ||||||
|  | 				Installed: &[]bool{false}[0], | ||||||
|  | 			}, | ||||||
|  | 		}, | ||||||
|  | 		{ | ||||||
|  | 			name:     "desired is nil", | ||||||
|  | 			expected: true, | ||||||
|  | 			release:  ReleaseSpec{}, | ||||||
|  | 		}, | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	for _, tc := range cases { | ||||||
|  | 		t.Run(tc.name, func(t *testing.T) { | ||||||
|  | 			actual := tc.release.Desired() | ||||||
|  | 			require.Equal(t, tc.expected, actual) | ||||||
|  | 
 | ||||||
|  | 			// test compatibility with older versions of helmfile
 | ||||||
|  | 			// r.Installed != nil && !*r.Installed compare to !r.Desired()
 | ||||||
|  | 			require.Equal(t, tc.release.Installed != nil && !*tc.release.Installed, !actual) | ||||||
|  | 		}) | ||||||
|  | 	} | ||||||
|  | } | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue