material-components_materia.../components/TextFields/tests/unit/TextFieldControllerClassPropertiesLegacyTests.swift
featherless 2181084272
[automated] Standardize our open source license stanza to what Xcode generates. (#4985)
Removes the need to copy-paste stanzas from other files anymore as we'll rely on #4478 to generate the correct stanza for us instead.

This was an automated change generated by running a find-and-replace regular expression:

```
/\*
 Copyright ([0-9]+)-present the Material Components for iOS authors\. All Rights Reserved\.

 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\.
 \*/
```

```
/\*
Copyright ([0-9]+)-present the Material Components for iOS authors\. All Rights Reserved\.

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\.
\*/
```

```
/\*
 Copyright ([0-9]+)-present the Material Components for iOS authors\. All Rights Reserved\.
 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\.
 \*/
```

```
// Copyright $1-present the Material Components for iOS authors. All Rights Reserved.
//
// 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.
```
2018-08-31 12:13:07 -04:00

444 lines
24 KiB
Swift

// Copyright 2017-present the Material Components for iOS authors. All Rights Reserved.
//
// 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.
// swiftlint:disable function_body_length
// swiftlint:disable type_body_length
import XCTest
import MaterialComponents.MaterialPalettes
import MaterialComponents.MaterialTextFields
import MaterialComponents.MaterialTypography
class TextFieldControllerClassPropertiesLegacyTests: XCTestCase {
override func tearDown() {
super.tearDown()
MDCTextInputControllerLegacyDefault.errorColorDefault = nil
MDCTextInputControllerLegacyDefault.inlinePlaceholderColorDefault = nil
MDCTextInputControllerLegacyDefault.mdc_adjustsFontForContentSizeCategoryDefault = false
MDCTextInputControllerLegacyDefault.activeColorDefault = nil
MDCTextInputControllerLegacyDefault.normalColorDefault = nil
MDCTextInputControllerLegacyDefault.underlineViewModeDefault = .whileEditing
MDCTextInputControllerLegacyDefault.leadingUnderlineLabelTextColorDefault = nil
MDCTextInputControllerLegacyDefault.trailingUnderlineLabelTextColorDefault = nil
MDCTextInputControllerLegacyDefault.inlinePlaceholderFontDefault = nil
MDCTextInputControllerLegacyDefault.leadingUnderlineLabelFontDefault = nil
MDCTextInputControllerLegacyDefault.trailingUnderlineLabelFontDefault = nil
MDCTextInputControllerLegacyDefault.floatingPlaceholderNormalColorDefault = nil
MDCTextInputControllerLegacyDefault.floatingPlaceholderScaleDefault = 0.75
MDCTextInputControllerLegacyDefault.isFloatingEnabledDefault = true
MDCTextInputControllerLegacyDefault.textInputClearButtonTintColorDefault = nil
MDCTextInputControllerLegacyFullWidth.errorColorDefault = nil
MDCTextInputControllerLegacyFullWidth.inlinePlaceholderColorDefault = nil
MDCTextInputControllerLegacyFullWidth.mdc_adjustsFontForContentSizeCategoryDefault = false
MDCTextInputControllerLegacyFullWidth.activeColorDefault = nil
MDCTextInputControllerLegacyFullWidth.normalColorDefault = nil
MDCTextInputControllerLegacyFullWidth.underlineViewModeDefault = .never
MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelTextColorDefault = nil
MDCTextInputControllerLegacyFullWidth.trailingUnderlineLabelTextColorDefault = nil
MDCTextInputControllerLegacyFullWidth.inlinePlaceholderFontDefault = nil
MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelFontDefault = nil
MDCTextInputControllerLegacyFullWidth.trailingUnderlineLabelFontDefault = nil
MDCTextInputControllerLegacyFullWidth.textInputClearButtonTintColorDefault = nil
}
func testLegacyDefault() {
// Test the values of the class properties.
XCTAssertEqual(MDCTextInputControllerLegacyDefault.errorColorDefault, MDCPalette.red.accent400)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.inlinePlaceholderColorDefault,
UIColor(white: 0, alpha: CGFloat(Float(0.54))))
XCTAssertEqual(MDCTextInputControllerLegacyDefault.mdc_adjustsFontForContentSizeCategoryDefault, false)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.activeColorDefault,
MDCPalette.blue.accent700)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.normalColorDefault, .lightGray)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.underlineHeightActiveDefault, 2)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.underlineHeightNormalDefault, 1)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.underlineViewModeDefault, .whileEditing)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.leadingUnderlineLabelTextColorDefault,
UIColor(white: 0, alpha: CGFloat(Float(0.54))))
XCTAssertEqual(MDCTextInputControllerLegacyDefault.trailingUnderlineLabelTextColorDefault,
UIColor(white: 0, alpha: CGFloat(Float(0.54))))
XCTAssertEqual(MDCTextInputControllerLegacyDefault.leadingUnderlineLabelTextColorDefault,
MDCTextInputControllerLegacyDefault.inlinePlaceholderColorDefault)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.trailingUnderlineLabelTextColorDefault,
MDCTextInputControllerLegacyDefault.inlinePlaceholderColorDefault)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.inlinePlaceholderFontDefault,
UIFont.mdc_standardFont(forMaterialTextStyle: .body1))
XCTAssertEqual(MDCTextInputControllerLegacyDefault.leadingUnderlineLabelFontDefault,
MDCTextInputControllerLegacyDefault.trailingUnderlineLabelFontDefault)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.leadingUnderlineLabelFontDefault,
UIFont.mdc_standardFont(forMaterialTextStyle: .caption))
// Default specific properties
XCTAssertEqual(MDCTextInputControllerLegacyDefault.floatingPlaceholderNormalColorDefault,
UIColor(white: 0, alpha: CGFloat(Float(0.54))))
XCTAssertEqual(Float(MDCTextInputControllerLegacyDefault.floatingPlaceholderScaleDefault), 0.75)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.isFloatingEnabledDefault, true)
XCTAssertNil(MDCTextInputControllerLegacyDefault.textInputClearButtonTintColorDefault)
// Test the use of the class properties.
let textField = MDCTextField()
var controller = MDCTextInputControllerLegacyDefault(textInput: textField)
XCTAssertEqual(controller.errorColor, MDCTextInputControllerLegacyDefault.errorColorDefault)
XCTAssertEqual(controller.inlinePlaceholderColor,
MDCTextInputControllerLegacyDefault.inlinePlaceholderColorDefault)
XCTAssertEqual(controller.mdc_adjustsFontForContentSizeCategory,
MDCTextInputControllerLegacyDefault.mdc_adjustsFontForContentSizeCategoryDefault)
XCTAssertEqual(controller.activeColor,
MDCTextInputControllerLegacyDefault.activeColorDefault)
XCTAssertEqual(controller.normalColor,
MDCTextInputControllerLegacyDefault.normalColorDefault)
XCTAssertEqual(controller.underlineHeightActive,
MDCTextInputControllerLegacyDefault.underlineHeightActiveDefault)
XCTAssertEqual(controller.underlineHeightNormal,
MDCTextInputControllerLegacyDefault.underlineHeightNormalDefault)
XCTAssertEqual(controller.underlineViewMode,
MDCTextInputControllerLegacyDefault.underlineViewModeDefault)
XCTAssertEqual(controller.leadingUnderlineLabelTextColor,
MDCTextInputControllerLegacyDefault.leadingUnderlineLabelTextColorDefault)
XCTAssertEqual(controller.trailingUnderlineLabelTextColor,
MDCTextInputControllerLegacyDefault.trailingUnderlineLabelTextColorDefault)
XCTAssertEqual(controller.inlinePlaceholderFont,
MDCTextInputControllerLegacyDefault.inlinePlaceholderFontDefault)
XCTAssertEqual(controller.leadingUnderlineLabelFont,
MDCTextInputControllerLegacyDefault.leadingUnderlineLabelFontDefault)
XCTAssertEqual(controller.trailingUnderlineLabelFont,
MDCTextInputControllerLegacyDefault.trailingUnderlineLabelFontDefault)
// Default specific properties
XCTAssertEqual(controller.floatingPlaceholderNormalColor,
MDCTextInputControllerLegacyDefault.floatingPlaceholderNormalColorDefault)
XCTAssertEqual(controller.isFloatingEnabled,
MDCTextInputControllerLegacyDefault.isFloatingEnabledDefault)
// Test the changes to the class properties.
MDCTextInputControllerLegacyDefault.errorColorDefault = .green
XCTAssertEqual(MDCTextInputControllerLegacyDefault.errorColorDefault, .green)
MDCTextInputControllerLegacyDefault.inlinePlaceholderColorDefault = .orange
XCTAssertEqual(MDCTextInputControllerLegacyDefault.inlinePlaceholderColorDefault, .orange)
MDCTextInputControllerLegacyDefault.mdc_adjustsFontForContentSizeCategoryDefault = false
XCTAssertEqual(MDCTextInputControllerLegacyDefault.mdc_adjustsFontForContentSizeCategoryDefault,
false)
MDCTextInputControllerLegacyDefault.activeColorDefault = .purple
XCTAssertEqual(MDCTextInputControllerLegacyDefault.activeColorDefault, .purple)
MDCTextInputControllerLegacyDefault.normalColorDefault = .white
XCTAssertEqual(MDCTextInputControllerLegacyDefault.normalColorDefault, .white)
MDCTextInputControllerLegacyDefault.underlineHeightActiveDefault = 11
XCTAssertEqual(MDCTextInputControllerLegacyDefault.underlineHeightActiveDefault, 11)
MDCTextInputControllerLegacyDefault.underlineHeightNormalDefault = 5
XCTAssertEqual(MDCTextInputControllerLegacyDefault.underlineHeightNormalDefault, 5)
MDCTextInputControllerLegacyDefault.underlineViewModeDefault = .unlessEditing
XCTAssertEqual(MDCTextInputControllerLegacyDefault.underlineViewModeDefault, .unlessEditing)
MDCTextInputControllerLegacyDefault.leadingUnderlineLabelTextColorDefault = .blue
XCTAssertEqual(MDCTextInputControllerLegacyDefault.leadingUnderlineLabelTextColorDefault, .blue)
MDCTextInputControllerLegacyDefault.trailingUnderlineLabelTextColorDefault = .white
XCTAssertEqual(MDCTextInputControllerLegacyDefault.trailingUnderlineLabelTextColorDefault, .white)
MDCTextInputControllerLegacyDefault.inlinePlaceholderFontDefault = UIFont.systemFont(ofSize: 4)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.inlinePlaceholderFontDefault,
UIFont.systemFont(ofSize: 4))
MDCTextInputControllerLegacyDefault.inlinePlaceholderFontDefault = UIFont.systemFont(ofSize: 5)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.inlinePlaceholderFontDefault,
UIFont.systemFont(ofSize: 5))
MDCTextInputControllerLegacyDefault.inlinePlaceholderFontDefault = UIFont.systemFont(ofSize: 6)
XCTAssertEqual(MDCTextInputControllerLegacyDefault.inlinePlaceholderFontDefault,
UIFont.systemFont(ofSize: 6))
// Default specific properties
MDCTextInputControllerLegacyDefault.floatingPlaceholderNormalColorDefault = .red
XCTAssertEqual(MDCTextInputControllerLegacyDefault.floatingPlaceholderNormalColorDefault, .red)
MDCTextInputControllerLegacyDefault.floatingPlaceholderScaleDefault = 0.6
XCTAssertEqual(Float(MDCTextInputControllerLegacyDefault.floatingPlaceholderScaleDefault), 0.6)
MDCTextInputControllerLegacyDefault.isFloatingEnabledDefault = false
XCTAssertEqual(MDCTextInputControllerLegacyDefault.isFloatingEnabledDefault, false)
// Test the changes to the class properties can propogate to an instance.
controller = MDCTextInputControllerLegacyDefault(textInput: textField)
XCTAssertEqual(controller.errorColor, MDCTextInputControllerLegacyDefault.errorColorDefault)
XCTAssertEqual(controller.inlinePlaceholderColor,
MDCTextInputControllerLegacyDefault.inlinePlaceholderColorDefault)
XCTAssertEqual(controller.mdc_adjustsFontForContentSizeCategory,
MDCTextInputControllerLegacyDefault.mdc_adjustsFontForContentSizeCategoryDefault)
XCTAssertEqual(controller.activeColor,
MDCTextInputControllerLegacyDefault.activeColorDefault)
XCTAssertEqual(controller.normalColor,
MDCTextInputControllerLegacyDefault.normalColorDefault)
XCTAssertEqual(controller.underlineHeightActive,
MDCTextInputControllerLegacyDefault.underlineHeightActiveDefault)
XCTAssertEqual(controller.underlineHeightNormal,
MDCTextInputControllerLegacyDefault.underlineHeightNormalDefault)
XCTAssertEqual(controller.underlineViewMode,
MDCTextInputControllerLegacyDefault.underlineViewModeDefault)
XCTAssertEqual(controller.leadingUnderlineLabelTextColor,
MDCTextInputControllerLegacyDefault.leadingUnderlineLabelTextColorDefault)
XCTAssertEqual(controller.trailingUnderlineLabelTextColor,
MDCTextInputControllerLegacyDefault.trailingUnderlineLabelTextColorDefault)
XCTAssertEqual(controller.inlinePlaceholderFont,
MDCTextInputControllerLegacyDefault.inlinePlaceholderFontDefault)
XCTAssertEqual(controller.leadingUnderlineLabelFont,
MDCTextInputControllerLegacyDefault.leadingUnderlineLabelFontDefault)
XCTAssertEqual(controller.trailingUnderlineLabelFont,
MDCTextInputControllerLegacyDefault.trailingUnderlineLabelFontDefault)
// Default specific properties
XCTAssertEqual(controller.floatingPlaceholderNormalColor,
MDCTextInputControllerLegacyDefault.floatingPlaceholderNormalColorDefault)
XCTAssertEqual(controller.isFloatingEnabled,
MDCTextInputControllerLegacyDefault.isFloatingEnabledDefault)
}
func testLegacyFullWidth() {
// Test the values of the class properties.
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.disabledColorDefault, .clear)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.errorColorDefault, MDCPalette.red.accent400)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.inlinePlaceholderColorDefault,
UIColor(white: 0, alpha: CGFloat(Float(0.54))))
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.mdc_adjustsFontForContentSizeCategoryDefault,
false)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.activeColorDefault, .clear)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.normalColorDefault, .clear)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.underlineHeightActiveDefault, 0)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.underlineHeightNormalDefault, 0)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.underlineViewModeDefault, .never)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelTextColorDefault, .clear)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.trailingUnderlineLabelTextColorDefault,
UIColor(white: 0, alpha: CGFloat(Float(0.54))))
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.inlinePlaceholderFontDefault,
UIFont.mdc_standardFont(forMaterialTextStyle: .body1))
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelFontDefault,
MDCTextInputControllerLegacyFullWidth.trailingUnderlineLabelFontDefault)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelFontDefault,
UIFont.mdc_standardFont(forMaterialTextStyle: .caption))
XCTAssertNil(MDCTextInputControllerLegacyFullWidth.textInputClearButtonTintColorDefault)
// Test the use of the class properties.
let textField = MDCTextField()
var controller = MDCTextInputControllerLegacyFullWidth(textInput: textField)
XCTAssertEqual(controller.disabledColor, .clear)
XCTAssertEqual(controller.errorColor, MDCTextInputControllerLegacyFullWidth.errorColorDefault)
XCTAssertEqual(controller.inlinePlaceholderColor,
MDCTextInputControllerLegacyFullWidth.inlinePlaceholderColorDefault)
XCTAssertEqual(controller.mdc_adjustsFontForContentSizeCategory,
MDCTextInputControllerLegacyFullWidth.mdc_adjustsFontForContentSizeCategoryDefault)
XCTAssertEqual(controller.activeColor,
MDCTextInputControllerLegacyFullWidth.activeColorDefault)
XCTAssertEqual(controller.normalColor,
MDCTextInputControllerLegacyFullWidth.normalColorDefault)
XCTAssertEqual(controller.underlineHeightActive,
MDCTextInputControllerLegacyFullWidth.underlineHeightActiveDefault)
XCTAssertEqual(controller.underlineHeightNormal,
MDCTextInputControllerLegacyFullWidth.underlineHeightNormalDefault)
XCTAssertEqual(controller.underlineViewMode,
MDCTextInputControllerLegacyFullWidth.underlineViewModeDefault)
XCTAssertEqual(controller.leadingUnderlineLabelTextColor,
MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelTextColorDefault)
XCTAssertEqual(controller.trailingUnderlineLabelTextColor,
MDCTextInputControllerLegacyFullWidth.trailingUnderlineLabelTextColorDefault)
XCTAssertEqual(controller.inlinePlaceholderFont,
MDCTextInputControllerLegacyFullWidth.inlinePlaceholderFontDefault)
XCTAssertEqual(controller.leadingUnderlineLabelFont,
MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelFontDefault)
XCTAssertEqual(controller.trailingUnderlineLabelFont,
MDCTextInputControllerLegacyFullWidth.trailingUnderlineLabelFontDefault)
// Test the changes to the class properties.
MDCTextInputControllerLegacyFullWidth.disabledColorDefault = .red
XCTAssertNotEqual(MDCTextInputControllerLegacyFullWidth.disabledColorDefault, .red)
MDCTextInputControllerLegacyFullWidth.errorColorDefault = .green
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.errorColorDefault, .green)
MDCTextInputControllerLegacyFullWidth.inlinePlaceholderColorDefault = .orange
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.inlinePlaceholderColorDefault, .orange)
MDCTextInputControllerLegacyFullWidth.mdc_adjustsFontForContentSizeCategoryDefault = false
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.mdc_adjustsFontForContentSizeCategoryDefault,
false)
MDCTextInputControllerLegacyFullWidth.activeColorDefault = .purple
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.activeColorDefault, .clear)
MDCTextInputControllerLegacyFullWidth.normalColorDefault = .white
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.normalColorDefault, .clear)
// The underline is not shown in this controller
MDCTextInputControllerLegacyFullWidth.underlineHeightActiveDefault = 8
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.underlineHeightActiveDefault, 0)
MDCTextInputControllerLegacyFullWidth.underlineHeightNormalDefault = 7
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.underlineHeightNormalDefault, 0)
MDCTextInputControllerLegacyFullWidth.underlineViewModeDefault = .unlessEditing
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.underlineViewModeDefault, .never)
MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelTextColorDefault = .brown
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelTextColorDefault, .clear)
MDCTextInputControllerLegacyFullWidth.trailingUnderlineLabelTextColorDefault = .cyan
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.trailingUnderlineLabelTextColorDefault, .cyan)
MDCTextInputControllerLegacyFullWidth.inlinePlaceholderFontDefault = UIFont.systemFont(ofSize: 4)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.inlinePlaceholderFontDefault,
UIFont.systemFont(ofSize: 4))
MDCTextInputControllerLegacyFullWidth.inlinePlaceholderFontDefault = UIFont.systemFont(ofSize: 5)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.inlinePlaceholderFontDefault,
UIFont.systemFont(ofSize: 5))
MDCTextInputControllerLegacyFullWidth.inlinePlaceholderFontDefault = UIFont.systemFont(ofSize: 6)
XCTAssertEqual(MDCTextInputControllerLegacyFullWidth.inlinePlaceholderFontDefault,
UIFont.systemFont(ofSize: 6))
// Test the changes to the class properties can propogate to an instance.
controller = MDCTextInputControllerLegacyFullWidth(textInput: textField)
XCTAssertEqual(controller.disabledColor, .clear)
XCTAssertEqual(controller.errorColor, MDCTextInputControllerLegacyFullWidth.errorColorDefault)
XCTAssertEqual(controller.inlinePlaceholderColor,
MDCTextInputControllerLegacyFullWidth.inlinePlaceholderColorDefault)
XCTAssertEqual(controller.mdc_adjustsFontForContentSizeCategory,
MDCTextInputControllerLegacyFullWidth.mdc_adjustsFontForContentSizeCategoryDefault)
XCTAssertEqual(controller.activeColor,
MDCTextInputControllerLegacyFullWidth.activeColorDefault)
XCTAssertEqual(controller.normalColor,
MDCTextInputControllerLegacyFullWidth.normalColorDefault)
XCTAssertEqual(controller.underlineHeightActive,
MDCTextInputControllerLegacyFullWidth.underlineHeightActiveDefault)
XCTAssertEqual(controller.underlineHeightNormal,
MDCTextInputControllerLegacyFullWidth.underlineHeightNormalDefault)
XCTAssertEqual(controller.underlineViewMode,
MDCTextInputControllerLegacyFullWidth.underlineViewModeDefault)
XCTAssertEqual(controller.leadingUnderlineLabelTextColor,
MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelTextColorDefault)
XCTAssertEqual(controller.trailingUnderlineLabelTextColor,
MDCTextInputControllerLegacyFullWidth.trailingUnderlineLabelTextColorDefault)
XCTAssertEqual(controller.inlinePlaceholderFont,
MDCTextInputControllerLegacyFullWidth.inlinePlaceholderFontDefault)
XCTAssertEqual(controller.leadingUnderlineLabelFont,
MDCTextInputControllerLegacyFullWidth.leadingUnderlineLabelFontDefault)
XCTAssertEqual(controller.trailingUnderlineLabelFont,
MDCTextInputControllerLegacyFullWidth.trailingUnderlineLabelFontDefault)
}
func testLegacyDefaultTextInputClearButtonTintColorUsesDefault() {
// Given
MDCTextInputControllerLegacyDefault.textInputClearButtonTintColorDefault = .orange
// When
let textInput = MDCTextField()
let controllerLegacyDefault = MDCTextInputControllerLegacyDefault(textInput: textInput)
// Then
XCTAssertEqual(controllerLegacyDefault.textInputClearButtonTintColor,
MDCTextInputControllerLegacyDefault.textInputClearButtonTintColorDefault)
}
func testLegacyDefaultTextInputClearButtonTintColorDefaultAppliesToTextField() {
// Given
MDCTextInputControllerLegacyDefault.textInputClearButtonTintColorDefault = .orange
// When
let textInputLegacyDefault = MDCTextField()
let _ = MDCTextInputControllerLegacyDefault(textInput: textInputLegacyDefault)
// Then
XCTAssertEqual(textInputLegacyDefault.clearButton.tintColor,
MDCTextInputControllerLegacyDefault.textInputClearButtonTintColorDefault)
}
func testLegacyDefaultTextInputClearButtonTintColorAppliesToTextField() {
// Given
let textInputLegacyDefault = MDCTextField()
let controllerLegacyDefault = MDCTextInputControllerLegacyDefault(textInput: textInputLegacyDefault)
// When
controllerLegacyDefault.textInputClearButtonTintColor = .black
// Then
XCTAssertEqual(textInputLegacyDefault.clearButton.tintColor,
controllerLegacyDefault.textInputClearButtonTintColor)
}
func testLegacyFullWidthTextInputClearButtonTintColorUsesDefault() {
// Given
MDCTextInputControllerLegacyFullWidth.textInputClearButtonTintColorDefault = .orange
// When
let textInput = MDCTextField()
let controllerLegacyFullWidth = MDCTextInputControllerLegacyFullWidth(textInput: textInput)
// Then
XCTAssertEqual(controllerLegacyFullWidth.textInputClearButtonTintColor,
MDCTextInputControllerLegacyFullWidth.textInputClearButtonTintColorDefault)
}
func testLegacyFullWidthTextinputClearButtonTintColorDefaultAppliesToTextField() {
// Given
MDCTextInputControllerLegacyFullWidth.textInputClearButtonTintColorDefault = .orange
// When
let textInputLegacyFullWidth = MDCTextField()
let _ = MDCTextInputControllerLegacyFullWidth(textInput: textInputLegacyFullWidth)
// Then
XCTAssertEqual(textInputLegacyFullWidth.clearButton.tintColor,
MDCTextInputControllerLegacyFullWidth.textInputClearButtonTintColorDefault)
}
func testLegacyFullWidthTextInputClearButtonTintColorAppliesToTextField() {
// Given
let textInputLegacyFullWidth = MDCTextField()
let controllerLegacyFullWidth = MDCTextInputControllerLegacyFullWidth(textInput: textInputLegacyFullWidth)
// When
controllerLegacyFullWidth.textInputClearButtonTintColor = .black
// Then
XCTAssertEqual(textInputLegacyFullWidth.clearButton.tintColor,
controllerLegacyFullWidth.textInputClearButtonTintColor)
}
}