KWBeMemberOfClassMatcher.m 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. //
  2. // Licensed under the terms in License.txt
  3. //
  4. // Copyright 2010 Allen Ding. All rights reserved.
  5. //
  6. #import "KWBeMemberOfClassMatcher.h"
  7. #import "KWFormatter.h"
  8. @interface KWBeMemberOfClassMatcher()
  9. @property (nonatomic, assign) Class targetClass;
  10. @end
  11. @implementation KWBeMemberOfClassMatcher
  12. #pragma mark - Getting Matcher Strings
  13. + (NSArray *)matcherStrings {
  14. return @[@"beMemberOfClass:"];
  15. }
  16. #pragma mark - Matching
  17. - (BOOL)evaluate {
  18. return [self.subject isMemberOfClass:self.targetClass];
  19. }
  20. #pragma mark - Getting Failure Messages
  21. - (NSString *)failureMessageForShould {
  22. return [NSString stringWithFormat:@"expected subject to be member of %@, got %@",
  23. NSStringFromClass(self.targetClass),
  24. NSStringFromClass([self.subject class])];
  25. }
  26. - (NSString *)description {
  27. return [NSString stringWithFormat:@"be member of %@",
  28. NSStringFromClass(self.targetClass)];
  29. }
  30. #pragma mark - Configuring Matchers
  31. - (void)beMemberOfClass:(Class)aClass {
  32. self.targetClass = aClass;
  33. }
  34. @end