generated from VLADIMIR/template
fix
This commit is contained in:
@@ -131,6 +131,14 @@ var ErrScenarioPublished = errors.New("Опубликованный сценар
|
||||
// ErrScenarioNotOwner — сценарий принадлежит другому пользователю.
|
||||
var ErrScenarioNotOwner = errors.New("Сценарий принадлежит другому пользователю")
|
||||
|
||||
// ErrScenarioNotFound — сценарий не найден или уже удалён.
|
||||
var ErrScenarioNotFound = errors.New("Сценарий не найден")
|
||||
|
||||
// MaxArchiveSize возвращает максимальный размер загружаемого архива.
|
||||
func MaxArchiveSize() int {
|
||||
return scenario_archive.MaxArchiveSize()
|
||||
}
|
||||
|
||||
// getScenarioForChange проверяет права актора на изменение сценария:
|
||||
// не-админ должен быть автором сценария, сценарий не должен быть удалён.
|
||||
// Возвращает сценарий, чтобы вызывающий код не делал повторное чтение.
|
||||
@@ -409,6 +417,9 @@ func (s *ScenarioService) DownloadArchive(
|
||||
) ([]byte, string, error) {
|
||||
scenario, err := s.getScenarioForChange(ctx, id, actorID, isAdmin)
|
||||
if err != nil {
|
||||
if errors.Is(err, scenarios_repo.ErrScenarioNotFound) {
|
||||
return nil, "", ErrScenarioNotFound
|
||||
}
|
||||
return nil, "", err
|
||||
}
|
||||
data, err := s.scenarioArchive.Pack(
|
||||
|
||||
@@ -649,7 +649,7 @@ func TestDownloadArchiveNotFound(t *testing.T) {
|
||||
storage := newFakeStorage()
|
||||
svc := newTestService(repo, storage)
|
||||
|
||||
if _, _, err := svc.DownloadArchive(context.Background(), 404, 1, true); !errors.Is(err, scenarios_repo.ErrScenarioNotFound) {
|
||||
if _, _, err := svc.DownloadArchive(context.Background(), 404, 1, true); !errors.Is(err, ErrScenarioNotFound) {
|
||||
t.Errorf("err = %v, want ErrScenarioNotFound", err)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user