data_management_grpc_test.go 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. package service
  2. import (
  3. "context"
  4. "path/filepath"
  5. "testing"
  6. infraerrors "github.com/Wei-Shaw/sub2api/internal/pkg/errors"
  7. "github.com/stretchr/testify/require"
  8. )
  9. func TestDataManagementService_DeprecatedRPCMethods(t *testing.T) {
  10. t.Parallel()
  11. socketPath := filepath.Join(t.TempDir(), "datamanagement.sock")
  12. svc := NewDataManagementServiceWithOptions(socketPath, 0)
  13. _, err := svc.GetConfig(context.Background())
  14. assertDeprecatedDataManagementError(t, err, socketPath)
  15. _, err = svc.CreateBackupJob(context.Background(), DataManagementCreateBackupJobInput{BackupType: "full"})
  16. assertDeprecatedDataManagementError(t, err, socketPath)
  17. err = svc.DeleteS3Profile(context.Background(), "s3-default")
  18. assertDeprecatedDataManagementError(t, err, socketPath)
  19. }
  20. func assertDeprecatedDataManagementError(t *testing.T, err error, socketPath string) {
  21. t.Helper()
  22. require.Error(t, err)
  23. statusCode, status := infraerrors.ToHTTP(err)
  24. require.Equal(t, 503, statusCode)
  25. require.Equal(t, DataManagementDeprecatedReason, status.Reason)
  26. require.Equal(t, socketPath, status.Metadata["socket_path"])
  27. }