From 42daeb6f1298c800b3d42a6b746e2e6ef6b0670e Mon Sep 17 00:00:00 2001 From: Tomáš Znamenáček Date: Tue, 5 Aug 2014 15:10:00 +0200 Subject: Added a unit testing target. --- Framework/MASShortcutTests.m | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 Framework/MASShortcutTests.m (limited to 'Framework/MASShortcutTests.m') diff --git a/Framework/MASShortcutTests.m b/Framework/MASShortcutTests.m new file mode 100644 index 0000000..37a801f --- /dev/null +++ b/Framework/MASShortcutTests.m @@ -0,0 +1,14 @@ +#import "MASShortcut.h" + +@interface MASShortcutTests : XCTestCase +@end + +@implementation MASShortcutTests + +- (void) testShortcutRecorderCompatibility +{ + MASShortcut *key = [MASShortcut shortcutWithKeyCode:87 modifierFlags:1048576]; + XCTAssertEqualObjects([key description], @"⌘5", @"Basic compatibility with the keycode & modifier combination used by Shortcut Recorder."); +} + +@end -- cgit v1.2.3 From e30504eb2a7729333d3ebe9266ac493deb9ea02c Mon Sep 17 00:00:00 2001 From: Tomáš Znamenáček Date: Wed, 6 Aug 2014 10:26:25 +0200 Subject: Implemented equality for shortcut objects. Shortcuts are equal if and only if their key codes and modifier flags are. --- Framework/MASShortcutTests.m | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'Framework/MASShortcutTests.m') diff --git a/Framework/MASShortcutTests.m b/Framework/MASShortcutTests.m index 37a801f..d1cd8c4 100644 --- a/Framework/MASShortcutTests.m +++ b/Framework/MASShortcutTests.m @@ -5,6 +5,20 @@ @implementation MASShortcutTests +- (void) testEquality +{ + MASShortcut *keyA = [MASShortcut shortcutWithKeyCode:1 modifierFlags:NSControlKeyMask]; + MASShortcut *keyB = [MASShortcut shortcutWithKeyCode:2 modifierFlags:NSControlKeyMask]; + MASShortcut *keyC = [MASShortcut shortcutWithKeyCode:1 modifierFlags:NSAlternateKeyMask]; + MASShortcut *keyD = [MASShortcut shortcutWithKeyCode:1 modifierFlags:NSControlKeyMask]; + XCTAssertTrue([keyA isEqual:keyA], @"Shortcut is equal to itself."); + XCTAssertTrue([keyA isEqual:[keyA copy]], @"Shortcut is equal to its copy."); + XCTAssertFalse([keyA isEqual:keyB], @"Shortcuts not equal when key codes differ."); + XCTAssertFalse([keyA isEqual:keyC], @"Shortcuts not equal when modifier flags differ."); + XCTAssertTrue([keyA isEqual:keyD], @"Shortcuts are equal when key codes and modifiers are."); + XCTAssertFalse([keyA isEqual:@"foo"], @"Shortcut not equal to an object of a different class."); +} + - (void) testShortcutRecorderCompatibility { MASShortcut *key = [MASShortcut shortcutWithKeyCode:87 modifierFlags:1048576]; -- cgit v1.2.3 From f03fad7b629d3fac525bed5e37d064343fe773cd Mon Sep 17 00:00:00 2001 From: Tomáš Znamenáček Date: Thu, 7 Aug 2014 10:59:47 +0200 Subject: Added Shortcut.h to the tests prefix header to simplify tests. --- Framework/MASShortcutTests.m | 2 -- 1 file changed, 2 deletions(-) (limited to 'Framework/MASShortcutTests.m') diff --git a/Framework/MASShortcutTests.m b/Framework/MASShortcutTests.m index d1cd8c4..28eab56 100644 --- a/Framework/MASShortcutTests.m +++ b/Framework/MASShortcutTests.m @@ -1,5 +1,3 @@ -#import "MASShortcut.h" - @interface MASShortcutTests : XCTestCase @end -- cgit v1.2.3