public void getRecoverUniqueListTest() { RecoverInfos ris = new RecoverInfos(); string rfA = "C:\\a.txt\r\n0000000000000000abcdefghabcdefghabcdefghabcdefgh\r\n"; string rfB = "C:\\b.txt\r\n0000000000000000abcdefghabcdefghabcdefghabcdefgh\r\n"; string rfC = "C:\\c.txt\r\n0000000000000000abcdefghabcdefghabcdefghabcdefgh\r\n"; string rfD = "C:\\d.txt\r\n0000000000000000abcdefghabcdefghabcdefghabcdefgh\r\n"; ris.addRawRecord(rfA, 1); ris.addRawRecord(rfB, 1); ris.addRawRecord(rfC, 1); ris.addRawRecord(rfA, 2); ris.addRawRecord(rfD, 2); ris.addRawRecord(rfB, 3); ris.addRawRecord(rfC, 3); ris.addRawRecord(rfD, 3); var res = ris.getRecoverUniqueList(); Assert.AreEqual(4, res.Count); //expected: /* * a2 * b3 * c3 * d3 */ //Assert.IsTrue(res.Contains()) //Assert.AreEqual(res[1].rf.nameAndPath, "C:\\ciao2.txt"); //Assert.AreEqual(res[2].rf.nameAndPath, "C:\\ciao3.txt"); //Assert.AreEqual(res[0].rf.nameAndPath, "C:\\ciao1.txt"); }
public void RecoverInfosTest() { RecoverInfos ris = new RecoverInfos(); ris.addRawRecord("C:\\ciao.txt\r\n0000000000000000abcdefghabcdefghabcdefghabcdefgh\r\n", 1); var res = ris.getRecoverUniqueList(); RecoverRecord rr = res[0]; Assert.AreEqual("C:\\ciao.txt", rr.rf.nameAndPath); Assert.AreEqual("abcdefghabcdefghabcdefghabcdefgh", rr.rf.hash); Assert.AreEqual(-1, rr.rf.size); Assert.AreEqual(new DateTime(1970, 1, 1, 1, 0, 0), rr.rf.lastModified); }
public void getVersionSpecificRecoverListTest() { RecoverInfos ris = new RecoverInfos(); ris.addRawRecord("C:\\ciao1.txt\r\n0000000000000000abcdefghabcdefghabcdefghabcdefgh\r\n", 1); ris.addRawRecord("C:\\ciao2a.txt\r\n0000000000000000abcdefghabcdefghabcdefghabcdefgh\r\n", 2); ris.addRawRecord("C:\\ciao3.txt\r\n0000000000000000abcdefghabcdefghabcdefghabcdefgh\r\n", 3); ris.addRawRecord("C:\\ciao2b.txt\r\n0000000000000000abcdefghabcdefghabcdefghabcdefgh\r\n", 2); var res3 = ris.getVersionSpecificRecoverList(3); Assert.AreEqual(res3.Count, 1); Assert.AreEqual(res3[0].rf.nameAndPath, "C:\\ciao3.txt"); var res2 = ris.getVersionSpecificRecoverList(2); Assert.AreEqual(res2.Count, 2); Assert.AreEqual(res2[0].rf.nameAndPath, "C:\\ciao2a.txt"); Assert.AreEqual(res2[1].rf.nameAndPath, "C:\\ciao2b.txt"); }
public RecoverInfos askForRecoverInfo() { //todo: remove if (DEBUGGING_NO_SERVER) { RecoverInfos risdbg = new RecoverInfos(); risdbg.addRawRecord("C:\\DATI\\poli\\Programmazione di Sistema\\progetto_client\\cartella_test\\1\r\n000000111111111100000000000000000000000000000000", 1); risdbg.addRawRecord("C:\\DATI\\poli\\Programmazione di Sistema\\progetto_client\\cartella_test\\2\r\n000000111111111100000000000000000000000000000000", 2); risdbg.addRawRecord("C:\\DATI\\poli\\Programmazione di Sistema\\progetto_client\\cartella_test\\3\r\n000000111111111100000000000000000000000000000000", 3); risdbg.addRawRecord("C:\\DATI\\poli\\Programmazione di Sistema\\progetto_client\\cartella_test\\4\r\n000000111111111100000000000000000000000000000000", 4); risdbg.addRawRecord("C:\\DATI\\poli\\Programmazione di Sistema\\progetto_client\\cartella_test\\5\r\n000000111111111100000000000000000000000000000000", 5); risdbg.addRawRecord("C:\\DATI\\poli\\Programmazione di Sistema\\progetto_client\\cartella_test\\6\r\n000000111111111100000000000000000000000000000000", 5); risdbg.addRawRecord("C:\\DATI\\poli\\Programmazione di Sistema\\progetto_client\\cartella_test\\7\r\n000000111111111100000000000000000000000000000000", 7); risdbg.addRawRecord("percorso\r\n000000111111111100000000000000000000000000000000", 1); return risdbg; } //*/ sendToServer(commRecoverInfo); waitForAck(commCmdAckFromServer); RecoverInfos ris = new RecoverInfos(); try { //leggi numero di versioni int numVers = Convert.ToInt32(socketReadline()); if (numVers == 0) { MyLogger.debug("primo backup necessario"); return null; } int nFile; int nVersCurr; //per ogni versione for (int bv = 1; bv <= numVers; bv++) { nVersCurr = Convert.ToInt32(socketReadline()); if (nVersCurr != bv) throw new Exception("nVersCurr != bv !!!!"); nFile = Convert.ToInt32(socketReadline()); //per ogni file for (int f = 0; f < nFile; f++) { // [Percorso completo]\r\n[Ultima modifica -> 16byte][Hash -> 32char]\r\n ris.addRawRecord(socketReadline() + "\r\n" + socketReadline(), bv); sendToServer(commDataRec); } } } catch (Exception e) { MyLogger.debug("errore in askForRecoverInfo\n"); MyLogger.debug(e.ToString()); throw; } return ris; }
private void setRecoverInfos(RecoverInfos recInfo) { recoverW.setRecoverInfos(recInfo); }
public RecoveringQuery_st(RecoverInfos recInfos, int versionToRecover, string recoveringFolderPath) { this.recInfos = recInfos; this.versionToRecover = versionToRecover; this.recoveringFolderPath = recoveringFolderPath; }
int versionToDisplay; //-1 se display di file da tutte le versioni #endregion Fields #region Constructors public RecoverWindow(MainWindow mainW) { InitializeComponent(); this.mainW = mainW; DelYesNoQuestion = AskYesNoQuestion; DelCloseWindow = () => { this.Close(); return; }; DelSetRecProgressValues = SetRecProgressValues; RecoverEntryList = new List<recoverListEntry>(); RecoverEntryList.Add( new recoverListEntry() { Name = "Caricamento in corso...", lastMod = ""}); recoverListView.ItemsSource = RecoverEntryList; recInfos = new RecoverInfos(); RecoverViewModeList = new List<string> { "file da tutte le versioni" }; comboRecoverViewMode.ItemsSource = RecoverViewModeList; //seleziono prima stringa (file da tutte le versioni) comboRecoverViewMode.SelectedIndex = 0; versionToDisplay = -1; this.buttRecover.IsEnabled = false; }
//public void cleanRecovered() //{ // //lo rimuovo dalla lista di RecoverEntry // RecoverEntryList.Remove(RListRecoveringEntry); // //rimuovo anche dall'oggetto RecoverInfos in mainW. // recInfos.removeRecoverRecord(RListRecoveringEntry.rr); // //refresh della listView // recoverListView.Items.Refresh(); //} internal void setRecoverInfos(RecoverInfos recInfos) { if (recInfos != null) this.recInfos = recInfos; showRecoverInfos(); updateRecoverViewModes(); }