fixed issue loading kdb files with key file
improved error message by adding messages to loading exceptions in Java
This commit is contained in:
@@ -86,7 +86,6 @@
|
||||
<Compile Include="TestSynchronizeCachedDatabase.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="ClassDiagram1.cd" />
|
||||
<None Include="Resources\AboutResources.txt" />
|
||||
<None Include="Assets\AboutAssets.txt" />
|
||||
</ItemGroup>
|
||||
|
||||
@@ -19,7 +19,8 @@ namespace Kp2aUnitTests
|
||||
TestRunner runner = new TestRunner();
|
||||
// Run all tests from this assembly
|
||||
//runner.AddTests(Assembly.GetExecutingAssembly());
|
||||
runner.AddTests(new List<Type> { typeof(TestIntentsAndBundles) });
|
||||
//runner.AddTests(typeof(TestLoadDb).GetMethod("TestLoadKdb1WithKeyfileByDirectCall"));
|
||||
runner.AddTests(typeof(TestLoadDb).GetMethod("TestLoadKdb1WithKeyfileOnly"));
|
||||
//runner.AddTests(new List<Type> { typeof(TestSynchronizeCachedDatabase)});
|
||||
//runner.AddTests(typeof(TestLoadDb).GetMethod("LoadErrorWithCertificateTrustFailure"));
|
||||
//runner.AddTests(typeof(TestLoadDb).GetMethod("LoadWithAcceptedCertificateTrustFailure"));
|
||||
|
||||
@@ -2,11 +2,15 @@
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using Android.App;
|
||||
using Com.Keepassdroid.Database.Load;
|
||||
using Java.IO;
|
||||
using KeePassLib;
|
||||
using KeePassLib.Keys;
|
||||
using KeePassLib.Serialization;
|
||||
using Microsoft.VisualStudio.TestTools.UnitTesting;
|
||||
using keepass2android;
|
||||
using keepass2android.Io;
|
||||
using FileNotFoundException = System.IO.FileNotFoundException;
|
||||
|
||||
namespace Kp2aUnitTests
|
||||
{
|
||||
@@ -72,6 +76,56 @@ namespace Kp2aUnitTests
|
||||
Assert.IsFalse(e.Binaries.Any());
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void TestLoadKdb1WithKeyfileByDirectCall()
|
||||
{
|
||||
ImporterV3 importer = new ImporterV3();
|
||||
|
||||
try
|
||||
{
|
||||
FileStream dbStream = new FileStream(TestDbDirectory+"withkeyfile_nopwd.kdb", FileMode.Open);
|
||||
FileStream keyfileStream = new FileStream(TestDbDirectory + "withkeyfile.key", FileMode.Open);
|
||||
/*
|
||||
for (int i = 0; i < 10; i++)
|
||||
{
|
||||
int b = keyfileStream.ReadByte();
|
||||
Kp2aLog.Log(i+": " + b);
|
||||
}
|
||||
keyfileStream.Close();
|
||||
Kp2aLog.Log("stream 2");
|
||||
var keyfileStream2 = new MemoryStream(new KcpKeyFile(TestDbDirectory + "withkeyfile.key").RawFileData.ReadData());
|
||||
for (int i = 0; i < 10; i++)
|
||||
{
|
||||
int b = keyfileStream2.ReadByte();
|
||||
Kp2aLog.Log(i + ": " + b);
|
||||
}*/
|
||||
importer.OpenDatabase(dbStream, "", keyfileStream);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Kp2aLog.Log(e.ToString());
|
||||
Assert.Fail("exception occured: " + e);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void TestLoadKdb1WithKeyfile()
|
||||
{
|
||||
var app = PerformLoad("withkeyfile.kdb", "test", TestDbDirectory + "withkeyfile.key");
|
||||
|
||||
}
|
||||
|
||||
|
||||
[TestMethod]
|
||||
public void TestLoadKdb1WithKeyfileOnly()
|
||||
{
|
||||
var app = PerformLoad("withkeyfile_nopwd.kdb", "", TestDbDirectory + "withkeyfile.key");
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void TestLoadWithKeyfileOnly()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user