added some development tools
[windows-sources.git] / developer / VSSDK / VisualStudioIntegration / Common / Source / CPP / VSL / MockInterfaces / VSLMockIVsWebProject.h
blob8691c8e64043cd1020c8250c5c49e49f22a598d2
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
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 IVsWebProjectNotImpl :
33 public IVsWebProject
36 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsWebProjectNotImpl)
38 public:
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 :
54 public IVsWebProject,
55 public MockBase
58 VSL_DECLARE_NONINSTANTIABLE_BASE_CLASS(IVsWebProjectMockImpl)
60 public:
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;
75 HRESULT retValue;
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();
111 } // namespace VSL
113 #pragma warning(pop)
115 #endif // IVSWEBPROJECT_H_10C49CA1_2F46_11D3_A504_00C04F5E0BA5