add network folder and test
This commit is contained in:
@@ -74,6 +74,9 @@ workflows:
|
|||||||
cd ../contact
|
cd ../contact
|
||||||
flutter pub get && flutter pub run build_runner build --delete-conflicting-outputs
|
flutter pub get && flutter pub run build_runner build --delete-conflicting-outputs
|
||||||
|
|
||||||
|
cd ../rule_filter
|
||||||
|
flutter pub get && flutter pub run build_runner build --delete-conflicting-outputs
|
||||||
|
|
||||||
cd ..
|
cd ..
|
||||||
flutter pub get && flutter pub run build_runner build --delete-conflicting-outputs
|
flutter pub get && flutter pub run build_runner build --delete-conflicting-outputs
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,6 @@
|
|||||||
.buildlog/
|
.buildlog/
|
||||||
.history
|
.history
|
||||||
.svn/
|
.svn/
|
||||||
migrate_working_dir/
|
|
||||||
|
|
||||||
# IntelliJ related
|
# IntelliJ related
|
||||||
*.iml
|
*.iml
|
||||||
@@ -28,3 +27,7 @@ migrate_working_dir/
|
|||||||
.dart_tool/
|
.dart_tool/
|
||||||
.packages
|
.packages
|
||||||
build/
|
build/
|
||||||
|
|
||||||
|
#generated file
|
||||||
|
*.g.dart
|
||||||
|
*.mocks.dart
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
import 'package:jmap_dart_client/jmap/account_id.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/tmail_rule.dart';
|
||||||
|
|
||||||
|
abstract class RuleFilterDataSource {
|
||||||
|
Future<List<TMailRule>> getListTMailRule(AccountId accountId);
|
||||||
|
|
||||||
|
Future<void> updateListTMailRule(
|
||||||
|
List<TMailRule> listTMailRuleKeep,
|
||||||
|
List<TMailRule> listTMailRuleUpdate,
|
||||||
|
AccountId accountId,
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -0,0 +1,45 @@
|
|||||||
|
import 'package:jmap_dart_client/jmap/account_id.dart';
|
||||||
|
import 'package:rule_filter/data/datasource/rule_filter_datasource.dart';
|
||||||
|
import 'package:rule_filter/data/network/rule_filter_api.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/tmail_rule.dart';
|
||||||
|
|
||||||
|
class RuleFilterDataSourceImpl extends RuleFilterDataSource {
|
||||||
|
final RuleFilterAPI _ruleFilterAPI;
|
||||||
|
|
||||||
|
RuleFilterDataSourceImpl(this._ruleFilterAPI);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<List<TMailRule>> getListTMailRule(AccountId accountId) {
|
||||||
|
return Future.sync(() async {
|
||||||
|
final listTMailRules = await _ruleFilterAPI.getListTMailRule(accountId);
|
||||||
|
return listTMailRules;
|
||||||
|
}).catchError((error) {
|
||||||
|
throw error;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<void> updateListTMailRule(
|
||||||
|
List<TMailRule> listTMailRuleKeep,
|
||||||
|
List<TMailRule> listTMailRuleUpdate,
|
||||||
|
AccountId accountId,
|
||||||
|
) {
|
||||||
|
final List<TMailRule> listTMailRule = List.empty(growable: true);
|
||||||
|
listTMailRule.addAll(listTMailRuleUpdate);
|
||||||
|
for (var itemTMailRuleKeep in listTMailRuleKeep) {
|
||||||
|
if (listTMailRuleUpdate
|
||||||
|
.where((itemTMailRuleUpdate) =>
|
||||||
|
itemTMailRuleKeep == itemTMailRuleUpdate)
|
||||||
|
.isNotEmpty) {
|
||||||
|
listTMailRuleKeep.remove(itemTMailRuleKeep);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
listTMailRule.addAll(listTMailRuleKeep);
|
||||||
|
|
||||||
|
return Future.sync(() async {
|
||||||
|
await _ruleFilterAPI.updateListTMailRule(listTMailRule, accountId);
|
||||||
|
}).catchError((error) {
|
||||||
|
throw error;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,68 @@
|
|||||||
|
import 'package:jmap_dart_client/http/http_client.dart';
|
||||||
|
import 'package:jmap_dart_client/jmap/account_id.dart';
|
||||||
|
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||||
|
import 'package:jmap_dart_client/jmap/jmap_request.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/get/get_rule_filter_method.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/get/get_rule_filter_response.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/rule_filter_id.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/set/set_rule_filter_method.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/set/set_rule_filter_response.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/tmail_rule.dart';
|
||||||
|
|
||||||
|
class RuleFilterAPI {
|
||||||
|
final HttpClient _httpClient;
|
||||||
|
|
||||||
|
RuleFilterAPI(this._httpClient);
|
||||||
|
|
||||||
|
Future<List<TMailRule>> getListTMailRule(AccountId accountId) async {
|
||||||
|
final processingInvocation = ProcessingInvocation();
|
||||||
|
final requestBuilder =
|
||||||
|
JmapRequestBuilder(_httpClient, processingInvocation);
|
||||||
|
|
||||||
|
final getRuleFilterMethod = GetRuleFilterMethod(
|
||||||
|
accountId,
|
||||||
|
);
|
||||||
|
|
||||||
|
final getRuleFilterInvocation =
|
||||||
|
requestBuilder.invocation(getRuleFilterMethod);
|
||||||
|
final response = await (requestBuilder
|
||||||
|
..usings(getRuleFilterMethod.requiredCapabilities))
|
||||||
|
.build()
|
||||||
|
.execute();
|
||||||
|
|
||||||
|
final result = response.parse<GetRuleFilterResponse>(
|
||||||
|
getRuleFilterInvocation.methodCallId,
|
||||||
|
GetRuleFilterResponse.deserialize);
|
||||||
|
|
||||||
|
if (result?.list.isEmpty == true) {
|
||||||
|
return <TMailRule>[];
|
||||||
|
}
|
||||||
|
|
||||||
|
return result?.list.first.rules ?? <TMailRule>[];
|
||||||
|
}
|
||||||
|
|
||||||
|
Future<SetRuleFilterResponse?> updateListTMailRule(
|
||||||
|
List<TMailRule> listTMailRule, AccountId accountId) async {
|
||||||
|
final processingInvocation = ProcessingInvocation();
|
||||||
|
final requestBuilder =
|
||||||
|
JmapRequestBuilder(_httpClient, processingInvocation);
|
||||||
|
|
||||||
|
final setRuleFilterMethod = SetRuleFilterMethod(accountId)
|
||||||
|
..addUpdateRuleFilter(
|
||||||
|
{Id(RuleFilterIdType.singleton.value): listTMailRule},
|
||||||
|
);
|
||||||
|
|
||||||
|
final setRuleFilterInvocation =
|
||||||
|
requestBuilder.invocation(setRuleFilterMethod);
|
||||||
|
final response = await (requestBuilder
|
||||||
|
..usings(setRuleFilterMethod.requiredCapabilities))
|
||||||
|
.build()
|
||||||
|
.execute();
|
||||||
|
|
||||||
|
final result = response.parse<SetRuleFilterResponse>(
|
||||||
|
setRuleFilterInvocation.methodCallId,
|
||||||
|
SetRuleFilterResponse.deserialize);
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
}
|
||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
import 'package:jmap_dart_client/jmap/core/id.dart';
|
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
import 'package:rule_filter/rule_filter_id.dart';
|
import 'package:rule_filter/rule_filter/rule_filter_id.dart';
|
||||||
|
|
||||||
class RuleFilterIdConverter implements JsonConverter<RuleFilterId, String> {
|
class RuleFilterIdConverter implements JsonConverter<RuleFilterId, String> {
|
||||||
const RuleFilterIdConverter();
|
const RuleFilterIdConverter();
|
||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
import 'package:jmap_dart_client/jmap/core/id.dart';
|
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
import 'package:rule_filter/rule_id.dart';
|
import 'package:rule_filter/rule_filter/rule_id.dart';
|
||||||
|
|
||||||
class RuleIdConverter implements JsonConverter<RuleId, String> {
|
class RuleIdConverter implements JsonConverter<RuleId, String> {
|
||||||
const RuleIdConverter();
|
const RuleIdConverter();
|
||||||
+1
-1
@@ -1,7 +1,7 @@
|
|||||||
import 'package:jmap_dart_client/jmap/core/id.dart';
|
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||||
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
import 'package:rule_filter/rule_id.dart';
|
import 'package:rule_filter/rule_filter/rule_id.dart';
|
||||||
|
|
||||||
class RuleIdNullableConverter implements JsonConverter<RuleId?, String?> {
|
class RuleIdNullableConverter implements JsonConverter<RuleId?, String?> {
|
||||||
const RuleIdNullableConverter();
|
const RuleIdNullableConverter();
|
||||||
+3
-3
@@ -7,9 +7,9 @@ import 'package:jmap_dart_client/jmap/core/method/request/get_method.dart';
|
|||||||
import 'package:jmap_dart_client/jmap/core/request/request_invocation.dart';
|
import 'package:jmap_dart_client/jmap/core/request/request_invocation.dart';
|
||||||
import 'package:jmap_dart_client/jmap/core/request/result_reference.dart';
|
import 'package:jmap_dart_client/jmap/core/request/result_reference.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
import 'package:rule_filter/capability_rule_filter.dart';
|
import 'package:rule_filter/rule_filter/capability_rule_filter.dart';
|
||||||
import 'package:rule_filter/converter/rule_id_converter.dart';
|
import 'package:rule_filter/rule_filter/converter/rule_id_converter.dart';
|
||||||
import 'package:rule_filter/rule_id.dart';
|
import 'package:rule_filter/rule_filter/rule_id.dart';
|
||||||
|
|
||||||
part 'get_rule_filter_method.g.dart';
|
part 'get_rule_filter_method.g.dart';
|
||||||
|
|
||||||
+2
-2
@@ -6,8 +6,8 @@ import 'package:jmap_dart_client/jmap/core/id.dart';
|
|||||||
import 'package:jmap_dart_client/jmap/core/method/response/get_response.dart';
|
import 'package:jmap_dart_client/jmap/core/method/response/get_response.dart';
|
||||||
import 'package:jmap_dart_client/jmap/core/state.dart';
|
import 'package:jmap_dart_client/jmap/core/state.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
import 'package:rule_filter/rule_filter.dart';
|
import 'package:rule_filter/rule_filter/rule_filter.dart';
|
||||||
import 'package:rule_filter/tmail_rule.dart';
|
import 'package:rule_filter/rule_filter/tmail_rule.dart';
|
||||||
|
|
||||||
part 'get_rule_filter_response.g.dart';
|
part 'get_rule_filter_response.g.dart';
|
||||||
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
import 'package:rule_filter/rule_append_in.dart';
|
import 'package:rule_filter/rule_filter/rule_append_in.dart';
|
||||||
|
|
||||||
part 'rule_action.g.dart';
|
part 'rule_action.g.dart';
|
||||||
|
|
||||||
+3
-1
@@ -1,12 +1,14 @@
|
|||||||
import 'package:equatable/equatable.dart';
|
import 'package:equatable/equatable.dart';
|
||||||
import 'package:jmap_dart_client/http/converter/mailbox_id_converter.dart';
|
import 'package:jmap_dart_client/http/converter/mailbox_id_converter.dart';
|
||||||
|
import 'package:jmap_dart_client/http/converter/mailbox_id_nullable_converter.dart';
|
||||||
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
|
|
||||||
part 'rule_append_in.g.dart';
|
part 'rule_append_in.g.dart';
|
||||||
|
|
||||||
@MailboxIdConverter()
|
@MailboxIdConverter()
|
||||||
@JsonSerializable()
|
@MailboxIdNullableConverter()
|
||||||
|
@JsonSerializable(explicitToJson: true)
|
||||||
class RuleAppendIn with EquatableMixin {
|
class RuleAppendIn with EquatableMixin {
|
||||||
final List<MailboxId> mailboxIds;
|
final List<MailboxId> mailboxIds;
|
||||||
|
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
import 'package:jmap_dart_client/jmap/core/filter/filter.dart';
|
import 'package:jmap_dart_client/jmap/core/filter/filter.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
import 'package:rule_filter/converter/rule_filter_id_coverter.dart';
|
import 'package:rule_filter/rule_filter/converter/rule_filter_id_coverter.dart';
|
||||||
import 'package:rule_filter/rule_filter_id.dart';
|
import 'package:rule_filter/rule_filter/rule_filter_id.dart';
|
||||||
import 'package:rule_filter/tmail_rule.dart';
|
import 'package:rule_filter/rule_filter/tmail_rule.dart';
|
||||||
|
|
||||||
part 'rule_filter.g.dart';
|
part 'rule_filter.g.dart';
|
||||||
|
|
||||||
+1
-1
@@ -2,7 +2,7 @@ import 'package:equatable/equatable.dart';
|
|||||||
import 'package:jmap_dart_client/http/converter/id_converter.dart';
|
import 'package:jmap_dart_client/http/converter/id_converter.dart';
|
||||||
import 'package:jmap_dart_client/jmap/core/id.dart';
|
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
import 'package:rule_filter/converter/rule_filter_id_coverter.dart';
|
import 'package:rule_filter/rule_filter/converter/rule_filter_id_coverter.dart';
|
||||||
|
|
||||||
enum RuleFilterIdType {
|
enum RuleFilterIdType {
|
||||||
singleton('singleton');
|
singleton('singleton');
|
||||||
+2
-2
@@ -6,8 +6,8 @@ import 'package:jmap_dart_client/jmap/core/id.dart';
|
|||||||
import 'package:jmap_dart_client/jmap/core/method/request/set_method.dart';
|
import 'package:jmap_dart_client/jmap/core/method/request/set_method.dart';
|
||||||
import 'package:jmap_dart_client/jmap/core/request/request_invocation.dart';
|
import 'package:jmap_dart_client/jmap/core/request/request_invocation.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
import 'package:rule_filter/capability_rule_filter.dart';
|
import 'package:rule_filter/rule_filter/capability_rule_filter.dart';
|
||||||
import 'package:rule_filter/tmail_rule.dart';
|
import 'package:rule_filter/rule_filter/tmail_rule.dart';
|
||||||
|
|
||||||
class SetRuleFilterMethod extends SetMethod<List<TMailRule>> with OptionalUpdateRuleFilter<List<TMailRule>>{
|
class SetRuleFilterMethod extends SetMethod<List<TMailRule>> with OptionalUpdateRuleFilter<List<TMailRule>>{
|
||||||
SetRuleFilterMethod(AccountId accountId) : super(accountId);
|
SetRuleFilterMethod(AccountId accountId) : super(accountId);
|
||||||
+1
-1
@@ -7,7 +7,7 @@ import 'package:jmap_dart_client/jmap/core/error/set_error.dart';
|
|||||||
import 'package:jmap_dart_client/jmap/core/id.dart';
|
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||||
import 'package:jmap_dart_client/jmap/core/method/response/set_response.dart';
|
import 'package:jmap_dart_client/jmap/core/method/response/set_response.dart';
|
||||||
import 'package:jmap_dart_client/jmap/core/state.dart';
|
import 'package:jmap_dart_client/jmap/core/state.dart';
|
||||||
import 'package:rule_filter/tmail_rule.dart';
|
import 'package:rule_filter/rule_filter/tmail_rule.dart';
|
||||||
|
|
||||||
class SetRuleFilterResponse extends SetResponse<TMailRule> {
|
class SetRuleFilterResponse extends SetResponse<TMailRule> {
|
||||||
SetRuleFilterResponse(
|
SetRuleFilterResponse(
|
||||||
@@ -1,11 +1,10 @@
|
|||||||
import 'package:jmap_dart_client/http/converter/id_converter.dart';
|
import 'package:jmap_dart_client/http/converter/id_converter.dart';
|
||||||
import 'package:json_annotation/json_annotation.dart';
|
import 'package:json_annotation/json_annotation.dart';
|
||||||
import 'package:rule_filter/converter/rule_id_converter.dart';
|
import 'package:rule_filter/rule_filter/converter/rule_id_nullable_converter.dart';
|
||||||
import 'package:rule_filter/converter/rule_id_nullable_converter.dart';
|
import 'package:rule_filter/rule_filter/rule.dart';
|
||||||
import 'package:rule_filter/rule.dart';
|
import 'package:rule_filter/rule_filter/rule_action.dart';
|
||||||
import 'package:rule_filter/rule_action.dart';
|
import 'package:rule_filter/rule_filter/rule_condition.dart';
|
||||||
import 'package:rule_filter/rule_condition.dart';
|
import 'package:rule_filter/rule_filter/rule_id.dart';
|
||||||
import 'package:rule_filter/rule_id.dart';
|
|
||||||
|
|
||||||
part 'tmail_rule.g.dart';
|
part 'tmail_rule.g.dart';
|
||||||
|
|
||||||
@@ -32,7 +31,6 @@ class TMailRule extends Rule {
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
List<Object?> get props => [
|
List<Object?> get props => [
|
||||||
id,
|
|
||||||
name,
|
name,
|
||||||
condition,
|
condition,
|
||||||
action,
|
action,
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
|
import 'package:jmap_dart_client/jmap/account_id.dart';
|
||||||
|
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||||
|
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||||
|
import 'package:mockito/mockito.dart';
|
||||||
|
import 'package:mockito/annotations.dart';
|
||||||
|
import 'package:rule_filter/data/datasource_impl/rule_filter_datasource_impl.dart';
|
||||||
|
import 'package:rule_filter/data/network/rule_filter_api.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/rule_action.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/rule_append_in.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/rule_condition.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/rule_filter.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/rule_filter_id.dart';
|
||||||
|
import 'package:rule_filter/rule_filter/tmail_rule.dart';
|
||||||
|
|
||||||
|
import 'rule_filter_datasource_impl_test.mocks.dart';
|
||||||
|
|
||||||
|
@GenerateMocks([RuleFilterAPI])
|
||||||
|
void main() {
|
||||||
|
final expectRuleFilter1 = RuleFilter(
|
||||||
|
id: RuleFilterIdSingleton.ruleFilterIdSingleton,
|
||||||
|
rules: [
|
||||||
|
TMailRule(
|
||||||
|
name: 'My first rule',
|
||||||
|
condition: RuleCondition(
|
||||||
|
value: 'question',
|
||||||
|
comparator: Comparator.contains,
|
||||||
|
field: Field.subject,
|
||||||
|
),
|
||||||
|
action: RuleAction(
|
||||||
|
appendIn: RuleAppendIn(
|
||||||
|
mailboxIds: [
|
||||||
|
MailboxId(Id('42')),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
group('rule_filter_datasource_impl_test', () {
|
||||||
|
late RuleFilterAPI _ruleFilterAPI;
|
||||||
|
late RuleFilterDataSourceImpl _ruleFilterDataSourceImpl;
|
||||||
|
|
||||||
|
setUp(() {
|
||||||
|
_ruleFilterAPI = MockRuleFilterAPI();
|
||||||
|
_ruleFilterDataSourceImpl = RuleFilterDataSourceImpl(_ruleFilterAPI);
|
||||||
|
});
|
||||||
|
|
||||||
|
test('getListTMailRule should return success with valid data', () async {
|
||||||
|
when(_ruleFilterAPI.getListTMailRule(AccountId(Id(
|
||||||
|
'0eacc7a5c74b27ab36a823bc5c34da36e16c093705f241d6ed5f48ee73a4ecfb'))))
|
||||||
|
.thenAnswer((_) async => expectRuleFilter1.rules);
|
||||||
|
|
||||||
|
final result = await _ruleFilterDataSourceImpl.getListTMailRule(AccountId(Id(
|
||||||
|
'0eacc7a5c74b27ab36a823bc5c34da36e16c093705f241d6ed5f48ee73a4ecfb')));
|
||||||
|
expect(result, expectRuleFilter1.rules);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -6,14 +6,14 @@ import 'package:jmap_dart_client/jmap/account_id.dart';
|
|||||||
import 'package:jmap_dart_client/jmap/core/id.dart';
|
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||||
import 'package:jmap_dart_client/jmap/jmap_request.dart';
|
import 'package:jmap_dart_client/jmap/jmap_request.dart';
|
||||||
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||||
import 'package:rule_filter/get/get_rule_filter_method.dart';
|
import 'package:rule_filter/rule_filter/get/get_rule_filter_method.dart';
|
||||||
import 'package:rule_filter/get/get_rule_filter_response.dart';
|
import 'package:rule_filter/rule_filter/get/get_rule_filter_response.dart';
|
||||||
import 'package:rule_filter/rule_action.dart';
|
import 'package:rule_filter/rule_filter/rule_action.dart';
|
||||||
import 'package:rule_filter/rule_append_in.dart';
|
import 'package:rule_filter/rule_filter/rule_append_in.dart';
|
||||||
import 'package:rule_filter/rule_condition.dart';
|
import 'package:rule_filter/rule_filter/rule_condition.dart';
|
||||||
import 'package:rule_filter/rule_filter.dart';
|
import 'package:rule_filter/rule_filter/rule_filter.dart';
|
||||||
import 'package:rule_filter/rule_filter_id.dart';
|
import 'package:rule_filter/rule_filter/rule_filter_id.dart';
|
||||||
import 'package:rule_filter/tmail_rule.dart';
|
import 'package:rule_filter/rule_filter/tmail_rule.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
group('test to json get rule filter method', () {
|
group('test to json get rule filter method', () {
|
||||||
|
|||||||
@@ -4,19 +4,16 @@ import 'package:http_mock_adapter/http_mock_adapter.dart';
|
|||||||
import 'package:jmap_dart_client/http/http_client.dart';
|
import 'package:jmap_dart_client/http/http_client.dart';
|
||||||
import 'package:jmap_dart_client/jmap/account_id.dart';
|
import 'package:jmap_dart_client/jmap/account_id.dart';
|
||||||
import 'package:jmap_dart_client/jmap/core/id.dart';
|
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||||
import 'package:jmap_dart_client/jmap/identities/identity.dart';
|
|
||||||
import 'package:jmap_dart_client/jmap/identities/set/set_identity_method.dart';
|
|
||||||
import 'package:jmap_dart_client/jmap/identities/set/set_identity_response.dart';
|
|
||||||
import 'package:jmap_dart_client/jmap/jmap_request.dart';
|
import 'package:jmap_dart_client/jmap/jmap_request.dart';
|
||||||
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||||
import 'package:rule_filter/rule_action.dart';
|
import 'package:rule_filter/rule_filter/rule_action.dart';
|
||||||
import 'package:rule_filter/rule_append_in.dart';
|
import 'package:rule_filter/rule_filter/rule_append_in.dart';
|
||||||
import 'package:rule_filter/rule_condition.dart';
|
import 'package:rule_filter/rule_filter/rule_condition.dart';
|
||||||
import 'package:rule_filter/rule_filter.dart';
|
import 'package:rule_filter/rule_filter/rule_filter_id.dart';
|
||||||
import 'package:rule_filter/rule_id.dart';
|
import 'package:rule_filter/rule_filter/rule_id.dart';
|
||||||
import 'package:rule_filter/set/set_rule_filter_method.dart';
|
import 'package:rule_filter/rule_filter/set/set_rule_filter_method.dart';
|
||||||
import 'package:rule_filter/set/set_rule_filter_response.dart';
|
import 'package:rule_filter/rule_filter/set/set_rule_filter_response.dart';
|
||||||
import 'package:rule_filter/tmail_rule.dart';
|
import 'package:rule_filter/rule_filter/tmail_rule.dart';
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
group('test to json set identity method', () {
|
group('test to json set identity method', () {
|
||||||
@@ -114,7 +111,7 @@ void main() {
|
|||||||
final setRuleFilterMethod = SetRuleFilterMethod(AccountId(Id(
|
final setRuleFilterMethod = SetRuleFilterMethod(AccountId(Id(
|
||||||
'29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6')))
|
'29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6')))
|
||||||
..addUpdateRuleFilter({
|
..addUpdateRuleFilter({
|
||||||
Id('singleton'): [
|
Id(RuleFilterIdType.singleton.value): [
|
||||||
TMailRule(
|
TMailRule(
|
||||||
id: RuleId(id: Id('1')),
|
id: RuleId(id: Id('1')),
|
||||||
name: 'My first rule',
|
name: 'My first rule',
|
||||||
|
|||||||
Reference in New Issue
Block a user