added some development tools
[windows-sources.git] / developer / VSSDK / VisualStudioIntegration / Common / Source / CPP / VSL / MockInterfaces / VSLMockIVsBuildMacroInfo.h
blob1705d86806c1df5595db1cc9331d349641860f6d
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 IVSBUILDMACROINFO_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
15 #define IVSBUILDMACROINFO_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 IVsBuildMacroInfoNotImpl :
33 public IVsBuildMacroInfo
36 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsBuildMacroInfoNotImpl)
38 public:
40 typedef IVsBuildMacroInfo Interface;
42 STDMETHOD(GetBuildMacroValue)(
43 /*[in]*/ BSTR /*bstrBuildMacroName*/,
44 /*[out]*/ BSTR* /*pbstrBuildMacroValue*/)VSL_STDMETHOD_NOTIMPL
47 class IVsBuildMacroInfoMockImpl :
48 public IVsBuildMacroInfo,
49 public MockBase
52 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsBuildMacroInfoMockImpl)
54 public:
56 VSL_DEFINE_MOCK_CLASS_TYPDEFS(IVsBuildMacroInfoMockImpl)
58 typedef IVsBuildMacroInfo Interface;
59 struct GetBuildMacroValueValidValues
61 /*[in]*/ BSTR bstrBuildMacroName;
62 /*[out]*/ BSTR* pbstrBuildMacroValue;
63 HRESULT retValue;
66 STDMETHOD(GetBuildMacroValue)(
67 /*[in]*/ BSTR bstrBuildMacroName,
68 /*[out]*/ BSTR* pbstrBuildMacroValue)
70 VSL_DEFINE_MOCK_METHOD(GetBuildMacroValue)
72 VSL_CHECK_VALIDVALUE_BSTR(bstrBuildMacroName);
74 VSL_SET_VALIDVALUE_BSTR(pbstrBuildMacroValue);
76 VSL_RETURN_VALIDVALUES();
81 } // namespace VSL
83 #pragma warning(pop)
85 #endif // IVSBUILDMACROINFO_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5