aboutsummaryrefslogtreecommitdiffstats
path: root/Framework/MASShortcutTests.m
diff options
context:
space:
mode:
authorTomáš Znamenáček2015-01-08 12:00:53 +0100
committerTomáš Znamenáček2015-01-08 12:00:53 +0100
commit9b919cba51e4cd11b0c4424930d6c18a1baec73c (patch)
treea8107774609d5f4263f7b79749d93e6c6ff2642d /Framework/MASShortcutTests.m
parenta3a459b4e4e47bf18dccd5dc7f315389346e3d6c (diff)
parentea69d5939511f61a7082ba1e8ff46d247862a3fa (diff)
downloadMASShortcut-9b919cba51e4cd11b0c4424930d6c18a1baec73c.tar.bz2
Merge pull request #53 from zoul/2.0-candidate
Thank you very much!
Diffstat (limited to 'Framework/MASShortcutTests.m')
-rw-r--r--Framework/MASShortcutTests.m26
1 files changed, 26 insertions, 0 deletions
diff --git a/Framework/MASShortcutTests.m b/Framework/MASShortcutTests.m
new file mode 100644
index 0000000..28eab56
--- /dev/null
+++ b/Framework/MASShortcutTests.m
@@ -0,0 +1,26 @@
+@interface MASShortcutTests : XCTestCase
+@end
+
+@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];
+ XCTAssertEqualObjects([key description], @"⌘5", @"Basic compatibility with the keycode & modifier combination used by Shortcut Recorder.");
+}
+
+@end