aboutsummaryrefslogtreecommitdiffstats
path: root/Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h
diff options
context:
space:
mode:
Diffstat (limited to 'Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h')
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h84
1 files changed, 79 insertions, 5 deletions
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h b/Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h
index e18de58a..f0083b35 100644
--- a/Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h
+++ b/Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h
@@ -1,10 +1,84 @@
-//---------------------------------------------------------------------------------------
-// $Id$
-// Copyright (c) 2004-2008 by Mulle Kybernetik. See License file for details.
-//---------------------------------------------------------------------------------------
+/*
+ * Copyright (c) 2004-2014 Erik Doernenburg and contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use these files except in compliance with the License. You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
#import <OCMock/OCMockObject.h>
-#import <OCMock/OCMockRecorder.h>
+#import <OCMock/OCMRecorder.h>
+#import <OCMock/OCMStubRecorder.h>
#import <OCMock/OCMConstraint.h>
#import <OCMock/OCMArg.h>
+#import <OCMock/OCMLocation.h>
+#import <OCMock/OCMMacroState.h>
#import <OCMock/NSNotificationCenter+OCMAdditions.h>
+
+
+#define OCMClassMock(cls) [OCMockObject niceMockForClass:cls]
+
+#define OCMStrictClassMock(cls) [OCMockObject mockForClass:cls]
+
+#define OCMProtocolMock(protocol) [OCMockObject niceMockForProtocol:protocol]
+
+#define OCMStrictProtocolMock(protocol) [OCMockObject mockForProtocol:protocol]
+
+#define OCMPartialMock(obj) [OCMockObject partialMockForObject:obj]
+
+#define OCMObserverMock() [OCMockObject observerMock]
+
+
+#define OCMStub(invocation) \
+({ \
+ _OCMSilenceWarnings( \
+ [OCMMacroState beginStubMacro]; \
+ invocation; \
+ [OCMMacroState endStubMacro]; \
+ ); \
+})
+
+#define OCMExpect(invocation) \
+({ \
+ _OCMSilenceWarnings( \
+ [OCMMacroState beginExpectMacro]; \
+ invocation; \
+ [OCMMacroState endExpectMacro]; \
+ ); \
+})
+
+#define ClassMethod(invocation) \
+ _OCMSilenceWarnings( \
+ [[OCMMacroState globalState] switchToClassMethod]; \
+ invocation; \
+ );
+
+
+#define OCMVerifyAll(mock) [mock verifyAtLocation:OCMMakeLocation(self, __FILE__, __LINE__)]
+
+#define OCMVerifyAllWithDelay(mock, delay) [mock verifyWithDelay:delay atLocation:OCMMakeLocation(self, __FILE__, __LINE__)]
+
+#define OCMVerify(invocation) \
+({ \
+ _OCMSilenceWarnings( \
+ [OCMMacroState beginVerifyMacroAtLocation:OCMMakeLocation(self, __FILE__, __LINE__)]; \
+ invocation; \
+ [OCMMacroState endVerifyMacro]; \
+ ); \
+})
+
+#define _OCMSilenceWarnings(macro) \
+({ \
+ _Pragma("clang diagnostic push") \
+ _Pragma("clang diagnostic ignored \"-Wunused-value\"") \
+ macro \
+ _Pragma("clang diagnostic pop") \
+})