| // GTMFadeTruncatingTextFieldCellTest.m |
| // |
| // Copyright 2009 Google Inc. |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); you may not |
| // use this file 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 "GTMDefines.h" |
| |
| #if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 |
| |
| #import "GTMSenTestCase.h" |
| #import "GTMFadeTruncatingTextFieldCell.h" |
| |
| @interface GTMFadeTruncatingTextFieldCellTest : GTMTestCase |
| @end |
| |
| @implementation GTMFadeTruncatingTextFieldCellTest |
| |
| - (void)testFadeCellRight { |
| NSTextField *field = [[[NSTextField alloc] initWithFrame: |
| NSMakeRect(0, 0, 100, 16)] autorelease]; |
| [field setCell:[[[GTMFadeTruncatingTextFieldCell alloc] initTextCell:@""] |
| autorelease]]; |
| |
| [field setStringValue:@"A very long string that won't fit"]; |
| [field setStringValue:@"A short string"]; |
| |
| // Dark background, light text (force the background to draw (which is odd |
| // for a text cell), but this is to make sure the support for light on dark |
| // is tested. |
| [field setTextColor:[NSColor whiteColor]]; |
| [field setDrawsBackground:YES]; |
| [field setBackgroundColor:[NSColor blackColor]]; |
| |
| [field setStringValue:@"A very long string that won't fit"]; |
| [field setStringValue:@"A short string"]; |
| } |
| |
| - (void)testFadeCellLeftAndRight { |
| NSTextField *field = [[[NSTextField alloc] initWithFrame: |
| NSMakeRect(0, 0, 100, 16)] autorelease]; |
| GTMFadeTruncatingTextFieldCell *cell = |
| [[[GTMFadeTruncatingTextFieldCell alloc] initTextCell:@""] autorelease]; |
| [cell setTruncateMode:GTMFadeTruncatingHeadAndTail]; |
| [cell setDesiredCharactersToTruncateFromHead:5]; |
| [field setCell:cell]; |
| |
| [field setStringValue:@"Fade on both left and right AAAA"]; |
| [field setStringValue:@"Fade on left only A"]; |
| [field setStringValue:@"A short string"]; |
| // Test the case where the number of characters to truncate from head is not |
| // specified. This should cause the string to be drawn centered. |
| [cell setDesiredCharactersToTruncateFromHead:0]; |
| [field setStringValue:@"Fade on both left and right AAAA"]; |
| // Border with a solid background color. |
| [field setTextColor:[NSColor whiteColor]]; |
| [field setDrawsBackground:YES]; |
| [field setBackgroundColor:[NSColor blackColor]]; |
| [field setBordered:YES]; |
| } |
| |
| @end |
| |
| #endif // MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 |