public void ShowToolwindowNegativeTest() { IVsPackage package = new NuSetPackage() as IVsPackage; // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); //Add uishell service that knows how to create a toolwindow BaseMock uiShellService = UIShellServiceMock.GetUiShellInstanceCreateToolWinReturnsNull(); serviceProvider.AddService(typeof(SVsUIShell), uiShellService, false); // Add site support to register editor factory BaseMock registerEditor = NuSet_UnitTests.EditorTests.RegisterEditorsServiceMock.GetRegisterEditorsInstance(); serviceProvider.AddService(typeof(SVsRegisterEditors), registerEditor, false); // Site the package Assert.AreEqual(0, package.SetSite(serviceProvider), "SetSite did not return S_OK"); MethodInfo method = typeof(NuSetPackage).GetMethod("ShowToolWindow", BindingFlags.NonPublic | BindingFlags.Instance); //Invoke thows TargetInvocationException, but we want it's inner Exception thrown by ShowToolWindow, InvalidOperationException. try { object result = method.Invoke(package, new object[] { null, null }); } catch (Exception e) { throw e.InnerException; } }
public void MenuItemCallback() { // Create the package IVsPackage package = new NuSetPackage() as IVsPackage; Assert.IsNotNull(package, "The object does not implement IVsPackage"); // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); // Create a UIShell service mock and proffer the service so that it can called from the MenuItemCallback method BaseMock uishellMock = UIShellServiceMock.GetUiShellInstance(); serviceProvider.AddService(typeof(SVsUIShell), uishellMock, true); // Add site support to register editor factory BaseMock registerEditor = NuSet_UnitTests.EditorTests.RegisterEditorsServiceMock.GetRegisterEditorsInstance(); serviceProvider.AddService(typeof(SVsRegisterEditors), registerEditor, false); // Site the package Assert.AreEqual(0, package.SetSite(serviceProvider), "SetSite did not return S_OK"); //Invoke private method on package class and observe that the method does not throw System.Reflection.MethodInfo info = package.GetType().GetMethod("MenuItemCallback", BindingFlags.Instance | BindingFlags.NonPublic); Assert.IsNotNull(info, "Failed to get the private method MenuItemCallback throug refplection"); info.Invoke(package, new object[] { null, null }); //Clean up services serviceProvider.RemoveService(typeof(SVsUIShell)); }
public void CloseTest() { NuSetPackage package = new NuSetPackage(); EditorFactory editorFactory = new EditorFactory(package); Assert.AreEqual(VSConstants.S_OK, editorFactory.Close(), "Close did no return S_OK"); }
public void SetSite() { // Create the package IVsPackage package = new NuSetPackage() as IVsPackage; Assert.IsNotNull(package, "The object does not implement IVsPackage"); // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); // Add site support to register editor factory BaseMock registerEditor = NuSet_UnitTests.EditorTests.RegisterEditorsServiceMock.GetRegisterEditorsInstance(); serviceProvider.AddService(typeof(SVsRegisterEditors), registerEditor, false); // Site the package Assert.AreEqual(0, package.SetSite(serviceProvider), "SetSite did not return S_OK"); // Unsite the package Assert.AreEqual(0, package.SetSite(null), "SetSite(null) did not return S_OK"); }
public void CheckLogicalView() { NuSetPackage package = new NuSetPackage(); //Create the editor factory EditorFactory editorFactory = new EditorFactory(package); // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); serviceProvider.AddService(typeof(SLocalRegistry), (ILocalRegistry)LocalRegistryServiceMock.GetILocalRegistryInstance(), true); // Site the editor factory Assert.AreEqual(0, editorFactory.SetSite(serviceProvider), "SetSite did not return S_OK"); IntPtr ppunkDocView; IntPtr ppunkDocData; string pbstrEditorCaption = String.Empty; Guid pguidCmdUI = Guid.Empty; int pgrfCDW = 0; Assert.AreEqual(VSConstants.S_OK, editorFactory.CreateEditorInstance(VSConstants.CEF_OPENFILE, null, null, null, 0, IntPtr.Zero, out ppunkDocView, out ppunkDocData, out pbstrEditorCaption, out pguidCmdUI, out pgrfCDW)); //check for successfull creation of editor instance string bstrPhysicalView = string.Empty; Guid refGuidLogicalView = VSConstants.LOGVIEWID_Debugging; Assert.AreEqual(VSConstants.E_NOTIMPL, editorFactory.MapLogicalView(ref refGuidLogicalView, out bstrPhysicalView)); refGuidLogicalView = VSConstants.LOGVIEWID_Code; Assert.AreEqual(VSConstants.E_NOTIMPL, editorFactory.MapLogicalView(ref refGuidLogicalView, out bstrPhysicalView)); refGuidLogicalView = VSConstants.LOGVIEWID_TextView; Assert.AreEqual(VSConstants.S_OK, editorFactory.MapLogicalView(ref refGuidLogicalView, out bstrPhysicalView)); refGuidLogicalView = VSConstants.LOGVIEWID_UserChooseView; Assert.AreEqual(VSConstants.E_NOTIMPL, editorFactory.MapLogicalView(ref refGuidLogicalView, out bstrPhysicalView)); refGuidLogicalView = VSConstants.LOGVIEWID_Primary; Assert.AreEqual(VSConstants.S_OK, editorFactory.MapLogicalView(ref refGuidLogicalView, out bstrPhysicalView)); }
public void ValidateToolWindowShown() { IVsPackage package = new NuSetPackage() as IVsPackage; // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); //Add uishell service that knows how to create a toolwindow BaseMock uiShellService = UIShellServiceMock.GetUiShellInstanceCreateToolWin(); serviceProvider.AddService(typeof(SVsUIShell), uiShellService, false); // Add site support to register editor factory BaseMock registerEditor = NuSet_UnitTests.EditorTests.RegisterEditorsServiceMock.GetRegisterEditorsInstance(); serviceProvider.AddService(typeof(SVsRegisterEditors), registerEditor, false); // Site the package Assert.AreEqual(0, package.SetSite(serviceProvider), "SetSite did not return S_OK"); MethodInfo method = typeof(NuSetPackage).GetMethod("ShowToolWindow", BindingFlags.NonPublic | BindingFlags.Instance); object result = method.Invoke(package, new object[] { null, null }); }
public void InitializeMenuCommand() { // Create the package IVsPackage package = new NuSetPackage() as IVsPackage; Assert.IsNotNull(package, "The object does not implement IVsPackage"); // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); // Add site support to register editor factory BaseMock registerEditor = NuSet_UnitTests.EditorTests.RegisterEditorsServiceMock.GetRegisterEditorsInstance(); serviceProvider.AddService(typeof(SVsRegisterEditors), registerEditor, false); // Site the package Assert.AreEqual(0, package.SetSite(serviceProvider), "SetSite did not return S_OK"); //Verify that the menu command can be found CommandID menuCommandID = new CommandID(ZinkoSoft.NuSet.GuidList.NuSetCommandGuid, (int)ZinkoSoft.NuSet.PkgCmdIDList.nusetCommand); System.Reflection.MethodInfo info = typeof(Package).GetMethod("GetService", BindingFlags.Instance | BindingFlags.NonPublic); Assert.IsNotNull(info); OleMenuCommandService mcs = info.Invoke(package, new object[] { (typeof(IMenuCommandService)) }) as OleMenuCommandService; Assert.IsNotNull(mcs.FindCommand(menuCommandID)); }
/// <summary> /// Initializes a new instance of the <see cref="EditorPane"/> class. /// Constructor that calls the Microsoft.VisualStudio.Shell.WindowPane constructor then /// our initialization functions. /// </summary> /// <param name="package"> /// Our Package instance. /// </param> public EditorPane(NuSetPackage package) : base(null) { this.FileName = string.Empty; this.PrivateInit(package); }
public void CreateInstance() { NuSetPackage package = new NuSetPackage(); EditorFactory editorFactory = new EditorFactory(package); Assert.IsNotNull(editorFactory, "Failed to initialize new instance of EditorFactory."); }
public void DisposeDisposableMembersTest() { NuSetPackage package = new NuSetPackage(); EditorFactory editorFactory = new EditorFactory(package); OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); editorFactory.SetSite(serviceProvider); object service = editorFactory.GetService(typeof(IProfferService)); Assert.IsNotNull(service); editorFactory.Dispose(); //service provider contains no services after this call service = editorFactory.GetService(typeof(IProfferService)); Assert.IsNull(service, "serviceprovider has not beed disposed as expected"); }
/// <summary> /// Initializes a new instance of the <see cref="EditorFactory" /> class. /// </summary> /// <param name="package">The package.</param> public EditorFactory(NuSetPackage package) { Debug.WriteLine(CultureInfo.CurrentCulture.ToString(), "Entering {0} constructor", this); this.editorPackage = package; }
public void IsIVsPackage() { NuSetPackage package = new NuSetPackage(); Assert.IsNotNull(package as IVsPackage, "The object does not implement IVsPackage"); }
public void CreateEditorInstance() { NuSetPackage package = new NuSetPackage(); //Create the editor factory EditorFactory editorFactory = new EditorFactory(package); // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); serviceProvider.AddService(typeof(SLocalRegistry), (ILocalRegistry)LocalRegistryServiceMock.GetILocalRegistryInstance(), true); // Site the editor factory Assert.AreEqual(0, editorFactory.SetSite(serviceProvider), "SetSite did not return S_OK"); IntPtr ppunkDocView; IntPtr ppunkDocData; string pbstrEditorCaption = String.Empty; Guid pguidCmdUI = Guid.Empty; int pgrfCDW = 0; Assert.AreEqual(VSConstants.S_OK, editorFactory.CreateEditorInstance(VSConstants.CEF_OPENFILE, null, null, null, 0, IntPtr.Zero, out ppunkDocView, out ppunkDocData, out pbstrEditorCaption, out pguidCmdUI, out pgrfCDW)); }
/// <summary> /// Initialization routine for the editor. Loads the list of properties for the nuset document /// which will show up in the properties window /// </summary> /// <param name="package"> /// The package /// </param> private void PrivateInit(NuSetPackage package) { this.myPackage = package; this.editorIsLoading = false; this.editorIsGettingCheckoutStatus = false; this.trackSelection = null; Control.CheckForIllegalCrossThreadCalls = false; // Create an ArrayList to store the objects that can be selected var listObjects = new ArrayList(); // Create the object that will show the document's properties // on the properties window. var prop = new EditorProperties(this); listObjects.Add(prop); // Create the SelectionContainer object. this.selectionContainer = new SelectionContainer(true, false) { SelectableObjects = listObjects, SelectedObjects = listObjects }; // Create and initialize the editor var resources = new ComponentResourceManager(typeof(EditorPane)); this.EditorControl = new MyEditor(); resources.ApplyResources(this.EditorControl, "EditorControl", CultureInfo.CurrentUICulture); // Event handlers for macro recording. this.EditorControl.RichTextBoxControl.TextChanged += this.OnTextChange; this.EditorControl.RichTextBoxControl.MouseDown += this.OnMouseClick; this.EditorControl.RichTextBoxControl.SelectionChanged += this.OnSelectionChanged; this.EditorControl.RichTextBoxControl.KeyDown += this.OnKeyDown; // Handle Focus event this.EditorControl.RichTextBoxControl.GotFocus += this.OnGotFocus; // Call the helper function that will do all of the command setup work this.SetupCommands(); }
public void SetSite() { NuSetPackage package = new NuSetPackage(); //Create the editor factory EditorFactory editorFactory = new EditorFactory(package); // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); // Site the editor factory Assert.AreEqual(0, editorFactory.SetSite(serviceProvider), "SetSite did not return S_OK"); }
public void IsIVsEditorFactory() { NuSetPackage package = new NuSetPackage(); EditorFactory editorFactory = new EditorFactory(package); Assert.IsNotNull(editorFactory as IVsEditorFactory, "The object does not implement IVsEditorFactory"); }
public void IsIDisposableTest() { NuSetPackage package = new NuSetPackage(); using (EditorFactory editorFactory = new EditorFactory(package)) { Assert.IsNotNull(editorFactory as IDisposable, "The object does not implement IDisposable interface"); } }
public void DisposeTest() { NuSetPackage package = new NuSetPackage(); EditorFactory editorFactory = new EditorFactory(package); editorFactory.Dispose(); }
public void CreateInstance() { NuSetPackage package = new NuSetPackage(); }