Exemple #1
0
        public void ReconcileReferencesOverload_ReturnsEmptyWithoutNewReferences()
        {
            var model      = AddRemoveReferencesSetup.ArrangeParsedAddRemoveReferencesModel(null, null, null, out _, out _);
            var reconciler = AddRemoveReferencesSetup.ArrangeReferenceReconciler();
            var output     = reconciler.ReconcileReferences(model.Object, null);

            Assert.IsEmpty(output);
        }
Exemple #2
0
        public void ReconcileReferences_ReturnsEmptyWithoutNewReferences()
        {
            var model      = AddRemoveReferencesSetup.ArrangeParsedAddRemoveReferencesModel(null, null, null, out _, out _, out var projectsProvider);
            var reconciler = AddRemoveReferencesSetup.ArrangeReferenceReconciler(projectsProvider);

            var output = reconciler.ReconcileReferences(model.Object);

            Assert.IsEmpty(output);
        }
Exemple #3
0
        public void ReconcileReferences_RemoveNotCalledOnBuiltIn()
        {
            var registered = AddRemoveReferencesSetup.DummyReferencesList;
            var model      = AddRemoveReferencesSetup.ArrangeParsedAddRemoveReferencesModel(registered, registered, registered, out var references, out _);
            var reconciler = AddRemoveReferencesSetup.ArrangeReferenceReconciler();

            var vba   = references.Object.First(lib => lib.Name.Equals("VBA"));
            var excel = references.Object.First(lib => lib.Name.Equals("Excel"));

            reconciler.ReconcileReferences(model.Object, registered);
            references.Verify(m => m.Remove(vba), Times.Never);
            references.Verify(m => m.Remove(excel), Times.Never);
        }
Exemple #4
0
        public void ReconcileReferences_UpdatesSettingsPinned()
        {
            var newReferences = AddRemoveReferencesSetup.LibraryReferenceInfoList
                                .Select(reference => new ReferenceModel(reference, ReferenceKind.TypeLibrary)).ToList();

            var model      = AddRemoveReferencesSetup.ArrangeParsedAddRemoveReferencesModel(null, newReferences, null, out _, out _);
            var reconciler = AddRemoveReferencesSetup.ArrangeReferenceReconciler();

            var pinned = newReferences.First();

            pinned.IsPinned = true;

            reconciler.ReconcileReferences(model.Object, newReferences);
            var result = model.Object.Settings.GetPinnedReferencesForHost(null).Exists(info => pinned.Matches(info));

            Assert.IsTrue(result);
        }
Exemple #5
0
        public void ReconcileReferences_AllReferencesAreAdded()
        {
            var newReferences = AddRemoveReferencesSetup.LibraryReferenceInfoList
                                .Select(reference => new ReferenceModel(reference, ReferenceKind.TypeLibrary)).ToList();

            var model      = AddRemoveReferencesSetup.ArrangeParsedAddRemoveReferencesModel(newReferences, newReferences, newReferences, out var references, out var builder);
            var reconciler = AddRemoveReferencesSetup.ArrangeReferenceReconciler();

            var priority = references.Object.Count;

            foreach (var item in newReferences)
            {
                item.Priority = ++priority;
                var result = builder.CreateReferenceMock(item.Name, item.FullPath, item.Major, item.Minor);
                references.Setup(m => m.AddFromFile(item.FullPath)).Returns(result.Object);
            }

            var added = reconciler.ReconcileReferences(model.Object, newReferences);

            Assert.IsTrue(newReferences.All(reference => added.Contains(reference)));
        }