예제 #1
0
        public void GetRecentReferencesForHostLibraries_LimitedByRecentReferencesTracked()
        {
            const int tracked = 3;

            var settings = new ReferenceSettings {
                RecentReferencesTracked = tracked
            };

            settings.UpdateRecentReferencesForHost(null, AddRemoveReferencesSetup.LibraryReferenceInfoList);

            Assert.AreEqual(tracked, settings.GetRecentReferencesForHost(null).Count);
        }
예제 #2
0
        public void GetRecentReferencesForHostProjects_LimitedByRecentReferencesTracked()
        {
            const string host    = "EXCEL.EXE";
            const int    tracked = 3;

            var settings = new ReferenceSettings {
                RecentReferencesTracked = tracked
            };

            settings.UpdateRecentReferencesForHost(host, AddRemoveReferencesSetup.RecentProjectReferenceInfoList);

            Assert.AreEqual(tracked, settings.GetRecentReferencesForHost(host).Count);
        }
예제 #3
0
        public void TrackUsage_RejectsDuplicateLibraries()
        {
            var library = new ReferenceInfo(AddRemoveReferencesSetup.DummyGuidOne, "Reference", @"C:\Windows\System32\reference.dll", 1, 0);

            var settings = new ReferenceSettings {
                RecentReferencesTracked = 20
            };

            settings.TrackUsage(library);
            settings.TrackUsage(library);

            Assert.AreEqual(1, settings.GetRecentReferencesForHost(null).Count);
        }
예제 #4
0
        public void TrackUsage_RejectsDuplicateProjects()
        {
            const string host    = "EXCEL.EXE";
            var          project = new ReferenceInfo(Guid.Empty, "RecentProject", @"C:\Users\Rubberduck\Documents\RecentBook.xlsm", 0, 0);

            var settings = new ReferenceSettings {
                RecentReferencesTracked = 20
            };

            settings.TrackUsage(project, host);
            settings.TrackUsage(project, host);

            Assert.AreEqual(1, settings.GetRecentReferencesForHost(host).Count);
        }
예제 #5
0
        public void TrackUsage_KeepsNewestLibraries()
        {
            var settings = new ReferenceSettings {
                RecentReferencesTracked = AddRemoveReferencesSetup.LibraryReferenceInfoList.Count
            };

            settings.UpdateRecentReferencesForHost(null, AddRemoveReferencesSetup.LibraryReferenceInfoList);

            var expected = AddRemoveReferencesSetup.LibraryReferenceInfoList.First();

            settings.TrackUsage(expected);

            var actual = settings.GetRecentReferencesForHost(null).Last();

            Assert.IsTrue(expected.Equals(actual));
        }
예제 #6
0
        public void TrackUsage_KeepsNewestProjects()
        {
            const string host = "EXCEL.EXE";

            var settings = new ReferenceSettings {
                RecentReferencesTracked = AddRemoveReferencesSetup.ProjectReferenceInfoList.Count
            };

            settings.UpdateRecentReferencesForHost(host, AddRemoveReferencesSetup.ProjectReferenceInfoList);

            var expected = AddRemoveReferencesSetup.ProjectReferenceInfoList.First();

            settings.TrackUsage(expected, host);

            var actual = settings.GetRecentReferencesForHost(host).Last();

            Assert.IsTrue(expected.Equals(actual));
        }