124 lines
2.7 KiB
C#
124 lines
2.7 KiB
C#
#if DEBUG
|
|
using System;
|
|
using System.Text;
|
|
using System.Collections;
|
|
//using System.InvalidOperationException;
|
|
|
|
|
|
using NUnit.Framework;
|
|
|
|
using sscs.common;
|
|
|
|
namespace sscs.cache
|
|
{
|
|
|
|
[TestFixture]
|
|
public class TestKeyChain
|
|
{
|
|
|
|
Secret mysec;
|
|
KeyChain mykc;
|
|
string secval;
|
|
byte[] secbyte;
|
|
|
|
|
|
[SetUp]
|
|
public void Init()
|
|
{
|
|
|
|
mykc = new KeyChain("TestingID");
|
|
|
|
secval= "novell123";
|
|
secbyte = Encoding.ASCII.GetBytes(secval);
|
|
mysec = new Secret();
|
|
mysec.SetKey("testkey");
|
|
mysec.SetValue(secbyte);
|
|
|
|
|
|
}
|
|
|
|
|
|
[Test]
|
|
public void TestAddSecret()
|
|
{
|
|
mykc.AddSecret(mysec);
|
|
Secret returnsecret = mykc.GetSecret("testkey");
|
|
|
|
Assert.AreEqual("novell123", Encoding.ASCII.GetString(returnsecret.GetValue("testkey")));
|
|
|
|
}
|
|
|
|
|
|
[Test]
|
|
public void TestAddSecretWithDup()
|
|
{
|
|
//Add one more with same secret id
|
|
byte[] newvalue = Encoding.ASCII.GetBytes("miCASA");
|
|
mysec.SetValue(newvalue);
|
|
|
|
mykc.AddSecret(mysec);
|
|
Secret returnsecret = mykc.GetSecret("testkey");
|
|
|
|
Assert.AreEqual("miCASA", Encoding.ASCII.GetString(returnsecret.GetValue("testkey")));
|
|
|
|
}
|
|
|
|
|
|
[Test]
|
|
[ExpectedException(typeof(SecretNotFoundException))]
|
|
public void TestRemoveSecret()
|
|
{
|
|
|
|
mykc.RemoveSecret("testkey");
|
|
|
|
//Try and get the same.
|
|
//Secret sec = mykc.GetSecret("testkey");
|
|
}
|
|
|
|
|
|
|
|
[Test]
|
|
[ExpectedException(typeof(InvalidOperationException))]
|
|
public void TestGetAllSecretsWhenNone()
|
|
{
|
|
// IDictionaryEnumerator myenum = (IDictionaryEnumerator)mykc.GetAllSecrets();
|
|
//Object temp = myenum.Current;
|
|
}
|
|
|
|
[Test]
|
|
public void TestGetAllSecrets()
|
|
{
|
|
int count = 0;
|
|
|
|
byte[] val1 = Encoding.ASCII.GetBytes("val1");
|
|
byte[] val2 = Encoding.ASCII.GetBytes("val2");
|
|
byte[] val3 = Encoding.ASCII.GetBytes("val3");
|
|
|
|
Secret sec1 = new Secret("key1", val1);
|
|
Secret sec2 = new Secret("key2", val2);
|
|
Secret sec3 = new Secret("key3", val3);
|
|
|
|
mykc.AddSecret(sec1);
|
|
mykc.AddSecret(sec2);
|
|
mykc.AddSecret(sec3);
|
|
|
|
IDictionaryEnumerator myenum =(IDictionaryEnumerator) mykc.GetAllSecrets();
|
|
|
|
while(myenum.MoveNext())
|
|
{
|
|
count++;
|
|
}
|
|
|
|
Assert.AreEqual(3, mykc.GetNumSecrets());
|
|
Assert.AreEqual(3, count);
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
}
|
|
#endif
|
|
|
|
|