added some development tools
[windows-sources.git] / developer / VSSDK / VisualStudioIntegration / Common / Source / CPP / VSL / MockInterfaces / VSLMockIVsSettingsReader.h
blobe5e1e3ff76cb47d3f9d387c8155a8adf8f093b2f
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 IVSSETTINGSREADER_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
15 #define IVSSETTINGSREADER_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
17 #if _MSC_VER > 1000
18 #pragma once
19 #endif
21 #include "vsshell80.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 IVsSettingsReaderNotImpl :
33 public IVsSettingsReader
36 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsSettingsReaderNotImpl)
38 public:
40 typedef IVsSettingsReader Interface;
42 STDMETHOD(ReadSettingString)(
43 /*[in]*/ LPCOLESTR /*pszSettingName*/,
44 /*[out,retval]*/ BSTR* /*pbstrSettingValue*/)VSL_STDMETHOD_NOTIMPL
46 STDMETHOD(ReadSettingLong)(
47 /*[in]*/ LPCOLESTR /*pszSettingName*/,
48 /*[out,retval]*/ long* /*plSettingValue*/)VSL_STDMETHOD_NOTIMPL
50 STDMETHOD(ReadSettingBoolean)(
51 /*[in]*/ LPCOLESTR /*pszSettingName*/,
52 /*[out,retval]*/ BOOL* /*pfSettingValue*/)VSL_STDMETHOD_NOTIMPL
54 STDMETHOD(ReadSettingBytes)(
55 /*[in]*/ LPCOLESTR /*pszSettingName*/,
56 /*[in,out]*/ BYTE* /*pSettingValue*/,
57 /*[out]*/ long* /*plDataLength*/,
58 /*[in]*/ long /*lDataMax*/)VSL_STDMETHOD_NOTIMPL
60 STDMETHOD(ReadSettingAttribute)(
61 /*[in]*/ LPCOLESTR /*pszSettingName*/,
62 /*[in]*/ LPCOLESTR /*pszAttributeName*/,
63 /*[out,retval]*/ BSTR* /*pbstrSettingValue*/)VSL_STDMETHOD_NOTIMPL
65 STDMETHOD(ReadSettingXml)(
66 /*[in]*/ LPCOLESTR /*pszSettingName*/,
67 /*[out,retval]*/ IUnknown** /*ppIXMLDOMNode*/)VSL_STDMETHOD_NOTIMPL
69 STDMETHOD(ReadSettingXmlAsString)(
70 /*[in]*/ LPCOLESTR /*pszSettingName*/,
71 /*[out,retval]*/ BSTR* /*pbstrXML*/)VSL_STDMETHOD_NOTIMPL
73 STDMETHOD(ReadCategoryVersion)(
74 /*[out]*/ int* /*pnMajor*/,
75 /*[out]*/ int* /*pnMinor*/,
76 /*[out]*/ int* /*pnBuild*/,
77 /*[out]*/ int* /*pnRevision*/)VSL_STDMETHOD_NOTIMPL
79 STDMETHOD(ReadFileVersion)(
80 /*[out]*/ int* /*pnMajor*/,
81 /*[out]*/ int* /*pnMinor*/,
82 /*[out]*/ int* /*pnBuild*/,
83 /*[out]*/ int* /*pnRevision*/)VSL_STDMETHOD_NOTIMPL
85 STDMETHOD(ReportError)(
86 /*[in]*/ LPCOLESTR /*pszError*/,
87 /*[in]*/ VSSETTINGSERRORTYPES /*dwErrorType*/)VSL_STDMETHOD_NOTIMPL
90 class IVsSettingsReaderMockImpl :
91 public IVsSettingsReader,
92 public MockBase
95 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsSettingsReaderMockImpl)
97 public:
99 VSL_DEFINE_MOCK_CLASS_TYPDEFS(IVsSettingsReaderMockImpl)
101 typedef IVsSettingsReader Interface;
102 struct ReadSettingStringValidValues
104 /*[in]*/ LPCOLESTR pszSettingName;
105 /*[out,retval]*/ BSTR* pbstrSettingValue;
106 HRESULT retValue;
109 STDMETHOD(ReadSettingString)(
110 /*[in]*/ LPCOLESTR pszSettingName,
111 /*[out,retval]*/ BSTR* pbstrSettingValue)
113 VSL_DEFINE_MOCK_METHOD(ReadSettingString)
115 VSL_CHECK_VALIDVALUE_STRINGW(pszSettingName);
117 VSL_SET_VALIDVALUE_BSTR(pbstrSettingValue);
119 VSL_RETURN_VALIDVALUES();
121 struct ReadSettingLongValidValues
123 /*[in]*/ LPCOLESTR pszSettingName;
124 /*[out,retval]*/ long* plSettingValue;
125 HRESULT retValue;
128 STDMETHOD(ReadSettingLong)(
129 /*[in]*/ LPCOLESTR pszSettingName,
130 /*[out,retval]*/ long* plSettingValue)
132 VSL_DEFINE_MOCK_METHOD(ReadSettingLong)
134 VSL_CHECK_VALIDVALUE_STRINGW(pszSettingName);
136 VSL_SET_VALIDVALUE(plSettingValue);
138 VSL_RETURN_VALIDVALUES();
140 struct ReadSettingBooleanValidValues
142 /*[in]*/ LPCOLESTR pszSettingName;
143 /*[out,retval]*/ BOOL* pfSettingValue;
144 HRESULT retValue;
147 STDMETHOD(ReadSettingBoolean)(
148 /*[in]*/ LPCOLESTR pszSettingName,
149 /*[out,retval]*/ BOOL* pfSettingValue)
151 VSL_DEFINE_MOCK_METHOD(ReadSettingBoolean)
153 VSL_CHECK_VALIDVALUE_STRINGW(pszSettingName);
155 VSL_SET_VALIDVALUE(pfSettingValue);
157 VSL_RETURN_VALIDVALUES();
159 struct ReadSettingBytesValidValues
161 /*[in]*/ LPCOLESTR pszSettingName;
162 /*[in,out]*/ BYTE* pSettingValue;
163 /*[out]*/ long* plDataLength;
164 /*[in]*/ long lDataMax;
165 HRESULT retValue;
168 STDMETHOD(ReadSettingBytes)(
169 /*[in]*/ LPCOLESTR pszSettingName,
170 /*[in,out]*/ BYTE* pSettingValue,
171 /*[out]*/ long* plDataLength,
172 /*[in]*/ long lDataMax)
174 VSL_DEFINE_MOCK_METHOD(ReadSettingBytes)
176 VSL_CHECK_VALIDVALUE_STRINGW(pszSettingName);
178 VSL_SET_VALIDVALUE(pSettingValue);
180 VSL_SET_VALIDVALUE(plDataLength);
182 VSL_CHECK_VALIDVALUE(lDataMax);
184 VSL_RETURN_VALIDVALUES();
186 struct ReadSettingAttributeValidValues
188 /*[in]*/ LPCOLESTR pszSettingName;
189 /*[in]*/ LPCOLESTR pszAttributeName;
190 /*[out,retval]*/ BSTR* pbstrSettingValue;
191 HRESULT retValue;
194 STDMETHOD(ReadSettingAttribute)(
195 /*[in]*/ LPCOLESTR pszSettingName,
196 /*[in]*/ LPCOLESTR pszAttributeName,
197 /*[out,retval]*/ BSTR* pbstrSettingValue)
199 VSL_DEFINE_MOCK_METHOD(ReadSettingAttribute)
201 VSL_CHECK_VALIDVALUE_STRINGW(pszSettingName);
203 VSL_CHECK_VALIDVALUE_STRINGW(pszAttributeName);
205 VSL_SET_VALIDVALUE_BSTR(pbstrSettingValue);
207 VSL_RETURN_VALIDVALUES();
209 struct ReadSettingXmlValidValues
211 /*[in]*/ LPCOLESTR pszSettingName;
212 /*[out,retval]*/ IUnknown** ppIXMLDOMNode;
213 HRESULT retValue;
216 STDMETHOD(ReadSettingXml)(
217 /*[in]*/ LPCOLESTR pszSettingName,
218 /*[out,retval]*/ IUnknown** ppIXMLDOMNode)
220 VSL_DEFINE_MOCK_METHOD(ReadSettingXml)
222 VSL_CHECK_VALIDVALUE_STRINGW(pszSettingName);
224 VSL_SET_VALIDVALUE_INTERFACE(ppIXMLDOMNode);
226 VSL_RETURN_VALIDVALUES();
228 struct ReadSettingXmlAsStringValidValues
230 /*[in]*/ LPCOLESTR pszSettingName;
231 /*[out,retval]*/ BSTR* pbstrXML;
232 HRESULT retValue;
235 STDMETHOD(ReadSettingXmlAsString)(
236 /*[in]*/ LPCOLESTR pszSettingName,
237 /*[out,retval]*/ BSTR* pbstrXML)
239 VSL_DEFINE_MOCK_METHOD(ReadSettingXmlAsString)
241 VSL_CHECK_VALIDVALUE_STRINGW(pszSettingName);
243 VSL_SET_VALIDVALUE_BSTR(pbstrXML);
245 VSL_RETURN_VALIDVALUES();
247 struct ReadCategoryVersionValidValues
249 /*[out]*/ int* pnMajor;
250 /*[out]*/ int* pnMinor;
251 /*[out]*/ int* pnBuild;
252 /*[out]*/ int* pnRevision;
253 HRESULT retValue;
256 STDMETHOD(ReadCategoryVersion)(
257 /*[out]*/ int* pnMajor,
258 /*[out]*/ int* pnMinor,
259 /*[out]*/ int* pnBuild,
260 /*[out]*/ int* pnRevision)
262 VSL_DEFINE_MOCK_METHOD(ReadCategoryVersion)
264 VSL_SET_VALIDVALUE(pnMajor);
266 VSL_SET_VALIDVALUE(pnMinor);
268 VSL_SET_VALIDVALUE(pnBuild);
270 VSL_SET_VALIDVALUE(pnRevision);
272 VSL_RETURN_VALIDVALUES();
274 struct ReadFileVersionValidValues
276 /*[out]*/ int* pnMajor;
277 /*[out]*/ int* pnMinor;
278 /*[out]*/ int* pnBuild;
279 /*[out]*/ int* pnRevision;
280 HRESULT retValue;
283 STDMETHOD(ReadFileVersion)(
284 /*[out]*/ int* pnMajor,
285 /*[out]*/ int* pnMinor,
286 /*[out]*/ int* pnBuild,
287 /*[out]*/ int* pnRevision)
289 VSL_DEFINE_MOCK_METHOD(ReadFileVersion)
291 VSL_SET_VALIDVALUE(pnMajor);
293 VSL_SET_VALIDVALUE(pnMinor);
295 VSL_SET_VALIDVALUE(pnBuild);
297 VSL_SET_VALIDVALUE(pnRevision);
299 VSL_RETURN_VALIDVALUES();
301 struct ReportErrorValidValues
303 /*[in]*/ LPCOLESTR pszError;
304 /*[in]*/ VSSETTINGSERRORTYPES dwErrorType;
305 HRESULT retValue;
308 STDMETHOD(ReportError)(
309 /*[in]*/ LPCOLESTR pszError,
310 /*[in]*/ VSSETTINGSERRORTYPES dwErrorType)
312 VSL_DEFINE_MOCK_METHOD(ReportError)
314 VSL_CHECK_VALIDVALUE_STRINGW(pszError);
316 VSL_CHECK_VALIDVALUE(dwErrorType);
318 VSL_RETURN_VALIDVALUES();
323 } // namespace VSL
325 #pragma warning(pop)
327 #endif // IVSSETTINGSREADER_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5