import 'package:flutter_test/flutter_test.dart'; import 'package:slothmu/business_logic/user.dart'; void main() { validUsernameTest(); usernameToUrlTest(); cleanupNameTest(); userFromUsernameTest(); } void validUsernameTest() { test("test if usernames are valid", () { expect(isValidUsername(name: "hello world"), false); expect(isValidUsername(name: ""), false); expect(isValidUsername(name: "hello@world"), false); expect(isValidUsername(name: "@hello@world"), false); expect(isValidUsername(name: "@hello@world."), false); expect(isValidUsername(name: "@hello@world.example"), true); expect(isValidUsername(name: "hello@world.example"), true); expect(isValidUsername(name: "noodles.noodles@gts.example.world.example"), true); }); } void usernameToUrlTest() { test("try valid transforming usernames into a url", () { expect(urlFromUsername(name: "hello@example.com"), "example.com"); expect(urlFromUsername(name: "h@e.c"), "e.c"); }); } void cleanupNameTest() { test("try cleaning up a username", () { expect(cleanUpUsername(name: "@ s o up @ s oup . par ty "), "soup@soup.party"); expect(cleanUpUsername(name: ""), ""); }); } void userFromUsernameTest() { test("try extracting user from the full valid user id", () { expect(userFromUsername(name: "@hello@world"), "hello"); expect(userFromUsername(name: "@john@from.garfield"), "john"); }); }