Skip to content

Instantly share code, notes, and snippets.

View nawalhmw's full-sized avatar
:octocat:
Open2Freelancing

Nawal Alhamwi nawalhmw

:octocat:
Open2Freelancing
View GitHub Profile
//this code belongs to https://fluttercompletereference.com/
//Chapter 16: Test Driver
//******************************************************************************
import 'package:flutter_driver/driver_extension.dart';
import 'package:counter_app/main.dart' as app;
void main() {
enableFlutterDriverExtension();
//this code belongs to https://fluttercompletereference.com/
//Chapter 16: Test Driver
//******************************************************************************
import 'package:flutter_driver/flutter_driver.dart';
import 'package:test/test.dart';
void main() {
group("Counter app test", () {
final counterText = find.byValueKey("counter");
//this code belongs to https://fluttercompletereference.com/
//Chapter 17: HTTP Requests
//******************************************************************************
void main() => runApp(DemoApp());
class DemoApp extends StatelessWidget {
final req = const RequestItem(
url: "https://jsonplaceholder.typicode.com/posts/10"
);
//this code belongs to https://fluttercompletereference.com/
//Chapter 17: HTTP Requests
//******************************************************************************
class Item {
final int id;
final String title;
Item({
required this.id,
required this.title
//this code belongs to https://fluttercompletereference.com/
//Chapter 17: HTTP Requests
//******************************************************************************
abstract class HTTPRequest<T> {
Future<T> execute();
}
//this code belongs to https://fluttercompletereference.com/
//Chapter 17: HTTP Requests
//******************************************************************************
class RequestItem implements HTTPRequest<Item> {
final String url;
const RequestItem({ required this.url });
Future<Item> execute() async {
//this code belongs to https://fluttercompletereference.com/
//Chapter 17: HTTP Requests
//******************************************************************************
class HTTPWidget extends StatefulWidget {
final HTTPRequest<Item> _request;
const HTTPWidget(this._request);
@override
//this code belongs to https://fluttercompletereference.com/
//Chapter 17: HTTP Requests
//******************************************************************************
class SuccessItemWidget extends StatelessWidget {
final Item? data;
const SuccessItemWidget(this.data);
@override
Widget build(BuildContext context) {
//this code belongs to https://fluttercompletereference.com/
//Chapter 17: HTTP Requests
//******************************************************************************
class ErrorItemWidget extends StatelessWidget {
const ErrorItemWidget();
@override
Widget build(BuildContext context) {
//this code belongs to https://fluttercompletereference.com/
//Chapter 17: Files Download
//******************************************************************************
void main() => runApp(DemoApp());
class DemoApp extends StatelessWidget {
const DemoApp();
@override