/* * Famedly Matrix SDK * Copyright (C) 2020 Famedly GmbH * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the * License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ import 'package:matrix_api_lite/matrix_api_lite.dart'; import 'package:test/test.dart'; void main() { group('Try-get-map-extension', () { test('it should work', () { final data = { 'str': 'foxies', 'int': 42, 'list': [2, 3, 4], 'map': { 'beep': 'boop', }, }; expect(data.tryGet('str'), 'foxies'); expect(data.tryGet('str'), null); expect(data.tryGet('int'), 42); expect(data.tryGet('list'), [2, 3, 4]); expect(data.tryGet>('map')?.tryGet('beep'), 'boop'); expect(data.tryGet>('map')?.tryGet('meep'), null); expect(data.tryGet>('pam')?.tryGet('beep'), null); }); }); }