added some development tools
[windows-sources.git] / developer / VSSDK / VisualStudioIntegration / Common / Source / CPP / VSL / MockInterfaces / VSLMockIEnumDebugPortSuppliers2.h
blob3e7a5e15d3b943f98bb7c7e72c0b59475dcf0111
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 IENUMDEBUGPORTSUPPLIERS2_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
15 #define IENUMDEBUGPORTSUPPLIERS2_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
17 #if _MSC_VER > 1000
18 #pragma once
19 #endif
21 #include "msdbg.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 IEnumDebugPortSuppliers2NotImpl :
33 public IEnumDebugPortSuppliers2
36 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IEnumDebugPortSuppliers2NotImpl)
38 public:
40 typedef IEnumDebugPortSuppliers2 Interface;
42 STDMETHOD(Next)(
43 /*[in]*/ ULONG /*celt*/,
44 /*[out,size_is(celt),length_is(*pceltFetched)]*/ IDebugPortSupplier2** /*rgelt*/,
45 /*[in,out]*/ ULONG* /*pceltFetched*/)VSL_STDMETHOD_NOTIMPL
47 STDMETHOD(Skip)(
48 /*[in]*/ ULONG /*celt*/)VSL_STDMETHOD_NOTIMPL
50 STDMETHOD(Reset)()VSL_STDMETHOD_NOTIMPL
52 STDMETHOD(Clone)(
53 /*[out]*/ IEnumDebugPortSuppliers2** /*ppEnum*/)VSL_STDMETHOD_NOTIMPL
55 STDMETHOD(GetCount)(
56 /*[out]*/ ULONG* /*pcelt*/)VSL_STDMETHOD_NOTIMPL
59 class IEnumDebugPortSuppliers2MockImpl :
60 public IEnumDebugPortSuppliers2,
61 public MockBase
64 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IEnumDebugPortSuppliers2MockImpl)
66 public:
68 VSL_DEFINE_MOCK_CLASS_TYPDEFS(IEnumDebugPortSuppliers2MockImpl)
70 typedef IEnumDebugPortSuppliers2 Interface;
71 struct NextValidValues
73 /*[in]*/ ULONG celt;
74 /*[out,size_is(celt),length_is(*pceltFetched)]*/ IDebugPortSupplier2** rgelt;
75 /*[in,out]*/ ULONG* pceltFetched;
76 HRESULT retValue;
79 STDMETHOD(Next)(
80 /*[in]*/ ULONG celt,
81 /*[out,size_is(celt),length_is(*pceltFetched)]*/ IDebugPortSupplier2** rgelt,
82 /*[in,out]*/ ULONG* pceltFetched)
84 VSL_DEFINE_MOCK_METHOD(Next)
86 VSL_CHECK_VALIDVALUE(celt);
88 VSL_SET_VALIDVALUE_INTERFACEARRAY(rgelt, celt, *(validValues.pceltFetched));
90 VSL_SET_VALIDVALUE(pceltFetched);
92 VSL_RETURN_VALIDVALUES();
94 struct SkipValidValues
96 /*[in]*/ ULONG celt;
97 HRESULT retValue;
100 STDMETHOD(Skip)(
101 /*[in]*/ ULONG celt)
103 VSL_DEFINE_MOCK_METHOD(Skip)
105 VSL_CHECK_VALIDVALUE(celt);
107 VSL_RETURN_VALIDVALUES();
109 struct ResetValidValues
111 HRESULT retValue;
114 STDMETHOD(Reset)()
116 VSL_DEFINE_MOCK_METHOD_NOARGS(Reset)
118 VSL_RETURN_VALIDVALUES();
120 struct CloneValidValues
122 /*[out]*/ IEnumDebugPortSuppliers2** ppEnum;
123 HRESULT retValue;
126 STDMETHOD(Clone)(
127 /*[out]*/ IEnumDebugPortSuppliers2** ppEnum)
129 VSL_DEFINE_MOCK_METHOD(Clone)
131 VSL_SET_VALIDVALUE_INTERFACE(ppEnum);
133 VSL_RETURN_VALIDVALUES();
135 struct GetCountValidValues
137 /*[out]*/ ULONG* pcelt;
138 HRESULT retValue;
141 STDMETHOD(GetCount)(
142 /*[out]*/ ULONG* pcelt)
144 VSL_DEFINE_MOCK_METHOD(GetCount)
146 VSL_SET_VALIDVALUE(pcelt);
148 VSL_RETURN_VALIDVALUES();
153 } // namespace VSL
155 #pragma warning(pop)
157 #endif // IENUMDEBUGPORTSUPPLIERS2_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5