// Copyright 2016 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import 'package:flutter/painting.dart'; import 'package:flutter_test/flutter_test.dart' show nonconst; import '../flutter_test_alternative.dart'; void main() { test('TextSpan equals', () { final TextSpan a1 = TextSpan(text: nonconst('a')); final TextSpan a2 = TextSpan(text: nonconst('a')); final TextSpan b1 = TextSpan(children: <TextSpan>[ a1 ]); final TextSpan b2 = TextSpan(children: <TextSpan>[ a2 ]); final TextSpan c1 = TextSpan(text: nonconst(null)); final TextSpan c2 = TextSpan(text: nonconst(null)); expect(a1 == a2, isTrue); expect(b1 == b2, isTrue); expect(c1 == c2, isTrue); expect(a1 == b2, isFalse); expect(b1 == c2, isFalse); expect(c1 == a2, isFalse); expect(a1 == c2, isFalse); expect(b1 == a2, isFalse); expect(c1 == b2, isFalse); }); test('TextSpan toStringDeep', () { const TextSpan test = TextSpan( text: 'a', style: TextStyle( fontSize: 10.0, ), children: <TextSpan>[ TextSpan( text: 'b', children: <TextSpan>[ TextSpan(), ], ), null, TextSpan( text: 'c', ), ], ); expect(test.toStringDeep(), equals( 'TextSpan:\n' ' inherit: true\n' ' size: 10.0\n' ' "a"\n' ' TextSpan:\n' ' "b"\n' ' TextSpan:\n' ' (empty)\n' ' <null child>\n' ' TextSpan:\n' ' "c"\n' )); }); }