Skip to content

Commit

Permalink
Support for isc_spb_bkp_zip (#1171).
Browse files Browse the repository at this point in the history
  • Loading branch information
cincuranet committed May 27, 2024
1 parent bbd0dd2 commit 1db20a0
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 2 deletions.
20 changes: 18 additions & 2 deletions src/FirebirdSql.Data.FirebirdClient.Tests/FbServicesTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,22 @@ public async Task BackupRestoreTest()
await Connection.CloseAsync();
}

[Test]
public async Task BackupRestoreZipTest()
{
if (!EnsureServerVersionAtLeast(new Version(4, 0, 0, 0)))
return;

var backupName = $"{Guid.NewGuid()}.bak";
var csb = BuildServicesConnectionStringBuilder(ServerType, Compression, WireCrypt, true);
var connectionString = csb.ToString();
await BackupPartHelper(backupName, connectionString, FbBackupFlags.Zip);
await RestorePartHelper(backupName, connectionString);
// test the database was actually restored fine
await Connection.OpenAsync();
await Connection.CloseAsync();
}

[Test]
public async Task BackupRestoreParallelTest()
{
Expand Down Expand Up @@ -453,11 +469,11 @@ public async Task NFixupTest()
Assert.DoesNotThrowAsync(() => Connection.OpenAsync());
}

static Task BackupPartHelper(string backupName, string connectionString)
static Task BackupPartHelper(string backupName, string connectionString, FbBackupFlags backupFlags = FbBackupFlags.IgnoreLimbo)
{
var backupSvc = new FbBackup();
backupSvc.ConnectionString = connectionString;
backupSvc.Options = FbBackupFlags.IgnoreLimbo;
backupSvc.Options = backupFlags;
backupSvc.BackupFiles.Add(new FbBackupFile(backupName, 2048));
backupSvc.Verbose = true;
backupSvc.Statistics = FbBackupRestoreStatistics.TotalTime | FbBackupRestoreStatistics.TimeDelta;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,4 +33,5 @@ public enum FbBackupFlags
Convert = IscCodes.isc_spb_bkp_convert,
Expand = IscCodes.isc_spb_bkp_expand,
NoDatabaseTriggers = IscCodes.isc_spb_bkp_no_triggers,
Zip = IscCodes.isc_spb_bkp_zip,
}

0 comments on commit 1db20a0

Please sign in to comment.