mirror of
				https://bitbucket.org/chromiumembedded/cef
				synced 2025-06-05 21:39:12 +02:00 
			
		
		
		
	
		
			
				
	
	
		
			809 lines
		
	
	
		
			20 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			809 lines
		
	
	
		
			20 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| // Copyright (c) 2015 Marshall A. Greenblatt. All rights reserved.
 | |
| //
 | |
| // Redistribution and use in source and binary forms, with or without
 | |
| // modification, are permitted provided that the following conditions are
 | |
| // met:
 | |
| //
 | |
| //    * Redistributions of source code must retain the above copyright
 | |
| // notice, this list of conditions and the following disclaimer.
 | |
| //    * Redistributions in binary form must reproduce the above
 | |
| // copyright notice, this list of conditions and the following disclaimer
 | |
| // in the documentation and/or other materials provided with the
 | |
| // distribution.
 | |
| //    * Neither the name of Google Inc. nor the name Chromium Embedded
 | |
| // Framework nor the names of its contributors may be used to endorse
 | |
| // or promote products derived from this software without specific prior
 | |
| // written permission.
 | |
| //
 | |
| // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 | |
| // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 | |
| // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 | |
| // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 | |
| // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 | |
| // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 | |
| // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 | |
| // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 | |
| // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 | |
| // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 | |
| // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 | |
| //
 | |
| // ---------------------------------------------------------------------------
 | |
| //
 | |
| // The contents of this file must follow a specific format in order to
 | |
| // support the CEF translator tool. See the translator.README.txt file in the
 | |
| // tools directory for more information.
 | |
| //
 | |
| // THIS FILE IS FOR TESTING PURPOSES ONLY.
 | |
| //
 | |
| // The APIs defined in this file are for testing purposes only. They should only
 | |
| // be included from unit test targets.
 | |
| //
 | |
| 
 | |
| #ifndef CEF_INCLUDE_TEST_CEF_TEST_H_
 | |
| #define CEF_INCLUDE_TEST_CEF_TEST_H_
 | |
| #pragma once
 | |
| 
 | |
| #if !defined(BUILDING_CEF_SHARED) && !defined(WRAPPING_CEF_SHARED) && \
 | |
|     !defined(UNIT_TEST)
 | |
| #error This file can be included for unit tests only
 | |
| #endif
 | |
| 
 | |
| #include <map>
 | |
| #include <vector>
 | |
| 
 | |
| #include "include/cef_base.h"
 | |
| 
 | |
| class CefTranslatorTestRefPtrClient;
 | |
| class CefTranslatorTestRefPtrClientChild;
 | |
| class CefTranslatorTestRefPtrLibrary;
 | |
| class CefTranslatorTestRefPtrLibraryChild;
 | |
| class CefTranslatorTestScopedClient;
 | |
| class CefTranslatorTestScopedClientChild;
 | |
| class CefTranslatorTestScopedLibrary;
 | |
| class CefTranslatorTestScopedLibraryChild;
 | |
| 
 | |
| // Test values.
 | |
| #define TEST_INT_VAL 5
 | |
| #define TEST_INT_VAL2 60
 | |
| #define TEST_BOOL_VAL true
 | |
| #define TEST_DOUBLE_VAL 4.543
 | |
| #define TEST_LONG_VAL -65
 | |
| #define TEST_SIZET_VAL 3U
 | |
| #define TEST_STRING_VAL "My test string"
 | |
| #define TEST_STRING_VAL2 "My 2nd test string"
 | |
| #define TEST_STRING_VAL3 "My 3rd test string"
 | |
| #define TEST_STRING_KEY "key0"
 | |
| #define TEST_STRING_KEY2 "key1"
 | |
| #define TEST_STRING_KEY3 "key2"
 | |
| #define TEST_X_VAL 44
 | |
| #define TEST_Y_VAL 754
 | |
| #define TEST_X_VAL2 900
 | |
| #define TEST_Y_VAL2 300
 | |
| 
 | |
| ///
 | |
| // Class for testing all of the possible data transfer types.
 | |
| ///
 | |
| /*--cef(source=library)--*/
 | |
| class CefTranslatorTest : public CefBaseRefCounted {
 | |
|  public:
 | |
|   ///
 | |
|   // Create the test object.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   static CefRefPtr<CefTranslatorTest> Create();
 | |
| 
 | |
|   // PRIMITIVE VALUES
 | |
| 
 | |
|   ///
 | |
|   // Return a void value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual void GetVoid() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return a bool value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool GetBool() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return an int value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetInt() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return a double value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual double GetDouble() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return a long value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual long GetLong() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return a size_t value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual size_t GetSizet() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a void value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetVoid() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a bool value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetBool(bool val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set an int value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetInt(int val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a double value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetDouble(double val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a long value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetLong(long val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a size_t value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetSizet(size_t val) = 0;
 | |
| 
 | |
|   // PRIMITIVE LIST VALUES
 | |
| 
 | |
|   // Test both with and without a typedef.
 | |
|   typedef std::vector<int> IntList;
 | |
| 
 | |
|   ///
 | |
|   // Set a int list value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetIntList(const std::vector<int>& val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return an int list value by out-param.
 | |
|   ///
 | |
|   /*--cef(count_func=val:GetIntListSize)--*/
 | |
|   virtual bool GetIntListByRef(IntList& val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return the number of points that will be output above.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual size_t GetIntListSize() = 0;
 | |
| 
 | |
|   // STRING VALUES
 | |
| 
 | |
|   ///
 | |
|   // Return a string value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefString GetString() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a string value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetString(const CefString& val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return a string value by out-param.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual void GetStringByRef(CefString& val) = 0;
 | |
| 
 | |
|   // STRING LIST VALUES
 | |
| 
 | |
|   // Test both with and without a typedef.
 | |
|   typedef std::vector<CefString> StringList;
 | |
| 
 | |
|   ///
 | |
|   // Set a string list value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetStringList(const std::vector<CefString>& val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return a string list value by out-param.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool GetStringListByRef(StringList& val) = 0;
 | |
| 
 | |
|   // STRING MAP VALUES
 | |
| 
 | |
|   // Test both with and without a typedef.
 | |
|   typedef std::map<CefString, CefString> StringMap;
 | |
| 
 | |
|   ///
 | |
|   // Set a string map value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetStringMap(const StringMap& val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return a string map value by out-param.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool GetStringMapByRef(std::map<CefString, CefString>& val) = 0;
 | |
| 
 | |
|   // STRING MULTIMAP VALUES
 | |
| 
 | |
|   // Test both with and without a typedef.
 | |
|   typedef std::multimap<CefString, CefString> StringMultimap;
 | |
| 
 | |
|   ///
 | |
|   // Set a string multimap value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetStringMultimap(
 | |
|       const std::multimap<CefString, CefString>& val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return a string multimap value by out-param.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool GetStringMultimapByRef(StringMultimap& val) = 0;
 | |
| 
 | |
|   // STRUCT VALUES
 | |
| 
 | |
|   ///
 | |
|   // Return a point value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefPoint GetPoint() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a point value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetPoint(const CefPoint& val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return a point value by out-param.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual void GetPointByRef(CefPoint& val) = 0;
 | |
| 
 | |
|   // STRUCT LIST VALUES
 | |
| 
 | |
|   // Test both with and without a typedef.
 | |
|   typedef std::vector<CefPoint> PointList;
 | |
| 
 | |
|   ///
 | |
|   // Set a point list vlaue.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetPointList(const std::vector<CefPoint>& val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return a point list value by out-param.
 | |
|   ///
 | |
|   /*--cef(count_func=val:GetPointListSize)--*/
 | |
|   virtual bool GetPointListByRef(PointList& val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return the number of points that will be output above.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual size_t GetPointListSize() = 0;
 | |
| 
 | |
|   // LIBRARY-SIDE REFPTR VALUES
 | |
| 
 | |
|   ///
 | |
|   // Return an new library-side object.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefRefPtr<CefTranslatorTestRefPtrLibrary> GetRefPtrLibrary(
 | |
|       int val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set an object. Returns the value from
 | |
|   // CefTranslatorTestRefPtrLibrary::GetValue().
 | |
|   // This tests input and execution of a library-side object type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetRefPtrLibrary(
 | |
|       CefRefPtr<CefTranslatorTestRefPtrLibrary> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set an object. Returns the object passed in. This tests input and output
 | |
|   // of a library-side object type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefRefPtr<CefTranslatorTestRefPtrLibrary> SetRefPtrLibraryAndReturn(
 | |
|       CefRefPtr<CefTranslatorTestRefPtrLibrary> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a child object. Returns the value from
 | |
|   // CefTranslatorTestRefPtrLibrary::GetValue(). This tests input of a library-
 | |
|   // side child object type and execution as the parent type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetChildRefPtrLibrary(
 | |
|       CefRefPtr<CefTranslatorTestRefPtrLibraryChild> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a child object. Returns the object as the parent type. This tests input
 | |
|   // of a library-side child object type and return as the parent type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefRefPtr<CefTranslatorTestRefPtrLibrary>
 | |
|   SetChildRefPtrLibraryAndReturnParent(
 | |
|       CefRefPtr<CefTranslatorTestRefPtrLibraryChild> val) = 0;
 | |
| 
 | |
|   // LIBRARY-SIDE REFPTR LIST VALUES
 | |
| 
 | |
|   // Test both with and without a typedef.
 | |
|   typedef std::vector<CefRefPtr<CefTranslatorTestRefPtrLibrary>>
 | |
|       RefPtrLibraryList;
 | |
| 
 | |
|   ///
 | |
|   // Set an object list vlaue.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetRefPtrLibraryList(
 | |
|       const std::vector<CefRefPtr<CefTranslatorTestRefPtrLibrary>>& val,
 | |
|       int val1,
 | |
|       int val2) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return an object list value by out-param.
 | |
|   ///
 | |
|   /*--cef(count_func=val:GetRefPtrLibraryListSize)--*/
 | |
|   virtual bool GetRefPtrLibraryListByRef(RefPtrLibraryList& val,
 | |
|                                          int val1,
 | |
|                                          int val2) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return the number of object that will be output above.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual size_t GetRefPtrLibraryListSize() = 0;
 | |
| 
 | |
|   // CLIENT-SIDE REFPTR VALUES
 | |
| 
 | |
|   ///
 | |
|   // Set an object. Returns the value from
 | |
|   // CefTranslatorTestRefPtrClient::GetValue().
 | |
|   // This tests input and execution of a client-side object type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetRefPtrClient(CefRefPtr<CefTranslatorTestRefPtrClient> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set an object. Returns the handler passed in. This tests input and output
 | |
|   // of a client-side object type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefRefPtr<CefTranslatorTestRefPtrClient> SetRefPtrClientAndReturn(
 | |
|       CefRefPtr<CefTranslatorTestRefPtrClient> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a child object. Returns the value from
 | |
|   // CefTranslatorTestRefPtrClient::GetValue(). This tests input of a client-
 | |
|   // side child object type and execution as the parent type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetChildRefPtrClient(
 | |
|       CefRefPtr<CefTranslatorTestRefPtrClientChild> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a child object. Returns the object as the parent type. This tests
 | |
|   // input of a client-side child object type and return as the parent type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefRefPtr<CefTranslatorTestRefPtrClient>
 | |
|   SetChildRefPtrClientAndReturnParent(
 | |
|       CefRefPtr<CefTranslatorTestRefPtrClientChild> val) = 0;
 | |
| 
 | |
|   // CLIENT-SIDE REFPTR LIST VALUES
 | |
| 
 | |
|   // Test both with and without a typedef.
 | |
|   typedef std::vector<CefRefPtr<CefTranslatorTestRefPtrClient>>
 | |
|       RefPtrClientList;
 | |
| 
 | |
|   ///
 | |
|   // Set an object list vlaue.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetRefPtrClientList(
 | |
|       const std::vector<CefRefPtr<CefTranslatorTestRefPtrClient>>& val,
 | |
|       int val1,
 | |
|       int val2) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return an object list value by out-param.
 | |
|   ///
 | |
|   /*--cef(count_func=val:GetRefPtrLibraryListSize)--*/
 | |
|   virtual bool GetRefPtrClientListByRef(
 | |
|       RefPtrClientList& val,
 | |
|       CefRefPtr<CefTranslatorTestRefPtrClient> val1,
 | |
|       CefRefPtr<CefTranslatorTestRefPtrClient> val2) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Return the number of object that will be output above.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual size_t GetRefPtrClientListSize() = 0;
 | |
| 
 | |
|   // LIBRARY-SIDE OWNPTR VALUES
 | |
| 
 | |
|   ///
 | |
|   // Return an new library-side object.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefOwnPtr<CefTranslatorTestScopedLibrary> GetOwnPtrLibrary(
 | |
|       int val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set an object. Returns the value from
 | |
|   // CefTranslatorTestScopedLibrary::GetValue().
 | |
|   // This tests input and execution of a library-side object type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetOwnPtrLibrary(
 | |
|       CefOwnPtr<CefTranslatorTestScopedLibrary> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set an object. Returns the object passed in. This tests input and output
 | |
|   // of a library-side object type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefOwnPtr<CefTranslatorTestScopedLibrary> SetOwnPtrLibraryAndReturn(
 | |
|       CefOwnPtr<CefTranslatorTestScopedLibrary> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a child object. Returns the value from
 | |
|   // CefTranslatorTestScopedLibrary::GetValue(). This tests input of a library-
 | |
|   // side child object type and execution as the parent type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetChildOwnPtrLibrary(
 | |
|       CefOwnPtr<CefTranslatorTestScopedLibraryChild> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a child object. Returns the object as the parent type. This tests input
 | |
|   // of a library-side child object type and return as the parent type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefOwnPtr<CefTranslatorTestScopedLibrary>
 | |
|   SetChildOwnPtrLibraryAndReturnParent(
 | |
|       CefOwnPtr<CefTranslatorTestScopedLibraryChild> val) = 0;
 | |
| 
 | |
|   // CLIENT-SIDE OWNPTR VALUES
 | |
| 
 | |
|   ///
 | |
|   // Set an object. Returns the value from
 | |
|   // CefTranslatorTestScopedClient::GetValue().
 | |
|   // This tests input and execution of a client-side object type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetOwnPtrClient(CefOwnPtr<CefTranslatorTestScopedClient> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set an object. Returns the handler passed in. This tests input and output
 | |
|   // of a client-side object type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefOwnPtr<CefTranslatorTestScopedClient> SetOwnPtrClientAndReturn(
 | |
|       CefOwnPtr<CefTranslatorTestScopedClient> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a child object. Returns the value from
 | |
|   // CefTranslatorTestScopedClient::GetValue(). This tests input of a client-
 | |
|   // side child object type and execution as the parent type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetChildOwnPtrClient(
 | |
|       CefOwnPtr<CefTranslatorTestScopedClientChild> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a child object. Returns the object as the parent type. This tests
 | |
|   // input of a client-side child object type and return as the parent type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual CefOwnPtr<CefTranslatorTestScopedClient>
 | |
|   SetChildOwnPtrClientAndReturnParent(
 | |
|       CefOwnPtr<CefTranslatorTestScopedClientChild> val) = 0;
 | |
| 
 | |
|   // LIBRARY-SIDE RAWPTR VALUES
 | |
| 
 | |
|   ///
 | |
|   // Set an object. Returns the value from
 | |
|   // CefTranslatorTestScopedLibrary::GetValue().
 | |
|   // This tests input and execution of a library-side object type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetRawPtrLibrary(
 | |
|       CefRawPtr<CefTranslatorTestScopedLibrary> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a child object. Returns the value from
 | |
|   // CefTranslatorTestScopedLibrary::GetValue(). This tests input of a library-
 | |
|   // side child object type and execution as the parent type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetChildRawPtrLibrary(
 | |
|       CefRawPtr<CefTranslatorTestScopedLibraryChild> val) = 0;
 | |
| 
 | |
|   // LIBRARY-SIDE RAWPTR LIST VALUES
 | |
| 
 | |
|   // Test both with and without a typedef.
 | |
|   typedef std::vector<CefRawPtr<CefTranslatorTestScopedLibrary>>
 | |
|       RawPtrLibraryList;
 | |
| 
 | |
|   ///
 | |
|   // Set an object list vlaue.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetRawPtrLibraryList(
 | |
|       const std::vector<CefRawPtr<CefTranslatorTestScopedLibrary>>& val,
 | |
|       int val1,
 | |
|       int val2) = 0;
 | |
| 
 | |
|   // CLIENT-SIDE RAWPTR VALUES
 | |
| 
 | |
|   ///
 | |
|   // Set an object. Returns the value from
 | |
|   // CefTranslatorTestScopedClient::GetValue().
 | |
|   // This tests input and execution of a client-side object type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetRawPtrClient(CefRawPtr<CefTranslatorTestScopedClient> val) = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a child object. Returns the value from
 | |
|   // CefTranslatorTestScopedClient::GetValue(). This tests input of a client-
 | |
|   // side child object type and execution as the parent type.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int SetChildRawPtrClient(
 | |
|       CefRawPtr<CefTranslatorTestScopedClientChild> val) = 0;
 | |
| 
 | |
|   // CLIENT-SIDE RAWPTR LIST VALUES
 | |
| 
 | |
|   // Test both with and without a typedef.
 | |
|   typedef std::vector<CefRawPtr<CefTranslatorTestScopedClient>>
 | |
|       RawPtrClientList;
 | |
| 
 | |
|   ///
 | |
|   // Set an object list vlaue.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual bool SetRawPtrClientList(
 | |
|       const std::vector<CefRawPtr<CefTranslatorTestScopedClient>>& val,
 | |
|       int val1,
 | |
|       int val2) = 0;
 | |
| };
 | |
| 
 | |
| ///
 | |
| // Library-side test object for RefPtr.
 | |
| ///
 | |
| /*--cef(source=library)--*/
 | |
| class CefTranslatorTestRefPtrLibrary : public CefBaseRefCounted {
 | |
|  public:
 | |
|   ///
 | |
|   // Create the test object.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   static CefRefPtr<CefTranslatorTestRefPtrLibrary> Create(int value);
 | |
| 
 | |
|   ///
 | |
|   // Return a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetValue() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual void SetValue(int value) = 0;
 | |
| };
 | |
| 
 | |
| ///
 | |
| // Library-side child test object for RefPtr.
 | |
| ///
 | |
| /*--cef(source=library)--*/
 | |
| class CefTranslatorTestRefPtrLibraryChild
 | |
|     : public CefTranslatorTestRefPtrLibrary {
 | |
|  public:
 | |
|   ///
 | |
|   // Create the test object.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   static CefRefPtr<CefTranslatorTestRefPtrLibraryChild> Create(int value,
 | |
|                                                                int other_value);
 | |
| 
 | |
|   ///
 | |
|   // Return a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetOtherValue() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual void SetOtherValue(int value) = 0;
 | |
| };
 | |
| 
 | |
| ///
 | |
| // Another library-side child test object for RefPtr.
 | |
| ///
 | |
| /*--cef(source=library)--*/
 | |
| class CefTranslatorTestRefPtrLibraryChildChild
 | |
|     : public CefTranslatorTestRefPtrLibraryChild {
 | |
|  public:
 | |
|   ///
 | |
|   // Create the test object.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   static CefRefPtr<CefTranslatorTestRefPtrLibraryChildChild>
 | |
|   Create(int value, int other_value, int other_other_value);
 | |
| 
 | |
|   ///
 | |
|   // Return a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetOtherOtherValue() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual void SetOtherOtherValue(int value) = 0;
 | |
| };
 | |
| 
 | |
| ///
 | |
| // Client-side test object for RefPtr.
 | |
| ///
 | |
| /*--cef(source=client)--*/
 | |
| class CefTranslatorTestRefPtrClient : public virtual CefBaseRefCounted {
 | |
|  public:
 | |
|   ///
 | |
|   // Return a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetValue() = 0;
 | |
| };
 | |
| 
 | |
| ///
 | |
| // Client-side child test object for RefPtr.
 | |
| ///
 | |
| /*--cef(source=client)--*/
 | |
| class CefTranslatorTestRefPtrClientChild
 | |
|     : public CefTranslatorTestRefPtrClient {
 | |
|  public:
 | |
|   ///
 | |
|   // Return a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetOtherValue() = 0;
 | |
| };
 | |
| 
 | |
| ///
 | |
| // Library-side test object for OwnPtr/RawPtr.
 | |
| ///
 | |
| /*--cef(source=library)--*/
 | |
| class CefTranslatorTestScopedLibrary : public CefBaseScoped {
 | |
|  public:
 | |
|   ///
 | |
|   // Create the test object.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   static CefOwnPtr<CefTranslatorTestScopedLibrary> Create(int value);
 | |
| 
 | |
|   ///
 | |
|   // Return a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetValue() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual void SetValue(int value) = 0;
 | |
| };
 | |
| 
 | |
| ///
 | |
| // Library-side child test object for OwnPtr/RawPtr.
 | |
| ///
 | |
| /*--cef(source=library)--*/
 | |
| class CefTranslatorTestScopedLibraryChild
 | |
|     : public CefTranslatorTestScopedLibrary {
 | |
|  public:
 | |
|   ///
 | |
|   // Create the test object.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   static CefOwnPtr<CefTranslatorTestScopedLibraryChild> Create(int value,
 | |
|                                                                int other_value);
 | |
| 
 | |
|   ///
 | |
|   // Return a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetOtherValue() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual void SetOtherValue(int value) = 0;
 | |
| };
 | |
| 
 | |
| ///
 | |
| // Another library-side child test object for OwnPtr/RawPtr.
 | |
| ///
 | |
| /*--cef(source=library)--*/
 | |
| class CefTranslatorTestScopedLibraryChildChild
 | |
|     : public CefTranslatorTestScopedLibraryChild {
 | |
|  public:
 | |
|   ///
 | |
|   // Create the test object.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   static CefOwnPtr<CefTranslatorTestScopedLibraryChildChild>
 | |
|   Create(int value, int other_value, int other_other_value);
 | |
| 
 | |
|   ///
 | |
|   // Return a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetOtherOtherValue() = 0;
 | |
| 
 | |
|   ///
 | |
|   // Set a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual void SetOtherOtherValue(int value) = 0;
 | |
| };
 | |
| 
 | |
| ///
 | |
| // Client-side test object for OwnPtr/RawPtr.
 | |
| ///
 | |
| /*--cef(source=client)--*/
 | |
| class CefTranslatorTestScopedClient : public virtual CefBaseScoped {
 | |
|  public:
 | |
|   ///
 | |
|   // Return a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetValue() = 0;
 | |
| };
 | |
| 
 | |
| ///
 | |
| // Client-side child test object for OwnPtr/RawPtr.
 | |
| ///
 | |
| /*--cef(source=client)--*/
 | |
| class CefTranslatorTestScopedClientChild
 | |
|     : public CefTranslatorTestScopedClient {
 | |
|  public:
 | |
|   ///
 | |
|   // Return a value.
 | |
|   ///
 | |
|   /*--cef()--*/
 | |
|   virtual int GetOtherValue() = 0;
 | |
| };
 | |
| 
 | |
| #endif  // CEF_INCLUDE_TEST_CEF_TEST_H_
 |