public void ParseDir() { if (!Directory.Exists(Dir)) { status = RefStatus.Missing; } else { FileNames = Directory.GetFiles(Dir, "*.jpg", SearchOption.TopDirectoryOnly); count = FileNames.Length; status = (count == 0) ? RefStatus.Empty : RefStatus.Available; } }
public void GetValidMappedStateValues() { // Setup // ... // Act // ... // Verify Assert.AreEqual(RefStatus.State.FailedOrRejected, RefStatus.GetMappedState('!')); Assert.AreEqual(RefStatus.State.ForcedUpdated, RefStatus.GetMappedState('+')); Assert.AreEqual(RefStatus.State.New, RefStatus.GetMappedState('*')); Assert.AreEqual(RefStatus.State.Pruned, RefStatus.GetMappedState('-')); Assert.AreEqual(RefStatus.State.TagUpdated, RefStatus.GetMappedState('t')); Assert.AreEqual(RefStatus.State.Unknown, RefStatus.GetMappedState('\0')); Assert.AreEqual(RefStatus.State.Updated, RefStatus.GetMappedState(' ')); Assert.AreEqual(RefStatus.State.UpToDate, RefStatus.GetMappedState('=')); } // end of function - GetValidMappedStateValues
public void GettersSettersOhMy() { // Setup var from = "From-test"; var to = "to-test"; var reason = "reason for the test"; var summary = "summary of the test"; // Act var refStatus = new RefStatus() { Flag = RefStatus.State.New, From = from, Reason = reason, Summary = summary, To = to }; // Verify Assert.AreEqual(from, refStatus.From); Assert.AreEqual(to, refStatus.To); Assert.AreEqual(reason, refStatus.Reason); Assert.AreEqual(summary, refStatus.Summary); } // end of function - GettersSettersOhMy
public void ThrowsForInvalidStateFlag() { // Setup // Act/Verify var state = RefStatus.GetMappedState('m'); } // end of function - ThrowsForInvalidStateFlag
void ProcessReferenceList(out bool isComplete) { isComplete = false; var db = DBManager.Instance().GetDB(); var objectList = m_searchResultList as IVsObjectList2; var dte = Package.GetGlobalService(typeof(DTE)) as DTE2; if (objectList == null || dte == null) { return; } try { uint pCount; bool isProcessing = false; List <DoxygenDB.Entity> targetEntityList = new List <DoxygenDB.Entity>(); if (objectList.GetItemCount(out pCount) != VSConstants.S_OK) { isProcessing = true; return; } var beginTime = DateTime.Now; ushort img; bool isDoing; string itemText; bool longNameMatched = false; for (uint i = 0; i < pCount; i++) { GetListItemInfo(objectList, i, out itemText, out img, out isDoing); if (itemText.Contains(m_srcLongName)) { longNameMatched = true; } } for (uint i = 0; i < pCount; i++) { GetListItemInfo(objectList, i, out itemText, out img, out isDoing); Logger.Debug("+++++++" + itemText); if (longNameMatched && !itemText.Contains(m_srcLongName)) { continue; } isProcessing |= isDoing; if (isDoing) { continue; } if (m_itemDict.ContainsKey(itemText)) { continue; } IVsObjectList2 subList; bool isItemProcessing = false; uint flags; objectList.GetFlags(out flags); // _VSTREEFLAGS uint counter, changes; objectList.UpdateCounter(out counter, out changes); // _VSTREEITEMCHANGESMASK uint cap; objectList.GetCapabilities2(out cap); // _LIB_LISTCAPABILITIES if (objectList.GetList2(i, (uint)_LIB_LISTTYPE.LLT_REFERENCES, (uint)(_LIB_LISTFLAGS.LLF_NONE), new VSOBSEARCHCRITERIA2[0], out subList) == VSConstants.S_OK && subList != null) { // Switch to using our "safe" PInvoke interface for IVsObjectList2 to avoid potential memory management issues // when receiving strings as out params. uint list2ItemCount = 0; if (subList.GetItemCount(out list2ItemCount) != VSConstants.S_OK) { isItemProcessing = true; continue; } //Logger.Debug(" sublist: " + i + " count: " + list2ItemCount); for (uint j = 0; j < list2ItemCount; j++) { string text; GetListItemInfo(subList, j, out text, out img, out isDoing); isItemProcessing |= isDoing; if (isDoing) { continue; } // Ignore several reference types // 12: comment bool isIgnored = (img == 12 || img == 17); Logger.Debug("Type:" + img + ": " + !isIgnored + ": " + text); if (isIgnored) { continue; } if (!m_referenceDict.ContainsKey(text)) { m_referenceDict[text] = new RefStatus(img); } var refItem = m_referenceDict[text]; if (refItem.m_isCheck) { continue; } //int isOK; //int res = subList.CanGoToSource(j, VSOBJGOTOSRCTYPE.GS_REFERENCE, out isOK); //if (res != VSConstants.S_OK || isOK == 0) //{ // isItemProcessing = true; // continue; //} //if (subList.GoToSource(j, VSOBJGOTOSRCTYPE.GS_REFERENCE) != VSConstants.S_OK) //{ // Logger.Debug("Go to source failed. " + text); // isItemProcessing = true; // continue; //} //refItem.m_isCheck = ConnectTargetToSource(); var duration = (DateTime.Now - beginTime).TotalMilliseconds; //if (duration > 500) //{ // isItemProcessing = true; // return; //} } } if (!isItemProcessing) { m_itemDict[itemText] = ""; } isProcessing |= isItemProcessing; } if (!isProcessing) { isComplete = true; // No more item } Logger.Debug("========================================="); } catch (InvalidCastException) { // fixed in VS2010 // VSBug : trying to cast IVsObjectList2 to IVsObjectList, shows 'Find Results' pane, but pplist is null } }