Internal changes
[google-protobuf.git] / objectivec / Tests / GPBObjectiveCPlusPlusTest.mm
blob96351e0dcad6570708fc8b62f8ba3f6b2ca49d82
1 // Protocol Buffers - Google's data interchange format
2 // Copyright 2013 Google Inc.  All rights reserved.
3 //
4 // Use of this source code is governed by a BSD-style
5 // license that can be found in the LICENSE file or at
6 // https://developers.google.com/open-source/licenses/bsd
8 #import "GPBTestUtilities.h"
11 // This is just a compile test (here to make sure things never regress).
13 // Objective C++ can run into issues with how the NS_ENUM/CF_ENUM declaration
14 // works because of the C++ spec being used for that compilation unit. So
15 // the fact that these imports all work without errors/warning means things
16 // are still good.
18 // The "well know types" should have cross file enums needing imports.
19 #import "GPBProtocolBuffers.h"
20 // Some of the tests explicitly use cross file enums also.
21 #import "objectivec/Tests/Unittest.pbobjc.h"
22 #import "objectivec/Tests/UnittestImport.pbobjc.h"
24 // Sanity check the conditions of the test within the Xcode project.
25 #if !__cplusplus
26 #error This isn't compiled as Objective C++?
27 #elif __cplusplus >= 201103L
28 // If this trips, it means the Xcode default might have change (or someone
29 // edited the testing project) and it might be time to revisit the GPB_ENUM
30 // define in GPBBootstrap.h.
31 #warning Did the Xcode default for C++ spec change?
32 #endif
34 // Dummy XCTest.
35 @interface GPBObjectiveCPlusPlusTests : GPBTestCase
36 @end
38 @implementation GPBObjectiveCPlusPlusTests
39 - (void)testCPlusPlus {
40   // Nothing, This was a compile test.
41   XCTAssertTrue(YES);
43 @end