added some development tools
[windows-sources.git] / developer / VSSDK / VisualStudioIntegration / Common / Source / CPP / VSL / MockInterfaces / VSLMockIVsOutputWindow.h
blob32f04aeb8e40697a03389936110f180fd72bcd07
1 /***************************************************************************
3 Copyright (c) Microsoft Corporation. All rights reserved.
4 This code is licensed under the Visual Studio SDK license terms.
5 THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
6 ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
7 IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
8 PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
10 This code is a part of the Visual Studio Library.
12 ***************************************************************************/
14 #ifndef IVSOUTPUTWINDOW_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
15 #define IVSOUTPUTWINDOW_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
17 #if _MSC_VER > 1000
18 #pragma once
19 #endif
21 #include "vsshell.h"
23 #pragma warning(push)
24 #pragma warning(disable : 4510) // default constructor could not be generated
25 #pragma warning(disable : 4610) // can never be instantiated - user defined constructor required
26 #pragma warning(disable : 4512) // assignment operator could not be generated
27 #pragma warning(disable : 6011) // Dereferencing NULL pointer (a NULL derference is just another kind of failure for a unit test
29 namespace VSL
32 class IVsOutputWindowNotImpl :
33 public IVsOutputWindow
36 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsOutputWindowNotImpl)
38 public:
40 typedef IVsOutputWindow Interface;
42 STDMETHOD(GetPane)(
43 /*[in]*/ REFGUID /*rguidPane*/,
44 /*[out]*/ IVsOutputWindowPane** /*ppPane*/)VSL_STDMETHOD_NOTIMPL
46 STDMETHOD(CreatePane)(
47 /*[in]*/ REFGUID /*rguidPane*/,
48 /*[in]*/ LPCOLESTR /*pszPaneName*/,
49 /*[in]*/ BOOL /*fInitVisible*/,
50 /*[in]*/ BOOL /*fClearWithSolution*/)VSL_STDMETHOD_NOTIMPL
52 STDMETHOD(DeletePane)(
53 /*[in]*/ REFGUID /*rguidPane*/)VSL_STDMETHOD_NOTIMPL
56 class IVsOutputWindowMockImpl :
57 public IVsOutputWindow,
58 public MockBase
61 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsOutputWindowMockImpl)
63 public:
65 VSL_DEFINE_MOCK_CLASS_TYPDEFS(IVsOutputWindowMockImpl)
67 typedef IVsOutputWindow Interface;
68 struct GetPaneValidValues
70 /*[in]*/ REFGUID rguidPane;
71 /*[out]*/ IVsOutputWindowPane** ppPane;
72 HRESULT retValue;
75 STDMETHOD(GetPane)(
76 /*[in]*/ REFGUID rguidPane,
77 /*[out]*/ IVsOutputWindowPane** ppPane)
79 VSL_DEFINE_MOCK_METHOD(GetPane)
81 VSL_CHECK_VALIDVALUE(rguidPane);
83 VSL_SET_VALIDVALUE_INTERFACE(ppPane);
85 VSL_RETURN_VALIDVALUES();
87 struct CreatePaneValidValues
89 /*[in]*/ REFGUID rguidPane;
90 /*[in]*/ LPCOLESTR pszPaneName;
91 /*[in]*/ BOOL fInitVisible;
92 /*[in]*/ BOOL fClearWithSolution;
93 HRESULT retValue;
96 STDMETHOD(CreatePane)(
97 /*[in]*/ REFGUID rguidPane,
98 /*[in]*/ LPCOLESTR pszPaneName,
99 /*[in]*/ BOOL fInitVisible,
100 /*[in]*/ BOOL fClearWithSolution)
102 VSL_DEFINE_MOCK_METHOD(CreatePane)
104 VSL_CHECK_VALIDVALUE(rguidPane);
106 VSL_CHECK_VALIDVALUE_STRINGW(pszPaneName);
108 VSL_CHECK_VALIDVALUE(fInitVisible);
110 VSL_CHECK_VALIDVALUE(fClearWithSolution);
112 VSL_RETURN_VALIDVALUES();
114 struct DeletePaneValidValues
116 /*[in]*/ REFGUID rguidPane;
117 HRESULT retValue;
120 STDMETHOD(DeletePane)(
121 /*[in]*/ REFGUID rguidPane)
123 VSL_DEFINE_MOCK_METHOD(DeletePane)
125 VSL_CHECK_VALIDVALUE(rguidPane);
127 VSL_RETURN_VALIDVALUES();
132 } // namespace VSL
134 #pragma warning(pop)
136 #endif // IVSOUTPUTWINDOW_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5