a53b9f9e9f
- M2M: «bj сам — автоматически» — режим по умолчанию (где ни разу не выбирали; момент включения записывается, берутся переводы не старше суток до него); «Оператор» — запасной; явный выбор не меняется. - Контуры НРД: TEST3 и боевой — карточки с состоянием (Активный / Готов / Нужен ключ / Канала нет); «Сделать активным» видна всегда, без ключа неактивна с пояснением; «Установить ключ», «Обновить канал». - Папки шлюза по сети: после открытия — адреса для проводника (\\IP\igate_exchange и по имени сервера, боевой — igate_exchange_prod) с кнопкой «Скопировать»; bj-igate-admin share status отдаёт ip, host, shares. - Zabbix перенесён из «Оповещений» в «Диагностику». Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
34 lines
1.3 KiB
Go
34 lines
1.3 KiB
Go
package lkgateway
|
|
|
|
import (
|
|
"os"
|
|
"path/filepath"
|
|
"testing"
|
|
)
|
|
|
|
// Автоматический режим M2M — по умолчанию: где режим не выбирали, он включается и запоминается;
|
|
// явный выбор «Оператор» остаётся.
|
|
func TestM2MAutoDefaultOn(t *testing.T) {
|
|
dir := t.TempDir()
|
|
fresh := filepath.Join(dir, "fresh.json")
|
|
_ = os.WriteFile(fresh, []byte(`{"nsd":{"profile":"test3-gost"}}`), 0o600)
|
|
rc, err := NewRuntimeConfig(fresh)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
a := rc.Snapshot().M2MAuto
|
|
if !a.Enabled || a.ChangedAt.IsZero() || a.ChangedBy != "по умолчанию" {
|
|
t.Fatalf("не включён по умолчанию: %+v", a)
|
|
}
|
|
rc2, _ := NewRuntimeConfig(fresh) // записано: при следующем запуске момент включения тот же
|
|
if !rc2.Snapshot().M2MAuto.ChangedAt.Equal(a.ChangedAt) {
|
|
t.Fatal("момент включения не сохранился")
|
|
}
|
|
manual := filepath.Join(dir, "manual.json")
|
|
_ = os.WriteFile(manual, []byte(`{"m2m_auto":{"enabled":false,"changed_at":"2026-10-01T10:00:00Z","changed_by":"admin"}}`), 0o600)
|
|
rc3, _ := NewRuntimeConfig(manual)
|
|
if rc3.Snapshot().M2MAuto.Enabled {
|
|
t.Fatal("явный выбор «Оператор» перезаписан")
|
|
}
|
|
}
|