49 lines
1.4 KiB
Objective-C
49 lines
1.4 KiB
Objective-C
//
|
|
// TestResult+Create.m
|
|
// Espagram
|
|
//
|
|
// Created by Abel Fokkinga on 1/7/13.
|
|
// Copyright (c) 2013 Abel Fokkinga. All rights reserved.
|
|
//
|
|
|
|
#import "TestResult+Create.h"
|
|
#import "Lesson.h"
|
|
|
|
@implementation TestResult (Create)
|
|
|
|
+ (void) addTestableVerbResult:(TestableVerb *)verb withTestType:(NSString *)testType
|
|
{
|
|
|
|
// Check first if this verb already contains a result
|
|
for ( TestResult * tr in verb.verb.testResults) {
|
|
if ( [tr.conjugatedPerson isEqualToString:verb.person] &&
|
|
[tr.testType isEqualToString:testType] ) {
|
|
|
|
if ( !verb.failed ) {
|
|
tr.passedCounter = [NSNumber numberWithInt:[tr.passedCounter intValue] + 1];
|
|
} else {
|
|
tr.failedCounter = [NSNumber numberWithInt:[tr.failedCounter intValue] +1];
|
|
}
|
|
[[verb.verb.lesson managedObjectContext] save:nil];
|
|
return;
|
|
}
|
|
}
|
|
|
|
// No result yet exists
|
|
TestResult * result = [NSEntityDescription insertNewObjectForEntityForName:@"TestResult" inManagedObjectContext:verb.verb.lesson.managedObjectContext];
|
|
|
|
result.conjugatedPerson = verb.person;
|
|
result.testType = testType;
|
|
|
|
if ( !verb.failed ) {
|
|
result.passedCounter = [NSNumber numberWithInt:1];
|
|
} else {
|
|
result.failedCounter = [NSNumber numberWithInt:1];
|
|
}
|
|
|
|
[verb.verb addTestResultsObject:result];
|
|
[[verb.verb.lesson managedObjectContext] save:nil];
|
|
}
|
|
|
|
@end
|