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 IWEBFILECTXSERVICE_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
15 #define IWEBFILECTXSERVICE_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
21 #include "Webapplicationctx.h"
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
32 class IWebFileCtxServiceNotImpl
:
33 public IWebFileCtxService
36 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IWebFileCtxServiceNotImpl
)
40 typedef IWebFileCtxService Interface
;
42 STDMETHOD(AddFileToIntellisense
)(
43 /*[in]*/ LPCWSTR
/*pszFilePath*/,
44 /*[out]*/ VSITEMID
* /*pItemID*/)VSL_STDMETHOD_NOTIMPL
46 STDMETHOD(EnsureFileOpened
)(
47 /*[in]*/ VSITEMID
/*itemid*/,
48 /*[out]*/ IVsWindowFrame
** /*ppFrame*/)VSL_STDMETHOD_NOTIMPL
50 STDMETHOD(RemoveFileFromIntellisense
)(
51 /*[in]*/ LPCWSTR
/*pszFilePath*/)VSL_STDMETHOD_NOTIMPL
53 STDMETHOD(GetWebRootPath
)(
54 /*[out]*/ BSTR
* /*pbstrWebRootPath*/)VSL_STDMETHOD_NOTIMPL
56 STDMETHOD(GetIntellisenseProjectName
)(
57 /*[out]*/ BSTR
* /*pbstrProjectName*/)VSL_STDMETHOD_NOTIMPL
59 STDMETHOD(AddDependentAssemblyFile
)(
60 /*[in]*/ LPCWSTR
/*pszFilePath*/)VSL_STDMETHOD_NOTIMPL
62 STDMETHOD(RemoveDependentAssemblyFile
)(
63 /*[in]*/ LPCWSTR
/*pszFilePath*/)VSL_STDMETHOD_NOTIMPL
65 STDMETHOD(ConvertToAppRelPath
)(
66 /*[in]*/ LPCWSTR
/*pszFilePath*/,
67 /*[out]*/ BSTR
* /*pbstrAppRelPath*/)VSL_STDMETHOD_NOTIMPL
69 STDMETHOD(CBMCallbackActive
)()VSL_STDMETHOD_NOTIMPL
71 STDMETHOD(WaitForIntellisenseReady
)()VSL_STDMETHOD_NOTIMPL
73 STDMETHOD(IsDocumentInProject
)(
74 /*[in]*/ LPCWSTR
/*pszFilePath*/,
75 /*[out]*/ VSITEMID
* /*pItemID*/)VSL_STDMETHOD_NOTIMPL
78 class IWebFileCtxServiceMockImpl
:
79 public IWebFileCtxService
,
83 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IWebFileCtxServiceMockImpl
)
87 VSL_DEFINE_MOCK_CLASS_TYPDEFS(IWebFileCtxServiceMockImpl
)
89 typedef IWebFileCtxService Interface
;
90 struct AddFileToIntellisenseValidValues
92 /*[in]*/ LPCWSTR pszFilePath
;
93 /*[out]*/ VSITEMID
* pItemID
;
97 STDMETHOD(AddFileToIntellisense
)(
98 /*[in]*/ LPCWSTR pszFilePath
,
99 /*[out]*/ VSITEMID
* pItemID
)
101 VSL_DEFINE_MOCK_METHOD(AddFileToIntellisense
)
103 VSL_CHECK_VALIDVALUE_STRINGW(pszFilePath
);
105 VSL_SET_VALIDVALUE(pItemID
);
107 VSL_RETURN_VALIDVALUES();
109 struct EnsureFileOpenedValidValues
111 /*[in]*/ VSITEMID itemid
;
112 /*[out]*/ IVsWindowFrame
** ppFrame
;
116 STDMETHOD(EnsureFileOpened
)(
117 /*[in]*/ VSITEMID itemid
,
118 /*[out]*/ IVsWindowFrame
** ppFrame
)
120 VSL_DEFINE_MOCK_METHOD(EnsureFileOpened
)
122 VSL_CHECK_VALIDVALUE(itemid
);
124 VSL_SET_VALIDVALUE_INTERFACE(ppFrame
);
126 VSL_RETURN_VALIDVALUES();
128 struct RemoveFileFromIntellisenseValidValues
130 /*[in]*/ LPCWSTR pszFilePath
;
134 STDMETHOD(RemoveFileFromIntellisense
)(
135 /*[in]*/ LPCWSTR pszFilePath
)
137 VSL_DEFINE_MOCK_METHOD(RemoveFileFromIntellisense
)
139 VSL_CHECK_VALIDVALUE_STRINGW(pszFilePath
);
141 VSL_RETURN_VALIDVALUES();
143 struct GetWebRootPathValidValues
145 /*[out]*/ BSTR
* pbstrWebRootPath
;
149 STDMETHOD(GetWebRootPath
)(
150 /*[out]*/ BSTR
* pbstrWebRootPath
)
152 VSL_DEFINE_MOCK_METHOD(GetWebRootPath
)
154 VSL_SET_VALIDVALUE_BSTR(pbstrWebRootPath
);
156 VSL_RETURN_VALIDVALUES();
158 struct GetIntellisenseProjectNameValidValues
160 /*[out]*/ BSTR
* pbstrProjectName
;
164 STDMETHOD(GetIntellisenseProjectName
)(
165 /*[out]*/ BSTR
* pbstrProjectName
)
167 VSL_DEFINE_MOCK_METHOD(GetIntellisenseProjectName
)
169 VSL_SET_VALIDVALUE_BSTR(pbstrProjectName
);
171 VSL_RETURN_VALIDVALUES();
173 struct AddDependentAssemblyFileValidValues
175 /*[in]*/ LPCWSTR pszFilePath
;
179 STDMETHOD(AddDependentAssemblyFile
)(
180 /*[in]*/ LPCWSTR pszFilePath
)
182 VSL_DEFINE_MOCK_METHOD(AddDependentAssemblyFile
)
184 VSL_CHECK_VALIDVALUE_STRINGW(pszFilePath
);
186 VSL_RETURN_VALIDVALUES();
188 struct RemoveDependentAssemblyFileValidValues
190 /*[in]*/ LPCWSTR pszFilePath
;
194 STDMETHOD(RemoveDependentAssemblyFile
)(
195 /*[in]*/ LPCWSTR pszFilePath
)
197 VSL_DEFINE_MOCK_METHOD(RemoveDependentAssemblyFile
)
199 VSL_CHECK_VALIDVALUE_STRINGW(pszFilePath
);
201 VSL_RETURN_VALIDVALUES();
203 struct ConvertToAppRelPathValidValues
205 /*[in]*/ LPCWSTR pszFilePath
;
206 /*[out]*/ BSTR
* pbstrAppRelPath
;
210 STDMETHOD(ConvertToAppRelPath
)(
211 /*[in]*/ LPCWSTR pszFilePath
,
212 /*[out]*/ BSTR
* pbstrAppRelPath
)
214 VSL_DEFINE_MOCK_METHOD(ConvertToAppRelPath
)
216 VSL_CHECK_VALIDVALUE_STRINGW(pszFilePath
);
218 VSL_SET_VALIDVALUE_BSTR(pbstrAppRelPath
);
220 VSL_RETURN_VALIDVALUES();
222 struct CBMCallbackActiveValidValues
227 STDMETHOD(CBMCallbackActive
)()
229 VSL_DEFINE_MOCK_METHOD_NOARGS(CBMCallbackActive
)
231 VSL_RETURN_VALIDVALUES();
233 struct WaitForIntellisenseReadyValidValues
238 STDMETHOD(WaitForIntellisenseReady
)()
240 VSL_DEFINE_MOCK_METHOD_NOARGS(WaitForIntellisenseReady
)
242 VSL_RETURN_VALIDVALUES();
244 struct IsDocumentInProjectValidValues
246 /*[in]*/ LPCWSTR pszFilePath
;
247 /*[out]*/ VSITEMID
* pItemID
;
251 STDMETHOD(IsDocumentInProject
)(
252 /*[in]*/ LPCWSTR pszFilePath
,
253 /*[out]*/ VSITEMID
* pItemID
)
255 VSL_DEFINE_MOCK_METHOD(IsDocumentInProject
)
257 VSL_CHECK_VALIDVALUE_STRINGW(pszFilePath
);
259 VSL_SET_VALIDVALUE(pItemID
);
261 VSL_RETURN_VALIDVALUES();
270 #endif // IWEBFILECTXSERVICE_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5