2025-10-19 00:45:17 +00:00
|
|
|
import 'dart:convert';
|
2025-07-18 19:59:11 +00:00
|
|
|
import 'dart:typed_data';
|
|
|
|
|
|
2024-12-31 08:50:53 +00:00
|
|
|
import 'package:flutter_test/flutter_test.dart';
|
2025-10-19 00:45:17 +00:00
|
|
|
import 'package:hashlib/random.dart';
|
2025-07-18 19:59:11 +00:00
|
|
|
import 'package:twonly/src/services/api/media_upload.dart';
|
|
|
|
|
import 'package:twonly/src/utils/pow.dart';
|
2025-04-21 19:32:18 +00:00
|
|
|
import 'package:twonly/src/views/components/animate_icon.dart';
|
2024-12-31 08:50:53 +00:00
|
|
|
|
|
|
|
|
void main() {
|
2025-07-18 19:59:11 +00:00
|
|
|
group('testing utils', () {
|
2025-04-14 19:30:40 +00:00
|
|
|
test('test isEmoji function', () {
|
2025-07-15 11:38:38 +00:00
|
|
|
expect(isEmoji('Hallo'), false);
|
|
|
|
|
expect(isEmoji('😂'), true);
|
|
|
|
|
expect(isEmoji('😂😂'), false);
|
|
|
|
|
expect(isEmoji('Hallo 😂'), false);
|
2024-12-31 08:50:53 +00:00
|
|
|
});
|
2025-07-18 19:59:11 +00:00
|
|
|
|
|
|
|
|
test('test proof-of-work simple', () async {
|
|
|
|
|
expect(await calculatePoW(Uint8List.fromList([41, 41, 41, 41]), 6), 33);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
test('test utils', () async {
|
|
|
|
|
final list1 = Uint8List.fromList([41, 41, 41, 41, 41, 41, 41]);
|
|
|
|
|
final list2 = Uint8List.fromList([42, 42, 42]);
|
|
|
|
|
final combined = combineUint8Lists(list1, list2);
|
|
|
|
|
final lists = extractUint8Lists(combined);
|
|
|
|
|
expect(list1, lists[0]);
|
|
|
|
|
expect(list2, lists[1]);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
test('encode hex', () async {
|
|
|
|
|
final list1 = Uint8List.fromList([41, 41, 41, 41, 41, 41, 41]);
|
|
|
|
|
expect(list1, hexToUint8List(uint8ListToHex(list1)));
|
|
|
|
|
});
|
2025-10-19 00:45:17 +00:00
|
|
|
|
|
|
|
|
test('encoding uuid4', () async {
|
|
|
|
|
final uv4 = uuid.v4();
|
|
|
|
|
final uv4Bytes = Uint8List.fromList(uv4.codeUnits);
|
|
|
|
|
final uv4String = utf8.decode(uv4Bytes.cast<int>());
|
|
|
|
|
expect(uv4String, uv4);
|
|
|
|
|
});
|
2024-12-31 08:50:53 +00:00
|
|
|
});
|
|
|
|
|
}
|