private static bool RestoreXmlSerializedFavorite(Tuple <string, Type> testCase) { var serializer = new FavoritesFileSerializer(TestConnectionManager.Instance); FavoritesFile file = CreateTestFile(testCase.Item1); var context = new SerializationContext(file, new UnknonwPluginElements()); serializer.Serialize(context, FILE_NAME); SerializationContext loaded = serializer.Deserialize(FILE_NAME); Favorite target = loaded.File.Favorites[0]; return(target.ProtocolProperties.GetType().FullName == testCase.Item2.FullName); }
private static SerializationContext SerializeRdpVncDeserializeRdpOnly() { var fullSerializer = new FavoritesFileSerializer(TestConnectionManager.Instance); FavoritesFile file = CreateTestFile(RDP_FAVORITE, VNC_FAVORITE); var context = new SerializationContext(file, new UnknonwPluginElements()); fullSerializer.Serialize(context, FILE_NAME); var rdpOnlyManager = TestConnectionManager.CreateRdpOnlyManager(); var limitedSerializer = new FavoritesFileSerializer(rdpOnlyManager); return(limitedSerializer.Deserialize(FILE_NAME)); }
/// <summary> /// For testing purpose allowes to inject internaly used services /// </summary> internal FilePersistence(PersistenceSecurity security, IDataFileWatcher fileWatcher, FavoriteIcons favoriteIcons, ConnectionManager connectionManager) { this.fileLocations = Settings.Instance.FileLocations; this.serializer = new FavoritesFileSerializer(connectionManager); this.InitializeSecurity(security); this.Dispatcher = new DataDispatcher(); this.storedCredentials = new StoredCredentials(security); this.groups = new Groups(this); this.favorites = new Favorites(this, favoriteIcons, connectionManager); this.connectionHistory = new ConnectionHistory(this.favorites); this.factory = new Factory(this.groups, this.Dispatcher, connectionManager); this.contextBuilder = new SerializationContextBuilder(this.groups, this.favorites, this.Dispatcher); this.InitializeFileWatch(fileWatcher); }
private static string SerializeAndLoadSavedContent() { var rdpOnlyManager = TestConnectionManager.CreateRdpOnlyManager(); FavoritesFile file = CreateTestFile(KnownConnectionConstants.RDP); var unknownElements = new UnknonwPluginElements(); unknownElements.Favorites.Add(vncCachedFavorite); unknownElements.GroupMembership[GROUP_ID] = new List <XElement>() { UNKNOWN_VNC }; var context = new SerializationContext(file, unknownElements); var limitedSerializer = new FavoritesFileSerializer(rdpOnlyManager); limitedSerializer.Serialize(context, FILE_NAME); string saved = File.ReadAllText(FILE_NAME); return(saved); }