test: start testing MessageInputTheme
This commit is contained in:
@@ -0,0 +1,93 @@
|
|||||||
|
import 'package:flutter/material.dart' hide TextTheme;
|
||||||
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
|
import 'package:stream_chat_flutter/stream_chat_flutter.dart';
|
||||||
|
|
||||||
|
void main() {
|
||||||
|
test('MessageInputThemeData copyWith, ==, hashCode basics', () {
|
||||||
|
expect(const MessageInputThemeData(),
|
||||||
|
const MessageInputThemeData().copyWith());
|
||||||
|
expect(const MessageInputThemeData().hashCode,
|
||||||
|
const MessageInputThemeData().copyWith().hashCode);
|
||||||
|
});
|
||||||
|
|
||||||
|
group('MessageInputThemeData lerps correctly', () {
|
||||||
|
test('Lerp completely from light to dark', () {
|
||||||
|
expect(
|
||||||
|
const MessageInputThemeData().lerp(
|
||||||
|
_messageInputThemeControl, _messageInputThemeControlDark, 1),
|
||||||
|
_messageInputThemeControlDark);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
final _messageInputThemeControl = MessageInputThemeData(
|
||||||
|
borderRadius: BorderRadius.circular(20),
|
||||||
|
sendAnimationDuration: const Duration(milliseconds: 300),
|
||||||
|
actionButtonColor: ColorTheme.light().accentPrimary,
|
||||||
|
actionButtonIdleColor: ColorTheme.light().textLowEmphasis,
|
||||||
|
expandButtonColor: ColorTheme.light().accentPrimary,
|
||||||
|
sendButtonColor: ColorTheme.light().accentPrimary,
|
||||||
|
sendButtonIdleColor: ColorTheme.light().disabled,
|
||||||
|
inputBackgroundColor: ColorTheme.light().barsBg,
|
||||||
|
inputTextStyle: TextTheme.light().body,
|
||||||
|
idleBorderGradient: LinearGradient(
|
||||||
|
colors: [
|
||||||
|
ColorTheme.light().disabled,
|
||||||
|
ColorTheme.light().disabled,
|
||||||
|
],
|
||||||
|
),
|
||||||
|
activeBorderGradient: LinearGradient(
|
||||||
|
colors: [
|
||||||
|
ColorTheme.light().disabled,
|
||||||
|
ColorTheme.light().disabled,
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|
||||||
|
final _messageInputThemeControlMidLerp = MessageInputThemeData(
|
||||||
|
borderRadius: BorderRadius.circular(20),
|
||||||
|
sendAnimationDuration: const Duration(milliseconds: 300),
|
||||||
|
actionButtonColor: ColorTheme.light().accentPrimary,
|
||||||
|
actionButtonIdleColor: ColorTheme.light().textLowEmphasis,
|
||||||
|
expandButtonColor: ColorTheme.light().accentPrimary,
|
||||||
|
sendButtonColor: ColorTheme.light().accentPrimary,
|
||||||
|
sendButtonIdleColor: ColorTheme.light().disabled,
|
||||||
|
inputBackgroundColor: ColorTheme.light().barsBg,
|
||||||
|
inputTextStyle: TextTheme.light().body,
|
||||||
|
idleBorderGradient: LinearGradient(
|
||||||
|
colors: [
|
||||||
|
ColorTheme.light().disabled,
|
||||||
|
ColorTheme.light().disabled,
|
||||||
|
],
|
||||||
|
),
|
||||||
|
activeBorderGradient: LinearGradient(
|
||||||
|
colors: [
|
||||||
|
ColorTheme.light().disabled,
|
||||||
|
ColorTheme.light().disabled,
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|
||||||
|
final _messageInputThemeControlDark = MessageInputThemeData(
|
||||||
|
borderRadius: BorderRadius.circular(20),
|
||||||
|
sendAnimationDuration: const Duration(milliseconds: 300),
|
||||||
|
actionButtonColor: ColorTheme.dark().accentPrimary,
|
||||||
|
actionButtonIdleColor: ColorTheme.dark().textLowEmphasis,
|
||||||
|
expandButtonColor: ColorTheme.dark().accentPrimary,
|
||||||
|
sendButtonColor: ColorTheme.dark().accentPrimary,
|
||||||
|
sendButtonIdleColor: ColorTheme.dark().disabled,
|
||||||
|
inputBackgroundColor: ColorTheme.dark().barsBg,
|
||||||
|
inputTextStyle: TextTheme.dark().body,
|
||||||
|
idleBorderGradient: LinearGradient(
|
||||||
|
colors: [
|
||||||
|
ColorTheme.dark().disabled,
|
||||||
|
ColorTheme.dark().disabled,
|
||||||
|
],
|
||||||
|
),
|
||||||
|
activeBorderGradient: LinearGradient(
|
||||||
|
colors: [
|
||||||
|
ColorTheme.dark().disabled,
|
||||||
|
ColorTheme.dark().disabled,
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
Reference in New Issue
Block a user