|
1 | 1 | // |
2 | 2 | // DISCLAIMER |
3 | 3 | // |
4 | | -// Copyright 2016-2023 ArangoDB GmbH, Cologne, Germany |
| 4 | +// Copyright 2016-2024 ArangoDB GmbH, Cologne, Germany |
5 | 5 | // |
6 | 6 | // Licensed under the Apache License, Version 2.0 (the "License"); |
7 | 7 | // you may not use this file except in compliance with the License. |
@@ -153,6 +153,30 @@ func Test_State_Create_Upload(t *testing.T) { |
153 | 153 | compareBackupMeta(t, backupMeta, newObj) |
154 | 154 | } |
155 | 155 |
|
| 156 | +func Test_State_Create_CreateError_Health(t *testing.T) { |
| 157 | + *features.AsyncBackupCreation().EnabledPointer() = false |
| 158 | + |
| 159 | + // Arrange |
| 160 | + handler, _ := newErrorsFakeHandler(mockErrorsArangoClientBackup{ |
| 161 | + healthCheckError: newFatalErrorf("error"), |
| 162 | + }) |
| 163 | + |
| 164 | + obj, deployment := newObjectSet(t, backupApi.ArangoBackupStateCreate) |
| 165 | + |
| 166 | + // Act |
| 167 | + createArangoDeployment(t, handler, deployment) |
| 168 | + createArangoBackup(t, handler, obj) |
| 169 | + |
| 170 | + require.NoError(t, handler.Handle(context.Background(), tests.NewItem(t, operation.Update, obj))) |
| 171 | + |
| 172 | + // Assert |
| 173 | + newObj := refreshArangoBackup(t, handler, obj) |
| 174 | + require.Equal(t, newObj.Status.State, backupApi.ArangoBackupStateCreateError) |
| 175 | + require.Equal(t, newObj.Status.Message, "Create failed on HealthCheck with error: error") |
| 176 | + require.Nil(t, newObj.Status.Backup) |
| 177 | + require.False(t, newObj.Status.Available) |
| 178 | +} |
| 179 | + |
156 | 180 | func Test_State_Create_CreateError(t *testing.T) { |
157 | 181 | *features.AsyncBackupCreation().EnabledPointer() = false |
158 | 182 |
|
|
0 commit comments