public static Storage GetStorage(LicenseOptions options) { var details = LoadCompanyAndProduct(options); var pathBuilder = new RegistryPathBuilder(); var subkey = pathBuilder.GetPath(details); var key = Registry.CurrentUser.OpenSubKey(subkey, RegistryKeyPermissionCheck.ReadWriteSubTree) ?? Registry.CurrentUser.CreateSubKey(subkey, RegistryKeyPermissionCheck.ReadWriteSubTree); var io = new RegistryIO(key); var encryptor = GetEncryptor(options); var serializer = new LicenseSerializer(); return new SecureStorage(io, encryptor, serializer); }
public void SerializingThenDeserializingReturnsTheSameResult() { var sut = new LicenseSerializer(); var details = ObjectMother.CreateRegistration(); var serialized = sut.Serialize(details); var result = sut.Deserialize(serialized); Assert.AreEqual(ObjectMother.OldDate, result.CreatedOn); Assert.AreEqual(-1, result.Limits.Days); Assert.AreEqual(-1, result.Limits.Runs); Assert.AreEqual(ObjectMother.KEY, result.Key); Assert.AreEqual(ObjectMother.NAME, result.Name); Assert.AreEqual(ObjectMother.CONTACT, result.Contact); Assert.AreEqual(ObjectMother.FutureDate, result.Expiration); }