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 IVSEXPANSIONSESSION_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
15 #define IVSEXPANSIONSESSION_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
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 IVsExpansionSessionNotImpl
:
33 public IVsExpansionSession
36 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsExpansionSessionNotImpl
)
40 typedef IVsExpansionSession Interface
;
42 STDMETHOD(EndCurrentExpansion
)(
43 /*[in]*/ BOOL
/*fLeaveCaret*/)VSL_STDMETHOD_NOTIMPL
45 STDMETHOD(GoToNextExpansionField
)(
46 /*[in]*/ BOOL
/*fCommitIfLast*/)VSL_STDMETHOD_NOTIMPL
48 STDMETHOD(GoToPreviousExpansionField
)()VSL_STDMETHOD_NOTIMPL
50 STDMETHOD(GetFieldValue
)(
51 /*[in]*/ BSTR
/*bstrFieldName*/,
52 /*[out]*/ BSTR
* /*pbstrValue*/)VSL_STDMETHOD_NOTIMPL
54 STDMETHOD(SetFieldDefault
)(
55 /*[in]*/ BSTR
/*bstrFieldName*/,
56 /*[in]*/ BSTR
/*bstrNewValue*/)VSL_STDMETHOD_NOTIMPL
58 STDMETHOD(GetFieldSpan
)(
59 /*[in]*/ BSTR
/*bstrField*/,
60 /*[out]*/ TextSpan
* /*ptsSpan*/)VSL_STDMETHOD_NOTIMPL
62 STDMETHOD(GetHeaderNode
)(
63 /*[in]*/ BSTR
/*bstrNode*/,
64 /*[out]*/ IXMLDOMNode
** /*pNode*/)VSL_STDMETHOD_NOTIMPL
66 STDMETHOD(GetDeclarationNode
)(
67 /*[in]*/ BSTR
/*bstrNode*/,
68 /*[out]*/ IXMLDOMNode
** /*pNode*/)VSL_STDMETHOD_NOTIMPL
70 STDMETHOD(GetSnippetNode
)(
71 /*[in]*/ BSTR
/*bstrNode*/,
72 /*[out]*/ IXMLDOMNode
** /*pNode*/)VSL_STDMETHOD_NOTIMPL
74 STDMETHOD(GetSnippetSpan
)(
75 /*[out]*/ TextSpan
* /*pts*/)VSL_STDMETHOD_NOTIMPL
77 STDMETHOD(SetEndSpan
)(
78 /*[in]*/ TextSpan
/*ts*/)VSL_STDMETHOD_NOTIMPL
80 STDMETHOD(GetEndSpan
)(
81 /*[out]*/ TextSpan
* /*pts*/)VSL_STDMETHOD_NOTIMPL
84 class IVsExpansionSessionMockImpl
:
85 public IVsExpansionSession
,
89 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsExpansionSessionMockImpl
)
93 VSL_DEFINE_MOCK_CLASS_TYPDEFS(IVsExpansionSessionMockImpl
)
95 typedef IVsExpansionSession Interface
;
96 struct EndCurrentExpansionValidValues
98 /*[in]*/ BOOL fLeaveCaret
;
102 STDMETHOD(EndCurrentExpansion
)(
103 /*[in]*/ BOOL fLeaveCaret
)
105 VSL_DEFINE_MOCK_METHOD(EndCurrentExpansion
)
107 VSL_CHECK_VALIDVALUE(fLeaveCaret
);
109 VSL_RETURN_VALIDVALUES();
111 struct GoToNextExpansionFieldValidValues
113 /*[in]*/ BOOL fCommitIfLast
;
117 STDMETHOD(GoToNextExpansionField
)(
118 /*[in]*/ BOOL fCommitIfLast
)
120 VSL_DEFINE_MOCK_METHOD(GoToNextExpansionField
)
122 VSL_CHECK_VALIDVALUE(fCommitIfLast
);
124 VSL_RETURN_VALIDVALUES();
126 struct GoToPreviousExpansionFieldValidValues
131 STDMETHOD(GoToPreviousExpansionField
)()
133 VSL_DEFINE_MOCK_METHOD_NOARGS(GoToPreviousExpansionField
)
135 VSL_RETURN_VALIDVALUES();
137 struct GetFieldValueValidValues
139 /*[in]*/ BSTR bstrFieldName
;
140 /*[out]*/ BSTR
* pbstrValue
;
144 STDMETHOD(GetFieldValue
)(
145 /*[in]*/ BSTR bstrFieldName
,
146 /*[out]*/ BSTR
* pbstrValue
)
148 VSL_DEFINE_MOCK_METHOD(GetFieldValue
)
150 VSL_CHECK_VALIDVALUE_BSTR(bstrFieldName
);
152 VSL_SET_VALIDVALUE_BSTR(pbstrValue
);
154 VSL_RETURN_VALIDVALUES();
156 struct SetFieldDefaultValidValues
158 /*[in]*/ BSTR bstrFieldName
;
159 /*[in]*/ BSTR bstrNewValue
;
163 STDMETHOD(SetFieldDefault
)(
164 /*[in]*/ BSTR bstrFieldName
,
165 /*[in]*/ BSTR bstrNewValue
)
167 VSL_DEFINE_MOCK_METHOD(SetFieldDefault
)
169 VSL_CHECK_VALIDVALUE_BSTR(bstrFieldName
);
171 VSL_CHECK_VALIDVALUE_BSTR(bstrNewValue
);
173 VSL_RETURN_VALIDVALUES();
175 struct GetFieldSpanValidValues
177 /*[in]*/ BSTR bstrField
;
178 /*[out]*/ TextSpan
* ptsSpan
;
182 STDMETHOD(GetFieldSpan
)(
183 /*[in]*/ BSTR bstrField
,
184 /*[out]*/ TextSpan
* ptsSpan
)
186 VSL_DEFINE_MOCK_METHOD(GetFieldSpan
)
188 VSL_CHECK_VALIDVALUE_BSTR(bstrField
);
190 VSL_SET_VALIDVALUE(ptsSpan
);
192 VSL_RETURN_VALIDVALUES();
194 struct GetHeaderNodeValidValues
196 /*[in]*/ BSTR bstrNode
;
197 /*[out]*/ IXMLDOMNode
** pNode
;
201 STDMETHOD(GetHeaderNode
)(
202 /*[in]*/ BSTR bstrNode
,
203 /*[out]*/ IXMLDOMNode
** pNode
)
205 VSL_DEFINE_MOCK_METHOD(GetHeaderNode
)
207 VSL_CHECK_VALIDVALUE_BSTR(bstrNode
);
209 VSL_SET_VALIDVALUE_INTERFACE(pNode
);
211 VSL_RETURN_VALIDVALUES();
213 struct GetDeclarationNodeValidValues
215 /*[in]*/ BSTR bstrNode
;
216 /*[out]*/ IXMLDOMNode
** pNode
;
220 STDMETHOD(GetDeclarationNode
)(
221 /*[in]*/ BSTR bstrNode
,
222 /*[out]*/ IXMLDOMNode
** pNode
)
224 VSL_DEFINE_MOCK_METHOD(GetDeclarationNode
)
226 VSL_CHECK_VALIDVALUE_BSTR(bstrNode
);
228 VSL_SET_VALIDVALUE_INTERFACE(pNode
);
230 VSL_RETURN_VALIDVALUES();
232 struct GetSnippetNodeValidValues
234 /*[in]*/ BSTR bstrNode
;
235 /*[out]*/ IXMLDOMNode
** pNode
;
239 STDMETHOD(GetSnippetNode
)(
240 /*[in]*/ BSTR bstrNode
,
241 /*[out]*/ IXMLDOMNode
** pNode
)
243 VSL_DEFINE_MOCK_METHOD(GetSnippetNode
)
245 VSL_CHECK_VALIDVALUE_BSTR(bstrNode
);
247 VSL_SET_VALIDVALUE_INTERFACE(pNode
);
249 VSL_RETURN_VALIDVALUES();
251 struct GetSnippetSpanValidValues
253 /*[out]*/ TextSpan
* pts
;
257 STDMETHOD(GetSnippetSpan
)(
258 /*[out]*/ TextSpan
* pts
)
260 VSL_DEFINE_MOCK_METHOD(GetSnippetSpan
)
262 VSL_SET_VALIDVALUE(pts
);
264 VSL_RETURN_VALIDVALUES();
266 struct SetEndSpanValidValues
268 /*[in]*/ TextSpan ts
;
272 STDMETHOD(SetEndSpan
)(
273 /*[in]*/ TextSpan ts
)
275 VSL_DEFINE_MOCK_METHOD(SetEndSpan
)
277 VSL_CHECK_VALIDVALUE(ts
);
279 VSL_RETURN_VALIDVALUES();
281 struct GetEndSpanValidValues
283 /*[out]*/ TextSpan
* pts
;
287 STDMETHOD(GetEndSpan
)(
288 /*[out]*/ TextSpan
* pts
)
290 VSL_DEFINE_MOCK_METHOD(GetEndSpan
)
292 VSL_SET_VALIDVALUE(pts
);
294 VSL_RETURN_VALIDVALUES();
303 #endif // IVSEXPANSIONSESSION_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5