diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b7aeaa85..d6e742c4 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,8 +1,7 @@
-stages:
- - coverage
- - builddocs
- - deploy
- - publish
+include:
+ - project: "famedly/company/frontend/ci-templates"
+ ref: main
+ file: "/all.yml"
workflow:
rules:
@@ -16,7 +15,7 @@ variables:
coverage:
tags:
- linux
- stage: coverage
+ stage: test
image: registry.gitlab.com/famedly/company/frontend/flutter-dockerimages/flutter-linux/stable:${FLUTTER_IMAGE_TAG}
dependencies: []
script:
@@ -31,7 +30,7 @@ coverage:
coverage_without_olm:
tags:
- linux
- stage: coverage
+ stage: test
image: dart
dependencies: []
script:
@@ -41,7 +40,7 @@ coverage_without_olm:
e2ee_test:
tags:
- linux
- stage: coverage
+ stage: test
image: registry.gitlab.com/famedly/company/frontend/flutter-dockerimages/flutter-linux/stable:${FLUTTER_IMAGE_TAG}
dependencies: []
script:
@@ -51,35 +50,8 @@ e2ee_test:
timeout: 16m
resource_group: e2ee_test
-code_analyze:
- tags:
- - docker
- stage: coverage
- image: dart
- dependencies: []
- script:
- - dart pub get
- - dart format lib/ test/ test_driver/ --set-exit-if-changed
- - dart analyze
-
-code_quality:
- tags:
- - docker
- stage: coverage
- image: dart
- before_script:
- - dart pub global activate dart_code_metrics
- script:
- - dart pub global run dart_code_metrics:metrics analyze lib -r gitlab > code-quality-report.json
- artifacts:
- reports:
- codequality: code-quality-report.json
- # also create an actual artifact for inspection purposes
- paths:
- - code-quality-report.json
-
dry-run:
- stage: publish
+ stage: deploy
image: dart
script:
- rm -rf ./docs
@@ -88,7 +60,7 @@ dry-run:
pub-dev:
- stage: publish
+ stage: deploy
image: dart
dependencies: [
dry-run
diff --git a/lib/encryption/cross_signing.dart b/lib/encryption/cross_signing.dart
index 60d9a64c..ac4afed7 100644
--- a/lib/encryption/cross_signing.dart
+++ b/lib/encryption/cross_signing.dart
@@ -18,9 +18,9 @@
import 'dart:typed_data';
-import 'package:matrix/encryption/utils/base64_unpadded.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:matrix/encryption/utils/base64_unpadded.dart';
import '../matrix.dart';
import 'encryption.dart';
import 'ssss.dart';
diff --git a/lib/encryption/encryption.dart b/lib/encryption/encryption.dart
index 73e30406..19c8f508 100644
--- a/lib/encryption/encryption.dart
+++ b/lib/encryption/encryption.dart
@@ -16,8 +16,8 @@
* along with this program. If not, see .
*/
-import 'dart:convert';
import 'dart:async';
+import 'dart:convert';
import 'package:olm/olm.dart' as olm;
diff --git a/lib/encryption/key_manager.dart b/lib/encryption/key_manager.dart
index 2182ae6f..5fc4c3fb 100644
--- a/lib/encryption/key_manager.dart
+++ b/lib/encryption/key_manager.dart
@@ -19,16 +19,16 @@
import 'dart:async';
import 'dart:convert';
+import 'package:collection/collection.dart';
+import 'package:olm/olm.dart' as olm;
+
import 'package:matrix/encryption/utils/base64_unpadded.dart';
import 'package:matrix/encryption/utils/stored_inbound_group_session.dart';
-import 'package:olm/olm.dart' as olm;
-import 'package:collection/collection.dart';
-
+import '../matrix.dart';
+import '../src/utils/run_in_root.dart';
import './encryption.dart';
import './utils/outbound_group_session.dart';
import './utils/session_key.dart';
-import '../matrix.dart';
-import '../src/utils/run_in_root.dart';
const megolmKey = EventTypes.MegolmBackup;
diff --git a/lib/encryption/olm_manager.dart b/lib/encryption/olm_manager.dart
index 24529a4e..0a040733 100644
--- a/lib/encryption/olm_manager.dart
+++ b/lib/encryption/olm_manager.dart
@@ -21,9 +21,9 @@ import 'dart:convert';
import 'package:async/async.dart';
import 'package:canonical_json/canonical_json.dart';
import 'package:collection/collection.dart';
-import 'package:matrix/matrix.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:matrix/matrix.dart';
import '../encryption/utils/json_signature_check_extension.dart';
import '../src/utils/run_in_root.dart';
import 'encryption.dart';
diff --git a/lib/encryption/ssss.dart b/lib/encryption/ssss.dart
index 60e4dabf..9941b873 100644
--- a/lib/encryption/ssss.dart
+++ b/lib/encryption/ssss.dart
@@ -22,10 +22,10 @@ import 'dart:core';
import 'dart:typed_data';
import 'package:base58check/base58.dart';
-import 'package:crypto/crypto.dart';
import 'package:collection/collection.dart';
-import 'package:matrix/encryption/utils/base64_unpadded.dart';
+import 'package:crypto/crypto.dart';
+import 'package:matrix/encryption/utils/base64_unpadded.dart';
import '../matrix.dart';
import '../src/utils/crypto/crypto.dart' as uc;
import '../src/utils/run_in_root.dart';
diff --git a/lib/encryption/utils/bootstrap.dart b/lib/encryption/utils/bootstrap.dart
index 515d0744..62482dcc 100644
--- a/lib/encryption/utils/bootstrap.dart
+++ b/lib/encryption/utils/bootstrap.dart
@@ -22,10 +22,10 @@ import 'dart:typed_data';
import 'package:canonical_json/canonical_json.dart';
import 'package:olm/olm.dart' as olm;
-import '../encryption.dart';
-import '../ssss.dart';
-import '../key_manager.dart';
import '../../matrix.dart';
+import '../encryption.dart';
+import '../key_manager.dart';
+import '../ssss.dart';
import 'base64_unpadded.dart';
enum BootstrapState {
diff --git a/lib/encryption/utils/session_key.dart b/lib/encryption/utils/session_key.dart
index 310b1397..e219f658 100644
--- a/lib/encryption/utils/session_key.dart
+++ b/lib/encryption/utils/session_key.dart
@@ -16,10 +16,10 @@
* along with this program. If not, see .
*/
-import 'package:matrix/encryption/utils/stored_inbound_group_session.dart';
import 'package:matrix_api_lite/src/utils/filter_map_extension.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:matrix/encryption/utils/stored_inbound_group_session.dart';
import '../../matrix.dart';
class SessionKey {
diff --git a/lib/msc_extensions/msc_2835_uia_login/msc_2835_uia_login.dart b/lib/msc_extensions/msc_2835_uia_login/msc_2835_uia_login.dart
index e90a858a..d5b435de 100644
--- a/lib/msc_extensions/msc_2835_uia_login/msc_2835_uia_login.dart
+++ b/lib/msc_extensions/msc_2835_uia_login/msc_2835_uia_login.dart
@@ -3,6 +3,7 @@ library msc_2835_uia_login;
import 'dart:convert';
import 'package:http/http.dart' hide Client;
+
import 'package:matrix/matrix.dart';
extension UiaLogin on Client {
diff --git a/lib/src/client.dart b/lib/src/client.dart
index 56cb6d9b..ced85487 100644
--- a/lib/src/client.dart
+++ b/lib/src/client.dart
@@ -23,13 +23,13 @@ import 'dart:typed_data';
import 'package:collection/collection.dart' show IterableExtension;
import 'package:http/http.dart' as http;
-import 'package:matrix/src/utils/cached_stream_controller.dart';
-import 'package:matrix/src/utils/run_in_root.dart';
-import 'package:matrix/src/utils/sync_update_item_count.dart';
import 'package:mime/mime.dart';
import 'package:olm/olm.dart' as olm;
import 'package:random_string/random_string.dart';
+import 'package:matrix/src/utils/cached_stream_controller.dart';
+import 'package:matrix/src/utils/run_in_root.dart';
+import 'package:matrix/src/utils/sync_update_item_count.dart';
import '../encryption.dart';
import '../matrix.dart';
import 'utils/multilock.dart';
diff --git a/lib/src/database/database_api.dart b/lib/src/database/database_api.dart
index c8a65477..1d32f777 100644
--- a/lib/src/database/database_api.dart
+++ b/lib/src/database/database_api.dart
@@ -23,7 +23,6 @@ import 'package:matrix/encryption/utils/outbound_group_session.dart';
import 'package:matrix/encryption/utils/ssss_cache.dart';
import 'package:matrix/encryption/utils/stored_inbound_group_session.dart';
import 'package:matrix/src/utils/queued_to_device_event.dart';
-
import '../../matrix.dart';
abstract class DatabaseApi {
diff --git a/lib/src/database/fluffybox_database.dart b/lib/src/database/fluffybox_database.dart
index 804dcdda..c94c3069 100644
--- a/lib/src/database/fluffybox_database.dart
+++ b/lib/src/database/fluffybox_database.dart
@@ -23,6 +23,7 @@ import 'dart:typed_data';
import 'package:fluffybox/fluffybox.dart';
import 'package:fluffybox/hive.dart' show HiveCipher;
+
import 'package:matrix/encryption/utils/olm_session.dart';
import 'package:matrix/encryption/utils/outbound_group_session.dart';
import 'package:matrix/encryption/utils/ssss_cache.dart';
diff --git a/lib/src/database/hive_collections_database.dart b/lib/src/database/hive_collections_database.dart
index b9d10d26..2a5663b3 100644
--- a/lib/src/database/hive_collections_database.dart
+++ b/lib/src/database/hive_collections_database.dart
@@ -22,6 +22,7 @@ import 'dart:math';
import 'dart:typed_data';
import 'package:hive/hive.dart';
+
import 'package:matrix/encryption/utils/olm_session.dart';
import 'package:matrix/encryption/utils/outbound_group_session.dart';
import 'package:matrix/encryption/utils/ssss_cache.dart';
diff --git a/lib/src/database/hive_database.dart b/lib/src/database/hive_database.dart
index d8b285c0..cb5f6386 100644
--- a/lib/src/database/hive_database.dart
+++ b/lib/src/database/hive_database.dart
@@ -22,6 +22,7 @@ import 'dart:math';
import 'dart:typed_data';
import 'package:hive/hive.dart';
+
import 'package:matrix/encryption/utils/olm_session.dart';
import 'package:matrix/encryption/utils/outbound_group_session.dart';
import 'package:matrix/encryption/utils/ssss_cache.dart';
diff --git a/lib/src/event.dart b/lib/src/event.dart
index 6218cd97..385564b9 100644
--- a/lib/src/event.dart
+++ b/lib/src/event.dart
@@ -22,8 +22,8 @@ import 'dart:typed_data';
import 'package:collection/collection.dart';
import 'package:html/parser.dart';
import 'package:http/http.dart' as http;
-import 'package:matrix/src/utils/file_send_request_credentials.dart';
+import 'package:matrix/src/utils/file_send_request_credentials.dart';
import '../matrix.dart';
import 'utils/event_localizations.dart';
import 'utils/html_to_text.dart';
diff --git a/lib/src/room.dart b/lib/src/room.dart
index 6a6bfac0..ad17445d 100644
--- a/lib/src/room.dart
+++ b/lib/src/room.dart
@@ -22,12 +22,12 @@ import 'dart:typed_data';
import 'package:collection/collection.dart';
import 'package:html_unescape/html_unescape.dart';
+
import 'package:matrix/src/models/timeline_chunk.dart';
+import 'package:matrix/src/utils/cached_stream_controller.dart';
import 'package:matrix/src/utils/crypto/crypto.dart';
import 'package:matrix/src/utils/file_send_request_credentials.dart';
-import 'package:matrix/src/utils/cached_stream_controller.dart';
import 'package:matrix/src/utils/space_child.dart';
-
import '../matrix.dart';
import 'utils/markdown.dart';
import 'utils/marked_unread.dart';
diff --git a/lib/src/utils/crypto/crypto.dart b/lib/src/utils/crypto/crypto.dart
index 7bbddf80..a97417ee 100644
--- a/lib/src/utils/crypto/crypto.dart
+++ b/lib/src/utils/crypto/crypto.dart
@@ -18,8 +18,8 @@
export 'native.dart' if (dart.library.js) 'js.dart';
-import 'dart:typed_data';
import 'dart:math';
+import 'dart:typed_data';
Uint8List secureRandomBytes(int len) {
final rng = Random.secure();
diff --git a/lib/src/utils/crypto/encrypted_file.dart b/lib/src/utils/crypto/encrypted_file.dart
index d3dd874b..5d5dcbc1 100644
--- a/lib/src/utils/crypto/encrypted_file.dart
+++ b/lib/src/utils/crypto/encrypted_file.dart
@@ -15,11 +15,11 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
-import 'dart:typed_data';
+
import 'dart:convert';
+import 'dart:typed_data';
import 'package:matrix/encryption/utils/base64_unpadded.dart';
-
import 'crypto.dart';
class EncryptedFile {
diff --git a/lib/src/utils/crypto/ffi.dart b/lib/src/utils/crypto/ffi.dart
index f4415c14..ed32e2c9 100644
--- a/lib/src/utils/crypto/ffi.dart
+++ b/lib/src/utils/crypto/ffi.dart
@@ -15,6 +15,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
+
import 'dart:ffi';
import 'dart:io';
diff --git a/lib/src/utils/crypto/js.dart b/lib/src/utils/crypto/js.dart
index b889720a..7b6ad5f2 100644
--- a/lib/src/utils/crypto/js.dart
+++ b/lib/src/utils/crypto/js.dart
@@ -3,8 +3,8 @@
import 'dart:typed_data';
-import 'subtle.dart';
import 'subtle.dart' as subtle;
+import 'subtle.dart';
abstract class Hash {
Hash._(this.name);
diff --git a/lib/src/utils/crypto/native.dart b/lib/src/utils/crypto/native.dart
index ce317859..e66c0b7a 100644
--- a/lib/src/utils/crypto/native.dart
+++ b/lib/src/utils/crypto/native.dart
@@ -1,6 +1,7 @@
import 'dart:async';
-import 'dart:typed_data';
import 'dart:ffi';
+import 'dart:typed_data';
+
import 'package:ffi/ffi.dart';
import 'ffi.dart';
diff --git a/lib/src/utils/crypto/subtle.dart b/lib/src/utils/crypto/subtle.dart
index a96ea31c..34997373 100644
--- a/lib/src/utils/crypto/subtle.dart
+++ b/lib/src/utils/crypto/subtle.dart
@@ -4,11 +4,12 @@
@JS()
library subtle;
-import 'package:js/js.dart';
import 'dart:async';
import 'dart:js_util';
import 'dart:typed_data';
+import 'package:js/js.dart';
+
@JS()
@anonymous
class Pbkdf2Params {
diff --git a/lib/src/utils/device_keys_list.dart b/lib/src/utils/device_keys_list.dart
index baaa298e..7265dec4 100644
--- a/lib/src/utils/device_keys_list.dart
+++ b/lib/src/utils/device_keys_list.dart
@@ -20,9 +20,9 @@ import 'dart:convert';
import 'package:canonical_json/canonical_json.dart';
import 'package:collection/collection.dart' show IterableExtension;
-import 'package:matrix/matrix.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:matrix/matrix.dart';
import '../../encryption.dart';
enum UserVerifiedStatus { verified, unknown, unknownDevice }
diff --git a/lib/src/utils/html_to_text.dart b/lib/src/utils/html_to_text.dart
index aa4d0bf2..ba216ccc 100644
--- a/lib/src/utils/html_to_text.dart
+++ b/lib/src/utils/html_to_text.dart
@@ -17,9 +17,8 @@
*/
import 'package:collection/collection.dart';
-
-import 'package:html/parser.dart';
import 'package:html/dom.dart';
+import 'package:html/parser.dart';
import 'package:html_unescape/html_unescape.dart';
class HtmlToText {
diff --git a/lib/src/utils/image_pack_extension.dart b/lib/src/utils/image_pack_extension.dart
index 92b3b924..d5b9e3ff 100644
--- a/lib/src/utils/image_pack_extension.dart
+++ b/lib/src/utils/image_pack_extension.dart
@@ -16,8 +16,8 @@
* along with this program. If not, see .
*/
-import 'package:slugify/slugify.dart';
import 'package:matrix_api_lite/matrix_api_lite.dart';
+import 'package:slugify/slugify.dart';
import '../room.dart';
diff --git a/lib/src/utils/markdown.dart b/lib/src/utils/markdown.dart
index 0924e9dc..56507908 100644
--- a/lib/src/utils/markdown.dart
+++ b/lib/src/utils/markdown.dart
@@ -16,9 +16,10 @@
* along with this program. If not, see .
*/
-import 'package:markdown/markdown.dart';
import 'dart:convert';
+import 'package:markdown/markdown.dart';
+
const htmlAttrEscape = HtmlEscape(HtmlEscapeMode.attribute);
class LinebreakSyntax extends InlineSyntax {
diff --git a/lib/src/utils/matrix_default_localizations.dart b/lib/src/utils/matrix_default_localizations.dart
index 4ad60ab2..28736a41 100644
--- a/lib/src/utils/matrix_default_localizations.dart
+++ b/lib/src/utils/matrix_default_localizations.dart
@@ -15,6 +15,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
+
import 'package:matrix/matrix.dart';
class MatrixDefaultLocalizations extends MatrixLocalizations {
diff --git a/lib/src/utils/multilock.dart b/lib/src/utils/multilock.dart
index 035232ef..852527e2 100644
--- a/lib/src/utils/multilock.dart
+++ b/lib/src/utils/multilock.dart
@@ -15,6 +15,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
+
import 'dart:async';
/// Lock management class. It allows to lock and unlock multiple keys at once. The keys have
diff --git a/lib/src/utils/queued_to_device_event.dart b/lib/src/utils/queued_to_device_event.dart
index 3296510f..71657aec 100644
--- a/lib/src/utils/queued_to_device_event.dart
+++ b/lib/src/utils/queued_to_device_event.dart
@@ -15,6 +15,7 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
+
import 'dart:convert';
class QueuedToDeviceEvent {
diff --git a/lib/src/voip/call.dart b/lib/src/voip/call.dart
index 9e7f34ed..4943897f 100644
--- a/lib/src/voip/call.dart
+++ b/lib/src/voip/call.dart
@@ -19,9 +19,9 @@
import 'dart:async';
import 'dart:core';
-import 'package:matrix/src/utils/cached_stream_controller.dart';
import 'package:webrtc_interface/webrtc_interface.dart';
+import 'package:matrix/src/utils/cached_stream_controller.dart';
import '../../matrix.dart';
/// https://github.com/matrix-org/matrix-doc/pull/2746
diff --git a/lib/src/voip/group_call.dart b/lib/src/voip/group_call.dart
index 3646509c..eb60c7e7 100644
--- a/lib/src/voip/group_call.dart
+++ b/lib/src/voip/group_call.dart
@@ -19,9 +19,10 @@
import 'dart:async';
import 'dart:core';
+import 'package:webrtc_interface/webrtc_interface.dart';
+
import 'package:matrix/matrix.dart';
import 'package:matrix/src/utils/cached_stream_controller.dart';
-import 'package:webrtc_interface/webrtc_interface.dart';
/// TODO(@duan): Need to add voice activity detection mechanism
/// const int SPEAKING_THRESHOLD = -60; // dB
diff --git a/lib/src/voip/voip.dart b/lib/src/voip/voip.dart
index 134da839..4d7ee3de 100644
--- a/lib/src/voip/voip.dart
+++ b/lib/src/voip/voip.dart
@@ -1,9 +1,9 @@
import 'dart:core';
-import 'package:matrix/src/utils/cached_stream_controller.dart';
-import 'package:webrtc_interface/webrtc_interface.dart';
import 'package:sdp_transform/sdp_transform.dart' as sdp_transform;
+import 'package:webrtc_interface/webrtc_interface.dart';
+import 'package:matrix/src/utils/cached_stream_controller.dart';
import '../../matrix.dart';
/// Delegate WebRTC basic functionality.
diff --git a/pubspec.yaml b/pubspec.yaml
index 07f0346e..2f2b4737 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -32,6 +32,7 @@ dependencies:
fluffybox: ^0.4.3
dev_dependencies:
+ import_sorter: ^4.6.0
dart_code_metrics: ^4.10.1
pedantic: ^1.11.0
test: ^1.15.7
diff --git a/test/canonical_json_test.dart b/test/canonical_json_test.dart
index 8787dce0..9cdddd36 100644
--- a/test/canonical_json_test.dart
+++ b/test/canonical_json_test.dart
@@ -17,9 +17,10 @@
*/
import 'package:canonical_json/canonical_json.dart';
-import 'package:matrix/matrix.dart';
import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
+
void main() {
/// All Tests related to the ChatTime
group('Canonical Json', () {
diff --git a/test/client_test.dart b/test/client_test.dart
index aa4e7ddf..3c32031a 100644
--- a/test/client_test.dart
+++ b/test/client_test.dart
@@ -20,12 +20,11 @@ import 'dart:async';
import 'dart:convert';
import 'dart:typed_data';
-import 'package:matrix/matrix.dart';
-
+import 'package:canonical_json/canonical_json.dart';
import 'package:olm/olm.dart' as olm;
import 'package:test/test.dart';
-import 'package:canonical_json/canonical_json.dart';
+import 'package:matrix/matrix.dart';
import 'fake_client.dart';
import 'fake_database.dart';
import 'fake_matrix_api.dart';
diff --git a/test/commands_test.dart b/test/commands_test.dart
index 10d7f103..053afc5d 100644
--- a/test/commands_test.dart
+++ b/test/commands_test.dart
@@ -18,8 +18,9 @@
import 'dart:convert';
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+
import 'package:matrix/matrix.dart';
import 'fake_client.dart';
import 'fake_matrix_api.dart';
diff --git a/test/database_api_test.dart b/test/database_api_test.dart
index 6a7fa540..43efdd84 100644
--- a/test/database_api_test.dart
+++ b/test/database_api_test.dart
@@ -15,14 +15,15 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
+
+import 'dart:async';
import 'dart:convert';
import 'dart:typed_data';
-import 'dart:async';
+
+import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
import 'package:matrix/matrix.dart';
-import 'package:test/test.dart';
-import 'package:olm/olm.dart' as olm;
-
import 'fake_database.dart';
void main() {
diff --git a/test/device_keys_list_test.dart b/test/device_keys_list_test.dart
index a1bdc991..36b2ad8e 100644
--- a/test/device_keys_list_test.dart
+++ b/test/device_keys_list_test.dart
@@ -18,11 +18,10 @@
import 'dart:convert';
-import 'package:matrix/matrix.dart';
-
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
import './fake_client.dart';
import './fake_matrix_api.dart';
diff --git a/test/encryption/bootstrap_test.dart b/test/encryption/bootstrap_test.dart
index 69a643fe..428c795d 100644
--- a/test/encryption/bootstrap_test.dart
+++ b/test/encryption/bootstrap_test.dart
@@ -19,12 +19,11 @@
import 'dart:async';
import 'dart:convert';
-import 'package:matrix/matrix.dart';
-import 'package:matrix/encryption.dart';
-
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+import 'package:matrix/encryption.dart';
+import 'package:matrix/matrix.dart';
import '../fake_client.dart';
void main() {
diff --git a/test/encryption/cross_signing_test.dart b/test/encryption/cross_signing_test.dart
index 0ceb1e73..15bb22ca 100644
--- a/test/encryption/cross_signing_test.dart
+++ b/test/encryption/cross_signing_test.dart
@@ -18,11 +18,10 @@
import 'dart:convert';
-import 'package:matrix/matrix.dart';
-
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
import '../fake_client.dart';
import '../fake_matrix_api.dart';
diff --git a/test/encryption/encrypt_decrypt_room_message_test.dart b/test/encryption/encrypt_decrypt_room_message_test.dart
index bc2e007e..d150e3fc 100644
--- a/test/encryption/encrypt_decrypt_room_message_test.dart
+++ b/test/encryption/encrypt_decrypt_room_message_test.dart
@@ -16,11 +16,10 @@
* along with this program. If not, see .
*/
-import 'package:matrix/matrix.dart';
-
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
import '../fake_client.dart';
void main() {
diff --git a/test/encryption/encrypt_decrypt_to_device_test.dart b/test/encryption/encrypt_decrypt_to_device_test.dart
index 42fb4b2e..10904eae 100644
--- a/test/encryption/encrypt_decrypt_to_device_test.dart
+++ b/test/encryption/encrypt_decrypt_to_device_test.dart
@@ -16,11 +16,10 @@
* along with this program. If not, see .
*/
-import 'package:matrix/matrix.dart';
-
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
import '../fake_client.dart';
import '../fake_database.dart';
import '../fake_matrix_api.dart';
diff --git a/test/encryption/key_manager_test.dart b/test/encryption/key_manager_test.dart
index f22cf5de..d9f0e77f 100644
--- a/test/encryption/key_manager_test.dart
+++ b/test/encryption/key_manager_test.dart
@@ -18,11 +18,10 @@
import 'dart:convert';
-import 'package:matrix/matrix.dart';
-
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
import '../fake_client.dart';
import '../fake_matrix_api.dart';
diff --git a/test/encryption/key_request_test.dart b/test/encryption/key_request_test.dart
index 5bb53769..4470e1b0 100644
--- a/test/encryption/key_request_test.dart
+++ b/test/encryption/key_request_test.dart
@@ -17,11 +17,11 @@
*/
import 'dart:convert';
-import 'package:matrix/matrix.dart';
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
import '../fake_client.dart';
import '../fake_matrix_api.dart';
diff --git a/test/encryption/key_verification_test.dart b/test/encryption/key_verification_test.dart
index 82eaf0bc..d6dc9aa0 100644
--- a/test/encryption/key_verification_test.dart
+++ b/test/encryption/key_verification_test.dart
@@ -19,12 +19,11 @@
import 'dart:async';
import 'dart:convert';
-import 'package:matrix/matrix.dart';
-import 'package:matrix/encryption.dart';
-
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+import 'package:matrix/encryption.dart';
+import 'package:matrix/matrix.dart';
import '../fake_client.dart';
import '../fake_database.dart';
import '../fake_matrix_api.dart';
diff --git a/test/encryption/olm_manager_test.dart b/test/encryption/olm_manager_test.dart
index 514aa38b..5792b761 100644
--- a/test/encryption/olm_manager_test.dart
+++ b/test/encryption/olm_manager_test.dart
@@ -17,12 +17,12 @@
*/
import 'dart:convert';
-import 'package:matrix/matrix.dart';
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
-import 'package:matrix/encryption/utils/json_signature_check_extension.dart';
+import 'package:test/test.dart';
+import 'package:matrix/encryption/utils/json_signature_check_extension.dart';
+import 'package:matrix/matrix.dart';
import '../fake_client.dart';
import '../fake_matrix_api.dart';
diff --git a/test/encryption/online_key_backup_test.dart b/test/encryption/online_key_backup_test.dart
index a966545e..aa46ecfd 100644
--- a/test/encryption/online_key_backup_test.dart
+++ b/test/encryption/online_key_backup_test.dart
@@ -18,11 +18,10 @@
import 'dart:convert';
-import 'package:matrix/matrix.dart';
-
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
import '../fake_client.dart';
import '../fake_matrix_api.dart';
diff --git a/test/encryption/ssss_test.dart b/test/encryption/ssss_test.dart
index 301ddf0b..d7a9e7f4 100644
--- a/test/encryption/ssss_test.dart
+++ b/test/encryption/ssss_test.dart
@@ -16,16 +16,15 @@
* along with this program. If not, see .
*/
-import 'dart:typed_data';
import 'dart:convert';
import 'dart:math';
+import 'dart:typed_data';
-import 'package:matrix/matrix.dart';
-import 'package:matrix/encryption.dart';
-
-import 'package:test/test.dart';
import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+import 'package:matrix/encryption.dart';
+import 'package:matrix/matrix.dart';
import '../fake_client.dart';
import '../fake_matrix_api.dart';
diff --git a/test/encryption/utils_test.dart b/test/encryption/utils_test.dart
index b21d0990..59e79a58 100644
--- a/test/encryption/utils_test.dart
+++ b/test/encryption/utils_test.dart
@@ -18,9 +18,10 @@
import 'dart:convert';
+import 'package:test/test.dart';
+
import 'package:matrix/encryption/utils/base64_unpadded.dart';
import 'package:matrix/matrix.dart';
-import 'package:test/test.dart';
void main() {
group('Utils', () {
diff --git a/test/event_test.dart b/test/event_test.dart
index e03cf41f..8cc4edd2 100644
--- a/test/event_test.dart
+++ b/test/event_test.dart
@@ -19,12 +19,12 @@
import 'dart:convert';
import 'dart:typed_data';
-import 'package:matrix/encryption.dart';
-import 'package:matrix/matrix.dart';
-import 'package:matrix/src/models/timeline_chunk.dart';
import 'package:olm/olm.dart' as olm;
import 'package:test/test.dart';
+import 'package:matrix/encryption.dart';
+import 'package:matrix/matrix.dart';
+import 'package:matrix/src/models/timeline_chunk.dart';
import 'fake_client.dart';
import 'fake_matrix_api.dart';
diff --git a/test/fake_client.dart b/test/fake_client.dart
index f7afd062..acfb5e04 100644
--- a/test/fake_client.dart
+++ b/test/fake_client.dart
@@ -17,9 +17,8 @@
*/
import 'package:matrix/matrix.dart';
-
-import 'fake_matrix_api.dart';
import 'fake_database.dart';
+import 'fake_matrix_api.dart';
const ssssPassphrase = 'nae7ahDiequ7ohniufah3ieS2je1thohX4xeeka7aixohsho9O';
const ssssKey = 'EsT9 RzbW VhPW yqNp cC7j ViiW 5TZB LuY4 ryyv 9guN Ysmr WDPH';
diff --git a/test/fake_database.dart b/test/fake_database.dart
index 6c076fcb..5e78e25c 100644
--- a/test/fake_database.dart
+++ b/test/fake_database.dart
@@ -19,10 +19,11 @@
import 'dart:io';
import 'dart:math';
-import 'package:matrix/matrix.dart';
import 'package:file/memory.dart';
import 'package:hive/hive.dart';
+import 'package:matrix/matrix.dart';
+
Future getDatabase(Client? _) => getHiveCollectionsDatabase(_);
bool hiveInitialized = false;
diff --git a/test/fake_matrix_api.dart b/test/fake_matrix_api.dart
index eec6d180..ac706306 100644
--- a/test/fake_matrix_api.dart
+++ b/test/fake_matrix_api.dart
@@ -22,6 +22,7 @@ import 'dart:core';
import 'dart:math';
import 'package:http/http.dart';
+
import 'package:matrix/matrix.dart' as sdk;
import 'package:matrix/matrix.dart';
diff --git a/test/html_to_text_test.dart b/test/html_to_text_test.dart
index 9dde56e7..27ba947a 100644
--- a/test/html_to_text_test.dart
+++ b/test/html_to_text_test.dart
@@ -16,9 +16,10 @@
* along with this program. If not, see .
*/
-import 'package:matrix/src/utils/html_to_text.dart';
import 'package:test/test.dart';
+import 'package:matrix/src/utils/html_to_text.dart';
+
void main() {
group('htmlToText', () {
final testMap = {
diff --git a/test/image_pack_test.dart b/test/image_pack_test.dart
index 513dd7c5..c801d2c3 100644
--- a/test/image_pack_test.dart
+++ b/test/image_pack_test.dart
@@ -17,6 +17,7 @@
*/
import 'package:test/test.dart';
+
import 'package:matrix/matrix.dart';
import 'fake_client.dart';
diff --git a/test/markdown_test.dart b/test/markdown_test.dart
index 2c3dab85..dac27912 100644
--- a/test/markdown_test.dart
+++ b/test/markdown_test.dart
@@ -16,9 +16,10 @@
* along with this program. If not, see .
*/
-import 'package:matrix/src/utils/markdown.dart';
import 'package:test/test.dart';
+import 'package:matrix/src/utils/markdown.dart';
+
void main() {
group('markdown', () {
final emotePacks = {
diff --git a/test/matrix_api/map_copy_extension_test.dart b/test/matrix_api/map_copy_extension_test.dart
index e7027952..56a21936 100644
--- a/test/matrix_api/map_copy_extension_test.dart
+++ b/test/matrix_api/map_copy_extension_test.dart
@@ -16,9 +16,10 @@
* along with this program. If not, see .
*/
-import 'package:matrix/src/utils/map_copy_extension.dart';
import 'package:test/test.dart';
+import 'package:matrix/src/utils/map_copy_extension.dart';
+
void main() {
group('Map-copy-extension', () {
test('it should work', () {
diff --git a/test/matrix_database_test.dart b/test/matrix_database_test.dart
index 0c88c612..6c333e9b 100644
--- a/test/matrix_database_test.dart
+++ b/test/matrix_database_test.dart
@@ -17,9 +17,9 @@
*
*/
-import 'package:matrix/matrix.dart';
-
import 'package:test/test.dart';
+
+import 'package:matrix/matrix.dart';
import 'fake_database.dart';
void main() {
diff --git a/test/matrix_exception_test.dart b/test/matrix_exception_test.dart
index 5378f325..f9769edd 100644
--- a/test/matrix_exception_test.dart
+++ b/test/matrix_exception_test.dart
@@ -15,11 +15,12 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
-import 'package:matrix/matrix.dart';
-import 'package:http/http.dart';
+import 'package:http/http.dart';
import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
+
void main() {
/// All Tests related to device keys
group('Matrix Exception', () {
diff --git a/test/matrix_file_test.dart b/test/matrix_file_test.dart
index 7f6aef06..cd36b1ae 100644
--- a/test/matrix_file_test.dart
+++ b/test/matrix_file_test.dart
@@ -18,11 +18,11 @@
import 'dart:typed_data';
-import 'package:matrix/matrix.dart';
-
-import 'package:test/test.dart';
-import 'package:olm/olm.dart' as olm;
import 'package:http/http.dart' as http;
+import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+
+import 'package:matrix/matrix.dart';
void main() {
/// All Tests related to device keys
diff --git a/test/matrix_id_string_extension_test.dart b/test/matrix_id_string_extension_test.dart
index e5fd2842..5b9c0072 100644
--- a/test/matrix_id_string_extension_test.dart
+++ b/test/matrix_id_string_extension_test.dart
@@ -17,6 +17,7 @@
*/
import 'package:test/test.dart';
+
import 'package:matrix/src/utils/matrix_id_string_extension.dart';
void main() {
diff --git a/test/matrix_localizations_test.dart b/test/matrix_localizations_test.dart
index 53e9a6b7..4c72451b 100644
--- a/test/matrix_localizations_test.dart
+++ b/test/matrix_localizations_test.dart
@@ -15,9 +15,11 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
-import 'package:matrix/matrix.dart';
+
import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
+
void main() {
/// All Tests related to device keys
group('Matrix Localizations', () {
diff --git a/test/multilock_test.dart b/test/multilock_test.dart
index 292b1e4e..d973e87f 100644
--- a/test/multilock_test.dart
+++ b/test/multilock_test.dart
@@ -16,9 +16,10 @@
* along with this program. If not, see .
*/
-import 'package:matrix/src/utils/multilock.dart';
import 'package:test/test.dart';
+import 'package:matrix/src/utils/multilock.dart';
+
void main() {
group('lock', () {
final lock = MultiLock();
diff --git a/test/mxc_uri_extension_test.dart b/test/mxc_uri_extension_test.dart
index b2248a35..290265b2 100644
--- a/test/mxc_uri_extension_test.dart
+++ b/test/mxc_uri_extension_test.dart
@@ -16,10 +16,9 @@
* along with this program. If not, see .
*/
-import 'package:matrix/matrix.dart';
-
import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
import 'fake_matrix_api.dart';
void main() {
diff --git a/test/push_notification.dart b/test/push_notification.dart
index 330a4c29..f35220da 100644
--- a/test/push_notification.dart
+++ b/test/push_notification.dart
@@ -1,8 +1,9 @@
import 'dart:convert';
-import 'package:matrix/matrix.dart';
import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
+
void main() {
group('Push Notification', () {
Logs().level = Level.error;
diff --git a/test/room_test.dart b/test/room_test.dart
index b723a0e9..f6bb0481 100644
--- a/test/room_test.dart
+++ b/test/room_test.dart
@@ -19,10 +19,9 @@
import 'dart:convert';
import 'dart:typed_data';
-import 'package:matrix/matrix.dart';
-
import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
import 'fake_client.dart';
import 'fake_matrix_api.dart';
diff --git a/test/sync_filter_test.dart b/test/sync_filter_test.dart
index bb0b2630..60d1ed56 100644
--- a/test/sync_filter_test.dart
+++ b/test/sync_filter_test.dart
@@ -16,10 +16,10 @@
* along with this program. If not, see .
*/
-import 'package:matrix/matrix.dart';
-
import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
+
const updates = {
'empty': {
'next_batch': 'blah',
diff --git a/test/timeline_context_test.dart b/test/timeline_context_test.dart
index 20d6d3e3..466330a0 100644
--- a/test/timeline_context_test.dart
+++ b/test/timeline_context_test.dart
@@ -18,11 +18,11 @@
import 'dart:async';
+import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+
import 'package:matrix/matrix.dart';
import 'package:matrix/src/models/timeline_chunk.dart';
-
-import 'package:test/test.dart';
-import 'package:olm/olm.dart' as olm;
import 'fake_client.dart';
import 'fake_matrix_api.dart';
diff --git a/test/timeline_test.dart b/test/timeline_test.dart
index e43182b0..38b69d26 100644
--- a/test/timeline_test.dart
+++ b/test/timeline_test.dart
@@ -19,11 +19,11 @@
import 'dart:async';
import 'dart:math';
+import 'package:olm/olm.dart' as olm;
+import 'package:test/test.dart';
+
import 'package:matrix/matrix.dart';
import 'package:matrix/src/models/timeline_chunk.dart';
-
-import 'package:test/test.dart';
-import 'package:olm/olm.dart' as olm;
import 'fake_client.dart';
void main() {
diff --git a/test/uia_test.dart b/test/uia_test.dart
index f8300936..fd733419 100644
--- a/test/uia_test.dart
+++ b/test/uia_test.dart
@@ -18,10 +18,10 @@
import 'dart:async';
-import 'package:matrix/matrix.dart';
-
import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
+
void main() {
group('UIA', () {
Logs().level = Level.error;
diff --git a/test/user_test.dart b/test/user_test.dart
index bead02cd..c88b75c1 100644
--- a/test/user_test.dart
+++ b/test/user_test.dart
@@ -16,10 +16,9 @@
* along with this program. If not, see .
*/
-import 'package:matrix/matrix.dart';
-
import 'package:test/test.dart';
+import 'package:matrix/matrix.dart';
import 'fake_matrix_api.dart';
void main() {
diff --git a/test_driver/matrixsdk_test.dart b/test_driver/matrixsdk_test.dart
index 72844e51..e0354c7c 100644
--- a/test_driver/matrixsdk_test.dart
+++ b/test_driver/matrixsdk_test.dart
@@ -15,11 +15,13 @@
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
*/
+
import 'package:hive/hive.dart';
+import 'package:olm/olm.dart' as olm;
+
import 'package:matrix/matrix.dart';
import '../test/fake_database.dart';
import 'test_config.dart';
-import 'package:olm/olm.dart' as olm;
void main() => test();
const String testMessage = 'Hello world';