-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Closed
Labels
in triagePresently being triaged by the triage teamPresently being triaged by the triage teamwaiting for customer responseThe Flutter team cannot make further progress on this issue until the original reporter respondsThe Flutter team cannot make further progress on this issue until the original reporter responds
Description
DataSearch extends SearchDelegate<String>{
final names = [
"Davids",
"Aigbogun",
"Egunbiyi",
"Onijesude",
"Olurindeopelopejesu",
"AyeniFolakemi",
"ADEGBUYIOLUDAMOLA",
"Oyebolu",
"AKINSOLAABISOLA",
];
final recentnames = [
"Onijesude",
"Olurindeopelopejesu",
"AyeniFolakemi",
"ADEGBUYIOLUDAMOLA",
];
@override
List<Widget> buildActions(BuildContext context) {
return [IconButton(icon: Icon(Icons.clear),
onPressed: () {
query = "";
})];
}
@override
Widget buildLeading(BuildContext context) {
return IconButton(
icon: AnimatedIcon(
icon: AnimatedIcons.menu_arrow,
progress: transitionAnimation,
),
onPressed: (){
close(context, null);
});
}
@override
Widget buildResults(BuildContext context) {
return Center(
child: Container(
height: 100.0,
width: 100.0,
child: Card(
color: Colors.red,
child: Center(
child: Text(query),
),
),
),
);
}
@override
Widget buildSuggestions(BuildContext context) {
final suggestionList = query.isEmpty
? recentnames
: names.where((p) => p.startsWith(query)).toList();
return ListView.builder(
itemBuilder: (context,index)=>ListTile(
onTap: (){
showResults(context);
},
leading: Icon(Icons.location_city),
title: RichText(text: TextSpan(
text: suggestionList[index].substring(0,query.length),
style:
TextStyle(color: Colors.black,fontWeight: FontWeight.bold),
children: [TextSpan(
text: suggestionList[index].substring(query.length),
style: TextStyle(color: Colors.grey))
]),
)
),
itemCount: suggestionList.length,
);
}
}
widget_test.dart
// This is a basic Flutter widget test.
//
// To perform an interaction with a widget in your test, use the WidgetTester
// utility that Flutter provides. For example, you can send tap and scroll
// gestures. You can also use WidgetTester to find child widgets in the widget
// tree, read text, and verify that the values of widget properties are correct.
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:lom_search/main.dart';
void main() {
testWidgets('Counter increments smoke test', (WidgetTester tester) async {
// Build our app and trigger a frame.
await tester.pumpWidget(MyApp());
// Verify that our counter starts at 0.
expect(find.text('0'), findsOneWidget);
expect(find.text('1'), findsNothing);
// Tap the '+' icon and trigger a frame.
await tester.tap(find.byIcon(Icons.add));
await tester.pump();
// Verify that our counter has incremented.
expect(find.text('0'), findsNothing);
expect(find.text('1'), findsOneWidget);
});
}
Metadata
Metadata
Assignees
Labels
in triagePresently being triaged by the triage teamPresently being triaged by the triage teamwaiting for customer responseThe Flutter team cannot make further progress on this issue until the original reporter respondsThe Flutter team cannot make further progress on this issue until the original reporter responds
