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 IVSWEBPROJECT_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
15 #define IVSWEBPROJECT_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5
21 #include "vsshell80.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 IVsWebProjectNotImpl
:
36 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsWebProjectNotImpl
)
40 typedef IVsWebProject Interface
;
42 STDMETHOD(AddNewWebItem
)(
43 /*[in]*/ VSITEMID
/*itemidLoc*/,
44 /*[in]*/ VSADDITEMOPERATION
/*dwAddItemOperation*/,
45 /*[in]*/ LPCOLESTR
/*pszItemName*/,
46 /*[in]*/ LPCOLESTR
/*pszFileTemplate*/,
47 /*[in]*/ VSADDNEWWEBITEMOPTIONS
/*options*/,
48 /*[in]*/ LPCOLESTR
/*pszSelectedLanguage*/,
49 /*[in]*/ HWND
/*hwndDlgOwner*/,
50 /*[out,retval]*/ VSADDRESULT
* /*pResult*/)VSL_STDMETHOD_NOTIMPL
53 class IVsWebProjectMockImpl
:
58 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsWebProjectMockImpl
)
62 VSL_DEFINE_MOCK_CLASS_TYPDEFS(IVsWebProjectMockImpl
)
64 typedef IVsWebProject Interface
;
65 struct AddNewWebItemValidValues
67 /*[in]*/ VSITEMID itemidLoc
;
68 /*[in]*/ VSADDITEMOPERATION dwAddItemOperation
;
69 /*[in]*/ LPCOLESTR pszItemName
;
70 /*[in]*/ LPCOLESTR pszFileTemplate
;
71 /*[in]*/ VSADDNEWWEBITEMOPTIONS options
;
72 /*[in]*/ LPCOLESTR pszSelectedLanguage
;
73 /*[in]*/ HWND hwndDlgOwner
;
74 /*[out,retval]*/ VSADDRESULT
* pResult
;
78 STDMETHOD(AddNewWebItem
)(
79 /*[in]*/ VSITEMID itemidLoc
,
80 /*[in]*/ VSADDITEMOPERATION dwAddItemOperation
,
81 /*[in]*/ LPCOLESTR pszItemName
,
82 /*[in]*/ LPCOLESTR pszFileTemplate
,
83 /*[in]*/ VSADDNEWWEBITEMOPTIONS options
,
84 /*[in]*/ LPCOLESTR pszSelectedLanguage
,
85 /*[in]*/ HWND hwndDlgOwner
,
86 /*[out,retval]*/ VSADDRESULT
* pResult
)
88 VSL_DEFINE_MOCK_METHOD(AddNewWebItem
)
90 VSL_CHECK_VALIDVALUE(itemidLoc
);
92 VSL_CHECK_VALIDVALUE(dwAddItemOperation
);
94 VSL_CHECK_VALIDVALUE_STRINGW(pszItemName
);
96 VSL_CHECK_VALIDVALUE_STRINGW(pszFileTemplate
);
98 VSL_CHECK_VALIDVALUE(options
);
100 VSL_CHECK_VALIDVALUE_STRINGW(pszSelectedLanguage
);
102 VSL_CHECK_VALIDVALUE(hwndDlgOwner
);
104 VSL_SET_VALIDVALUE(pResult
);
106 VSL_RETURN_VALIDVALUES();
115 #endif // IVSWEBPROJECT_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5