TF-3189 subaddressing features only shown if supported by the server
This commit is contained in:
committed by
Dat H. Pham
parent
f1ec1d7324
commit
019dbe6e03
@@ -0,0 +1,69 @@
|
||||
import 'package:flutter_test/flutter_test.dart';
|
||||
import 'package:jmap_dart_client/jmap/account_id.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/account/account.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/capability/capability_identifier.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/capability/default_capability.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/id.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/session/session.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/state.dart';
|
||||
import 'package:jmap_dart_client/jmap/core/user_name.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox/presentation/mixin/mailbox_widget_mixin.dart';
|
||||
|
||||
void main() {
|
||||
group('MailboxWidgetMixin::isSubaddressingSupported::test', () {
|
||||
|
||||
test(
|
||||
'should return true '
|
||||
'when the server advertizes true',
|
||||
() {
|
||||
|
||||
// arrange
|
||||
final session = Session(
|
||||
{CapabilityIdentifier.jmapTeamMailboxes: DefaultCapability({"subaddressingSupported": true})},
|
||||
{AccountId(Id("1")): Account(AccountName("name"), true, false, {CapabilityIdentifier.jmapTeamMailboxes: DefaultCapability({"subaddressingSupported": true})})},
|
||||
{}, UserName(''), Uri(), Uri(), Uri(), Uri(), State(''));
|
||||
|
||||
// act
|
||||
final subaddressingSupported = MailboxWidgetMixin.isSubaddressingSupported(session, AccountId(Id("1")));
|
||||
|
||||
// assert
|
||||
expect(subaddressingSupported, true);
|
||||
});
|
||||
|
||||
test(
|
||||
'should return false '
|
||||
'when the server advertizes false',
|
||||
() {
|
||||
|
||||
// arrange
|
||||
final session = Session(
|
||||
{CapabilityIdentifier.jmapTeamMailboxes: DefaultCapability({"subaddressingSupported": false})},
|
||||
{AccountId(Id("1")): Account(AccountName("name"), true, false, {CapabilityIdentifier.jmapTeamMailboxes: DefaultCapability({"subaddressingSupported": false})})},
|
||||
{}, UserName(''), Uri(), Uri(), Uri(), Uri(), State(''));
|
||||
|
||||
// act
|
||||
final subaddressingSupported = MailboxWidgetMixin.isSubaddressingSupported(session, AccountId(Id("1")));
|
||||
|
||||
// assert
|
||||
expect(subaddressingSupported, false);
|
||||
});
|
||||
|
||||
test(
|
||||
'should return false '
|
||||
'when the server advertizes nothing',
|
||||
() {
|
||||
|
||||
// arrange
|
||||
final session = Session(
|
||||
{CapabilityIdentifier.jmapTeamMailboxes: DefaultCapability({})},
|
||||
{AccountId(Id("1")): Account(AccountName("name"), true, false, {CapabilityIdentifier.jmapTeamMailboxes: DefaultCapability({})})},
|
||||
{}, UserName(''), Uri(), Uri(), Uri(), Uri(), State(''));
|
||||
|
||||
// act
|
||||
final subaddressingSupported = MailboxWidgetMixin.isSubaddressingSupported(session, AccountId(Id("1")));
|
||||
|
||||
// assert
|
||||
expect(subaddressingSupported, false);
|
||||
});
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user