Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(56)

Unified Diff: third_party/ocmock/OCMock/OCMMacroState.m

Issue 2410583002: Test update OCMock (Closed)
Patch Set: Patch in exactly 3.1.5 Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/ocmock/OCMock/OCMMacroState.h ('k') | third_party/ocmock/OCMock/OCMNotificationPoster.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/ocmock/OCMock/OCMMacroState.m
diff --git a/third_party/ocmock/OCMock/OCMMacroState.m b/third_party/ocmock/OCMock/OCMMacroState.m
new file mode 100644
index 0000000000000000000000000000000000000000..1fc32c37ca1cefdf6ad31d675c9d4f24052af3b5
--- /dev/null
+++ b/third_party/ocmock/OCMock/OCMMacroState.m
@@ -0,0 +1,94 @@
+/*
+ * Copyright (c) 2014-2015 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 "OCMMacroState.h"
+#import "OCMStubRecorder.h"
+#import "OCMockObject.h"
+#import "OCMExpectationRecorder.h"
+#import "OCMVerifier.h"
+#import "OCMInvocationMatcher.h"
+
+@implementation OCMMacroState
+
+static OCMMacroState* globalState;
+
+#pragma mark Methods to begin/end macros
+
++ (void)beginStubMacro {
+ OCMStubRecorder* recorder = [[[OCMStubRecorder alloc] init] autorelease];
+ globalState = [[[OCMMacroState alloc] initWithRecorder:recorder] autorelease];
+}
+
++ (OCMStubRecorder*)endStubMacro {
+ OCMStubRecorder* recorder = (OCMStubRecorder*)[globalState recorder];
+ globalState = nil;
+ return recorder;
+}
+
++ (void)beginExpectMacro {
+ OCMExpectationRecorder* recorder =
+ [[[OCMExpectationRecorder alloc] init] autorelease];
+ globalState = [[[OCMMacroState alloc] initWithRecorder:recorder] autorelease];
+}
+
++ (OCMStubRecorder*)endExpectMacro {
+ return [self endStubMacro];
+}
+
++ (void)beginVerifyMacroAtLocation:(OCMLocation*)aLocation {
+ OCMVerifier* recorder = [[[OCMVerifier alloc] init] autorelease];
+ [recorder setLocation:aLocation];
+ globalState = [[[OCMMacroState alloc] initWithRecorder:recorder] autorelease];
+}
+
++ (void)endVerifyMacro {
+ globalState = nil;
+}
+
+#pragma mark Accessing global state
+
++ (OCMMacroState*)globalState {
+ return globalState;
+}
+
+#pragma mark Init, dealloc, accessors
+
+- (id)initWithRecorder:(OCMRecorder*)aRecorder {
+ if ((self = [super init])) {
+ recorder = [aRecorder retain];
+ }
+
+ return self;
+}
+
+- (void)dealloc {
+ [recorder release];
+ if (globalState == self)
+ globalState = nil;
+ [super dealloc];
+}
+
+- (OCMRecorder*)recorder {
+ return recorder;
+}
+
+#pragma mark Changing the recorder
+
+- (void)switchToClassMethod {
+ [recorder classMethod];
+}
+
+@end
« no previous file with comments | « third_party/ocmock/OCMock/OCMMacroState.h ('k') | third_party/ocmock/OCMock/OCMNotificationPoster.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698