Browse Source
Signed-off-by: Nikolas Rimikis <rimikis.nikolas@gmail.com> Signed-off-by: Nikolas Rimikis <leptopoda@users.noreply.github.com>pull/603/head
Nikolas Rimikis
1 year ago
committed by
Nikolas Rimikis
9 changed files with 1310 additions and 1284 deletions
@ -1,160 +1,162 @@ |
|||||||
@Retry(3) |
|
||||||
library core_test; |
|
||||||
|
|
||||||
import 'package:nextcloud/nextcloud.dart'; |
import 'package:nextcloud/nextcloud.dart'; |
||||||
import 'package:test/test.dart'; |
import 'package:test/test.dart'; |
||||||
|
|
||||||
import 'helper.dart'; |
import 'helper.dart'; |
||||||
|
|
||||||
void main() { |
void main() { |
||||||
group('core', () { |
group( |
||||||
late DockerImage image; |
'core', |
||||||
setUpAll(() async => image = await getDockerImage()); |
() { |
||||||
|
late DockerImage image; |
||||||
late DockerContainer container; |
setUpAll(() async => image = await getDockerImage()); |
||||||
late TestNextcloudClient client; |
|
||||||
setUp(() async { |
late DockerContainer container; |
||||||
container = await getDockerContainer(image); |
late TestNextcloudClient client; |
||||||
client = await getTestClient(container); |
setUp(() async { |
||||||
}); |
container = await getDockerContainer(image); |
||||||
tearDown(() => container.destroy()); |
client = await getTestClient(container); |
||||||
|
}); |
||||||
test('Is supported from capabilities', () async { |
tearDown(() => container.destroy()); |
||||||
final (supported, _) = client.core.isSupported((await client.core.ocs.getCapabilities()).ocs.data); |
|
||||||
expect(supported, isTrue); |
test('Is supported from capabilities', () async { |
||||||
}); |
final (supported, _) = client.core.isSupported((await client.core.ocs.getCapabilities()).ocs.data); |
||||||
|
expect(supported, isTrue); |
||||||
test('Is supported from status', () async { |
}); |
||||||
final status = await client.core.getStatus(); |
|
||||||
expect(status.isSupported, isTrue); |
test('Is supported from status', () async { |
||||||
}); |
final status = await client.core.getStatus(); |
||||||
|
expect(status.isSupported, isTrue); |
||||||
test('Get status', () async { |
}); |
||||||
final status = await client.core.getStatus(); |
|
||||||
expect(status.installed, true); |
test('Get status', () async { |
||||||
expect(status.maintenance, false); |
final status = await client.core.getStatus(); |
||||||
expect(status.needsDbUpgrade, false); |
expect(status.installed, true); |
||||||
expect(status.version, startsWith('$coreSupportedVersion.')); |
expect(status.maintenance, false); |
||||||
expect(status.versionstring, startsWith('$coreSupportedVersion.')); |
expect(status.needsDbUpgrade, false); |
||||||
expect(status.edition, ''); |
expect(status.version, startsWith('$coreSupportedVersion.')); |
||||||
expect(status.productname, 'Nextcloud'); |
expect(status.versionstring, startsWith('$coreSupportedVersion.')); |
||||||
expect(status.extendedSupport, false); |
expect(status.edition, ''); |
||||||
}); |
expect(status.productname, 'Nextcloud'); |
||||||
|
expect(status.extendedSupport, false); |
||||||
test('Get capabilities', () async { |
}); |
||||||
final capabilities = await client.core.ocs.getCapabilities(); |
|
||||||
expect(capabilities.ocs.data.version.major, coreSupportedVersion); |
test('Get capabilities', () async { |
||||||
expect(capabilities.ocs.data.version.string, startsWith('$coreSupportedVersion.')); |
final capabilities = await client.core.ocs.getCapabilities(); |
||||||
expect(capabilities.ocs.data.capabilities.commentsCapabilities, isNotNull); |
expect(capabilities.ocs.data.version.major, coreSupportedVersion); |
||||||
expect(capabilities.ocs.data.capabilities.davCapabilities, isNotNull); |
expect(capabilities.ocs.data.version.string, startsWith('$coreSupportedVersion.')); |
||||||
expect(capabilities.ocs.data.capabilities.filesCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.commentsCapabilities, isNotNull); |
||||||
expect(capabilities.ocs.data.capabilities.filesSharingCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.davCapabilities, isNotNull); |
||||||
expect(capabilities.ocs.data.capabilities.filesTrashbinCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.filesCapabilities, isNotNull); |
||||||
expect(capabilities.ocs.data.capabilities.filesVersionsCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.filesSharingCapabilities, isNotNull); |
||||||
expect(capabilities.ocs.data.capabilities.notesCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.filesTrashbinCapabilities, isNotNull); |
||||||
expect(capabilities.ocs.data.capabilities.notificationsCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.filesVersionsCapabilities, isNotNull); |
||||||
expect(capabilities.ocs.data.capabilities.provisioningApiCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.notesCapabilities, isNotNull); |
||||||
expect(capabilities.ocs.data.capabilities.sharebymailCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.notificationsCapabilities, isNotNull); |
||||||
expect(capabilities.ocs.data.capabilities.themingPublicCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.provisioningApiCapabilities, isNotNull); |
||||||
expect(capabilities.ocs.data.capabilities.userStatusCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.sharebymailCapabilities, isNotNull); |
||||||
expect(capabilities.ocs.data.capabilities.weatherStatusCapabilities, isNotNull); |
expect(capabilities.ocs.data.capabilities.themingPublicCapabilities, isNotNull); |
||||||
}); |
expect(capabilities.ocs.data.capabilities.userStatusCapabilities, isNotNull); |
||||||
|
expect(capabilities.ocs.data.capabilities.weatherStatusCapabilities, isNotNull); |
||||||
test('Get navigation apps', () async { |
}); |
||||||
final navigationApps = await client.core.navigation.getAppsNavigation(); |
|
||||||
expect(navigationApps.ocs.data, hasLength(6)); |
test('Get navigation apps', () async { |
||||||
expect(navigationApps.ocs.data[0].id, 'dashboard'); |
final navigationApps = await client.core.navigation.getAppsNavigation(); |
||||||
expect(navigationApps.ocs.data[1].id, 'files'); |
expect(navigationApps.ocs.data, hasLength(6)); |
||||||
expect(navigationApps.ocs.data[2].id, 'photos'); |
expect(navigationApps.ocs.data[0].id, 'dashboard'); |
||||||
expect(navigationApps.ocs.data[3].id, 'activity'); |
expect(navigationApps.ocs.data[1].id, 'files'); |
||||||
expect(navigationApps.ocs.data[4].id, 'notes'); |
expect(navigationApps.ocs.data[2].id, 'photos'); |
||||||
expect(navigationApps.ocs.data[5].id, 'news'); |
expect(navigationApps.ocs.data[3].id, 'activity'); |
||||||
}); |
expect(navigationApps.ocs.data[4].id, 'notes'); |
||||||
|
expect(navigationApps.ocs.data[5].id, 'news'); |
||||||
test( |
}); |
||||||
'Autocomplete', |
|
||||||
() async { |
test( |
||||||
final response = await client.core.autoComplete.$get( |
'Autocomplete', |
||||||
search: '', |
() async { |
||||||
itemType: 'call', |
final response = await client.core.autoComplete.$get( |
||||||
itemId: 'new', |
search: '', |
||||||
shareTypes: [ |
itemType: 'call', |
||||||
ShareType.user.index, |
itemId: 'new', |
||||||
ShareType.group.index, |
shareTypes: [ |
||||||
], |
ShareType.user.index, |
||||||
); |
ShareType.group.index, |
||||||
expect(response.ocs.data, hasLength(3)); |
], |
||||||
|
); |
||||||
expect(response.ocs.data[0].id, 'admin'); |
expect(response.ocs.data, hasLength(3)); |
||||||
expect(response.ocs.data[0].label, 'admin'); |
|
||||||
expect(response.ocs.data[0].icon, 'icon-user'); |
expect(response.ocs.data[0].id, 'admin'); |
||||||
expect(response.ocs.data[0].source, 'users'); |
expect(response.ocs.data[0].label, 'admin'); |
||||||
expect(response.ocs.data[0].status, isEmpty); |
expect(response.ocs.data[0].icon, 'icon-user'); |
||||||
expect(response.ocs.data[0].subline, ''); |
expect(response.ocs.data[0].source, 'users'); |
||||||
expect(response.ocs.data[0].shareWithDisplayNameUnique, 'admin@example.com'); |
expect(response.ocs.data[0].status, isEmpty); |
||||||
|
expect(response.ocs.data[0].subline, ''); |
||||||
expect(response.ocs.data[1].id, 'user2'); |
expect(response.ocs.data[0].shareWithDisplayNameUnique, 'admin@example.com'); |
||||||
expect(response.ocs.data[1].label, 'User Two'); |
|
||||||
expect(response.ocs.data[1].icon, 'icon-user'); |
expect(response.ocs.data[1].id, 'user2'); |
||||||
expect(response.ocs.data[1].source, 'users'); |
expect(response.ocs.data[1].label, 'User Two'); |
||||||
expect(response.ocs.data[1].status, isEmpty); |
expect(response.ocs.data[1].icon, 'icon-user'); |
||||||
expect(response.ocs.data[1].subline, ''); |
expect(response.ocs.data[1].source, 'users'); |
||||||
expect(response.ocs.data[1].shareWithDisplayNameUnique, 'user2'); |
expect(response.ocs.data[1].status, isEmpty); |
||||||
|
expect(response.ocs.data[1].subline, ''); |
||||||
expect(response.ocs.data[2].id, 'admin'); |
expect(response.ocs.data[1].shareWithDisplayNameUnique, 'user2'); |
||||||
expect(response.ocs.data[2].label, 'admin'); |
|
||||||
expect(response.ocs.data[2].icon, ''); |
expect(response.ocs.data[2].id, 'admin'); |
||||||
expect(response.ocs.data[2].source, 'groups'); |
expect(response.ocs.data[2].label, 'admin'); |
||||||
expect(response.ocs.data[2].status, isEmpty); |
expect(response.ocs.data[2].icon, ''); |
||||||
expect(response.ocs.data[2].subline, ''); |
expect(response.ocs.data[2].source, 'groups'); |
||||||
expect(response.ocs.data[2].shareWithDisplayNameUnique, ''); |
expect(response.ocs.data[2].status, isEmpty); |
||||||
}, |
expect(response.ocs.data[2].subline, ''); |
||||||
skip: true, // TODO: This test only works on 28+ due to a bug fix with the status |
expect(response.ocs.data[2].shareWithDisplayNameUnique, ''); |
||||||
); |
}, |
||||||
|
skip: true, // TODO: This test only works on 28+ due to a bug fix with the status |
||||||
test('Get preview', () async { |
|
||||||
final response = await client.core.preview.getPreview(file: 'Nextcloud.png'); |
|
||||||
expect(response, isNotEmpty); |
|
||||||
}); |
|
||||||
|
|
||||||
test('Get avatar', () async { |
|
||||||
final response = await client.core.avatar.getAvatar(userId: 'admin', size: 32); |
|
||||||
expect(response.data, isNotEmpty); |
|
||||||
}); |
|
||||||
|
|
||||||
test('Get dark avatar', () async { |
|
||||||
final response = await client.core.avatar.getAvatarDark(userId: 'admin', size: 32); |
|
||||||
expect(response.data, isNotEmpty); |
|
||||||
}); |
|
||||||
|
|
||||||
test('Delete app password', () async { |
|
||||||
await client.core.appPassword.deleteAppPassword(); |
|
||||||
expect( |
|
||||||
() => client.core.appPassword.deleteAppPassword(), |
|
||||||
throwsA(predicate((final e) => (e! as DynamiteApiException).statusCode == 401)), |
|
||||||
); |
); |
||||||
}); |
|
||||||
|
|
||||||
test('Unified search providers', () async { |
test('Get preview', () async { |
||||||
final response = await client.core.unifiedSearch.getProviders(); |
final response = await client.core.preview.getPreview(file: 'Nextcloud.png'); |
||||||
expect(response.ocs.data, hasLength(13)); |
expect(response, isNotEmpty); |
||||||
}); |
}); |
||||||
|
|
||||||
|
test('Get avatar', () async { |
||||||
|
final response = await client.core.avatar.getAvatar(userId: 'admin', size: 32); |
||||||
|
expect(response.data, isNotEmpty); |
||||||
|
}); |
||||||
|
|
||||||
|
test('Get dark avatar', () async { |
||||||
|
final response = await client.core.avatar.getAvatarDark(userId: 'admin', size: 32); |
||||||
|
expect(response.data, isNotEmpty); |
||||||
|
}); |
||||||
|
|
||||||
|
test('Delete app password', () async { |
||||||
|
await client.core.appPassword.deleteAppPassword(); |
||||||
|
expect( |
||||||
|
() => client.core.appPassword.deleteAppPassword(), |
||||||
|
throwsA(predicate((final e) => (e! as DynamiteApiException).statusCode == 401)), |
||||||
|
); |
||||||
|
}); |
||||||
|
|
||||||
|
test('Unified search providers', () async { |
||||||
|
final response = await client.core.unifiedSearch.getProviders(); |
||||||
|
expect(response.ocs.data, hasLength(13)); |
||||||
|
}); |
||||||
|
|
||||||
test('Unified search', () async { |
test('Unified search', () async { |
||||||
final response = await client.core.unifiedSearch.search( |
final response = await client.core.unifiedSearch.search( |
||||||
providerId: 'settings', |
providerId: 'settings', |
||||||
term: 'Personal info', |
term: 'Personal info', |
||||||
); |
); |
||||||
expect(response.ocs.data.name, 'Settings'); |
expect(response.ocs.data.name, 'Settings'); |
||||||
expect(response.ocs.data.isPaginated, isFalse); |
expect(response.ocs.data.isPaginated, isFalse); |
||||||
expect(response.ocs.data.entries, hasLength(1)); |
expect(response.ocs.data.entries, hasLength(1)); |
||||||
expect(response.ocs.data.entries.single.thumbnailUrl, isEmpty); |
expect(response.ocs.data.entries.single.thumbnailUrl, isEmpty); |
||||||
expect(response.ocs.data.entries.single.title, 'Personal info'); |
expect(response.ocs.data.entries.single.title, 'Personal info'); |
||||||
expect(response.ocs.data.entries.single.subline, isEmpty); |
expect(response.ocs.data.entries.single.subline, isEmpty); |
||||||
expect(response.ocs.data.entries.single.resourceUrl, isNotEmpty); |
expect(response.ocs.data.entries.single.resourceUrl, isNotEmpty); |
||||||
expect(response.ocs.data.entries.single.icon, 'icon-settings-dark'); |
expect(response.ocs.data.entries.single.icon, 'icon-settings-dark'); |
||||||
expect(response.ocs.data.entries.single.rounded, isFalse); |
expect(response.ocs.data.entries.single.rounded, isFalse); |
||||||
expect(response.ocs.data.entries.single.attributes, isEmpty); |
expect(response.ocs.data.entries.single.attributes, isEmpty); |
||||||
}); |
}); |
||||||
}); |
}, |
||||||
|
retry: retryCount, |
||||||
|
timeout: timeout, |
||||||
|
); |
||||||
} |
} |
||||||
|
@ -1,143 +1,145 @@ |
|||||||
@Retry(3) |
|
||||||
library notes_test; |
|
||||||
|
|
||||||
import 'package:nextcloud/nextcloud.dart'; |
import 'package:nextcloud/nextcloud.dart'; |
||||||
import 'package:test/test.dart'; |
import 'package:test/test.dart'; |
||||||
|
|
||||||
import 'helper.dart'; |
import 'helper.dart'; |
||||||
|
|
||||||
void main() { |
void main() { |
||||||
group('notes', () { |
group( |
||||||
late DockerImage image; |
'notes', |
||||||
setUpAll(() async => image = await getDockerImage()); |
() { |
||||||
|
late DockerImage image; |
||||||
late DockerContainer container; |
setUpAll(() async => image = await getDockerImage()); |
||||||
late TestNextcloudClient client; |
|
||||||
setUp(() async { |
late DockerContainer container; |
||||||
container = await getDockerContainer(image); |
late TestNextcloudClient client; |
||||||
client = await getTestClient(container); |
setUp(() async { |
||||||
}); |
container = await getDockerContainer(image); |
||||||
tearDown(() => container.destroy()); |
client = await getTestClient(container); |
||||||
|
}); |
||||||
test('Is supported', () async { |
tearDown(() => container.destroy()); |
||||||
final (supported, _) = client.notes.isSupported((await client.core.ocs.getCapabilities()).ocs.data); |
|
||||||
expect(supported, isTrue); |
test('Is supported', () async { |
||||||
}); |
final (supported, _) = client.notes.isSupported((await client.core.ocs.getCapabilities()).ocs.data); |
||||||
|
expect(supported, isTrue); |
||||||
test('Create note favorite', () async { |
}); |
||||||
final response = await client.notes.createNote( |
|
||||||
title: 'a', |
test('Create note favorite', () async { |
||||||
content: 'b', |
final response = await client.notes.createNote( |
||||||
category: 'c', |
title: 'a', |
||||||
favorite: 1, |
content: 'b', |
||||||
); |
category: 'c', |
||||||
expect(response.id, isPositive); |
favorite: 1, |
||||||
expect(response.title, 'a'); |
); |
||||||
expect(response.content, 'b'); |
expect(response.id, isPositive); |
||||||
expect(response.category, 'c'); |
expect(response.title, 'a'); |
||||||
expect(response.favorite, true); |
expect(response.content, 'b'); |
||||||
expect(response.readonly, false); |
expect(response.category, 'c'); |
||||||
expect(response.etag, isNotNull); |
expect(response.favorite, true); |
||||||
expect(response.modified, isNotNull); |
expect(response.readonly, false); |
||||||
}); |
expect(response.etag, isNotNull); |
||||||
|
expect(response.modified, isNotNull); |
||||||
test('Create note not favorite', () async { |
}); |
||||||
final response = await client.notes.createNote( |
|
||||||
title: 'a', |
test('Create note not favorite', () async { |
||||||
content: 'b', |
final response = await client.notes.createNote( |
||||||
category: 'c', |
title: 'a', |
||||||
); |
content: 'b', |
||||||
expect(response.id, isPositive); |
category: 'c', |
||||||
expect(response.title, 'a'); |
); |
||||||
expect(response.content, 'b'); |
expect(response.id, isPositive); |
||||||
expect(response.category, 'c'); |
expect(response.title, 'a'); |
||||||
expect(response.favorite, false); |
expect(response.content, 'b'); |
||||||
expect(response.readonly, false); |
expect(response.category, 'c'); |
||||||
expect(response.etag, isNotNull); |
expect(response.favorite, false); |
||||||
expect(response.modified, isNotNull); |
expect(response.readonly, false); |
||||||
}); |
expect(response.etag, isNotNull); |
||||||
|
expect(response.modified, isNotNull); |
||||||
test('Get notes', () async { |
}); |
||||||
await client.notes.createNote(title: 'a'); |
|
||||||
await client.notes.createNote(title: 'b'); |
test('Get notes', () async { |
||||||
|
await client.notes.createNote(title: 'a'); |
||||||
final response = await client.notes.getNotes(); |
await client.notes.createNote(title: 'b'); |
||||||
expect(response, hasLength(2)); |
|
||||||
expect(response[0].title, 'a'); |
final response = await client.notes.getNotes(); |
||||||
expect(response[1].title, 'b'); |
expect(response, hasLength(2)); |
||||||
}); |
expect(response[0].title, 'a'); |
||||||
|
expect(response[1].title, 'b'); |
||||||
test('Get note', () async { |
}); |
||||||
final response = await client.notes.getNote( |
|
||||||
id: (await client.notes.createNote(title: 'a')).id, |
test('Get note', () async { |
||||||
); |
final response = await client.notes.getNote( |
||||||
expect(response.title, 'a'); |
id: (await client.notes.createNote(title: 'a')).id, |
||||||
}); |
); |
||||||
|
expect(response.title, 'a'); |
||||||
test('Update note', () async { |
}); |
||||||
final id = (await client.notes.createNote(title: 'a')).id; |
|
||||||
await client.notes.updateNote( |
test('Update note', () async { |
||||||
id: id, |
final id = (await client.notes.createNote(title: 'a')).id; |
||||||
title: 'b', |
await client.notes.updateNote( |
||||||
); |
id: id, |
||||||
|
title: 'b', |
||||||
final response = await client.notes.getNote(id: id); |
); |
||||||
expect(response.title, 'b'); |
|
||||||
}); |
final response = await client.notes.getNote(id: id); |
||||||
|
expect(response.title, 'b'); |
||||||
test('Update note fail changed on server', () async { |
}); |
||||||
final response = await client.notes.createNote(title: 'a'); |
|
||||||
await client.notes.updateNote( |
test('Update note fail changed on server', () async { |
||||||
id: response.id, |
final response = await client.notes.createNote(title: 'a'); |
||||||
title: 'b', |
await client.notes.updateNote( |
||||||
ifMatch: '"${response.etag}"', |
|
||||||
); |
|
||||||
expect( |
|
||||||
() => client.notes.updateNote( |
|
||||||
id: response.id, |
id: response.id, |
||||||
title: 'c', |
title: 'b', |
||||||
ifMatch: '"${response.etag}"', |
ifMatch: '"${response.etag}"', |
||||||
), |
); |
||||||
throwsA(predicate((final e) => (e! as DynamiteApiException).statusCode == 412)), |
expect( |
||||||
); |
() => client.notes.updateNote( |
||||||
}); |
id: response.id, |
||||||
|
title: 'c', |
||||||
test('Delete note', () async { |
ifMatch: '"${response.etag}"', |
||||||
final id = (await client.notes.createNote(title: 'a')).id; |
), |
||||||
|
throwsA(predicate((final e) => (e! as DynamiteApiException).statusCode == 412)), |
||||||
var response = await client.notes.getNotes(); |
); |
||||||
expect(response, hasLength(1)); |
}); |
||||||
|
|
||||||
await client.notes.deleteNote(id: id); |
test('Delete note', () async { |
||||||
|
final id = (await client.notes.createNote(title: 'a')).id; |
||||||
response = await client.notes.getNotes(); |
|
||||||
expect(response, hasLength(0)); |
var response = await client.notes.getNotes(); |
||||||
}); |
expect(response, hasLength(1)); |
||||||
|
|
||||||
test('Get settings', () async { |
await client.notes.deleteNote(id: id); |
||||||
final response = await client.notes.getSettings(); |
|
||||||
expect(response.notesPath, 'Notes'); |
response = await client.notes.getNotes(); |
||||||
expect(response.fileSuffix, '.md'); |
expect(response, hasLength(0)); |
||||||
expect(response.noteMode, NotesSettings_NoteMode.rich); |
}); |
||||||
}); |
|
||||||
|
test('Get settings', () async { |
||||||
test('Update settings', () async { |
final response = await client.notes.getSettings(); |
||||||
var response = await client.notes.updateSettings( |
expect(response.notesPath, 'Notes'); |
||||||
settings: NotesSettings( |
expect(response.fileSuffix, '.md'); |
||||||
(final b) => b |
expect(response.noteMode, NotesSettings_NoteMode.rich); |
||||||
..notesPath = 'Test Notes' |
}); |
||||||
..fileSuffix = '.txt' |
|
||||||
..noteMode = NotesSettings_NoteMode.preview, |
test('Update settings', () async { |
||||||
), |
var response = await client.notes.updateSettings( |
||||||
); |
settings: NotesSettings( |
||||||
expect(response.notesPath, 'Test Notes'); |
(final b) => b |
||||||
expect(response.fileSuffix, '.txt'); |
..notesPath = 'Test Notes' |
||||||
expect(response.noteMode, NotesSettings_NoteMode.preview); |
..fileSuffix = '.txt' |
||||||
|
..noteMode = NotesSettings_NoteMode.preview, |
||||||
response = await client.notes.getSettings(); |
), |
||||||
expect(response.notesPath, 'Test Notes'); |
); |
||||||
expect(response.fileSuffix, '.txt'); |
expect(response.notesPath, 'Test Notes'); |
||||||
expect(response.noteMode, NotesSettings_NoteMode.preview); |
expect(response.fileSuffix, '.txt'); |
||||||
}); |
expect(response.noteMode, NotesSettings_NoteMode.preview); |
||||||
}); |
|
||||||
|
response = await client.notes.getSettings(); |
||||||
|
expect(response.notesPath, 'Test Notes'); |
||||||
|
expect(response.fileSuffix, '.txt'); |
||||||
|
expect(response.noteMode, NotesSettings_NoteMode.preview); |
||||||
|
}); |
||||||
|
}, |
||||||
|
retry: retryCount, |
||||||
|
timeout: timeout, |
||||||
|
); |
||||||
} |
} |
||||||
|
@ -1,54 +1,56 @@ |
|||||||
@Retry(3) |
|
||||||
library provisioning_api_test; |
|
||||||
|
|
||||||
import 'package:test/test.dart'; |
import 'package:test/test.dart'; |
||||||
|
|
||||||
import 'helper.dart'; |
import 'helper.dart'; |
||||||
|
|
||||||
void main() { |
void main() { |
||||||
group('provisioning_api', () { |
group( |
||||||
late DockerImage image; |
'provisioning_api', |
||||||
setUpAll(() async => image = await getDockerImage()); |
() { |
||||||
|
late DockerImage image; |
||||||
late DockerContainer container; |
setUpAll(() async => image = await getDockerImage()); |
||||||
late TestNextcloudClient client; |
|
||||||
setUp(() async { |
late DockerContainer container; |
||||||
container = await getDockerContainer(image); |
late TestNextcloudClient client; |
||||||
client = await getTestClient( |
setUp(() async { |
||||||
container, |
container = await getDockerContainer(image); |
||||||
username: 'admin', |
client = await getTestClient( |
||||||
); |
container, |
||||||
}); |
username: 'admin', |
||||||
tearDown(() => container.destroy()); |
); |
||||||
|
|
||||||
group('Users', () { |
|
||||||
test('Get current user', () async { |
|
||||||
final user = await client.provisioningApi.users.getCurrentUser(); |
|
||||||
expect(user.ocs.data.id, 'admin'); |
|
||||||
expect(user.ocs.data.displayName, 'admin'); |
|
||||||
expect(user.ocs.data.displaynameScope, 'v2-federated'); |
|
||||||
expect(user.ocs.data.language, 'en'); |
|
||||||
}); |
}); |
||||||
|
tearDown(() => container.destroy()); |
||||||
test('Get user by username', () async { |
|
||||||
final user = await client.provisioningApi.users.getUser(userId: 'user1'); |
group('Users', () { |
||||||
expect(user.ocs.data.id, 'user1'); |
test('Get current user', () async { |
||||||
expect(user.ocs.data.displayname, 'User One'); |
final user = await client.provisioningApi.users.getCurrentUser(); |
||||||
expect(user.ocs.data.displaynameScope, null); |
expect(user.ocs.data.id, 'admin'); |
||||||
expect(user.ocs.data.language, 'en'); |
expect(user.ocs.data.displayName, 'admin'); |
||||||
|
expect(user.ocs.data.displaynameScope, 'v2-federated'); |
||||||
|
expect(user.ocs.data.language, 'en'); |
||||||
|
}); |
||||||
|
|
||||||
|
test('Get user by username', () async { |
||||||
|
final user = await client.provisioningApi.users.getUser(userId: 'user1'); |
||||||
|
expect(user.ocs.data.id, 'user1'); |
||||||
|
expect(user.ocs.data.displayname, 'User One'); |
||||||
|
expect(user.ocs.data.displaynameScope, null); |
||||||
|
expect(user.ocs.data.language, 'en'); |
||||||
|
}); |
||||||
}); |
}); |
||||||
}); |
|
||||||
|
|
||||||
group('Apps', () { |
group('Apps', () { |
||||||
test('Get apps', () async { |
test('Get apps', () async { |
||||||
final response = await client.provisioningApi.apps.getApps(); |
final response = await client.provisioningApi.apps.getApps(); |
||||||
expect(response.ocs.data.apps, hasLength(39)); |
expect(response.ocs.data.apps, hasLength(39)); |
||||||
|
|
||||||
for (final id in response.ocs.data.apps) { |
for (final id in response.ocs.data.apps) { |
||||||
final app = await client.provisioningApi.apps.getAppInfo(app: id); |
final app = await client.provisioningApi.apps.getAppInfo(app: id); |
||||||
expect(app.ocs.data.id, isNotEmpty); |
expect(app.ocs.data.id, isNotEmpty); |
||||||
} |
} |
||||||
|
}); |
||||||
}); |
}); |
||||||
}); |
}, |
||||||
}); |
retry: retryCount, |
||||||
|
timeout: timeout, |
||||||
|
); |
||||||
} |
} |
||||||
|
@ -1,67 +1,69 @@ |
|||||||
@Retry(3) |
|
||||||
library uppush_test; |
|
||||||
|
|
||||||
import 'package:test/test.dart'; |
import 'package:test/test.dart'; |
||||||
|
|
||||||
import 'helper.dart'; |
import 'helper.dart'; |
||||||
|
|
||||||
void main() { |
void main() { |
||||||
group('uppush', () { |
group( |
||||||
late DockerImage image; |
'uppush', |
||||||
setUpAll(() async => image = await getDockerImage()); |
() { |
||||||
|
late DockerImage image; |
||||||
|
setUpAll(() async => image = await getDockerImage()); |
||||||
|
|
||||||
late DockerContainer container; |
late DockerContainer container; |
||||||
late TestNextcloudClient client; |
late TestNextcloudClient client; |
||||||
setUp(() async { |
setUp(() async { |
||||||
container = await getDockerContainer(image); |
container = await getDockerContainer(image); |
||||||
client = await getTestClient( |
client = await getTestClient( |
||||||
container, |
container, |
||||||
username: 'admin', |
username: 'admin', |
||||||
); |
); |
||||||
}); |
}); |
||||||
tearDown(() => container.destroy()); |
tearDown(() => container.destroy()); |
||||||
|
|
||||||
test('Is installed', () async { |
test('Is installed', () async { |
||||||
final response = await client.uppush.check(); |
final response = await client.uppush.check(); |
||||||
expect(response.success, isTrue); |
expect(response.success, isTrue); |
||||||
}); |
}); |
||||||
|
|
||||||
test('Set keepalive', () async { |
test('Set keepalive', () async { |
||||||
final response = await client.uppush.setKeepalive(keepalive: 10); |
final response = await client.uppush.setKeepalive(keepalive: 10); |
||||||
expect(response.success, isTrue); |
expect(response.success, isTrue); |
||||||
}); |
}); |
||||||
|
|
||||||
test('Create device', () async { |
test('Create device', () async { |
||||||
final response = await client.uppush.createDevice(deviceName: 'Test'); |
final response = await client.uppush.createDevice(deviceName: 'Test'); |
||||||
expect(response.success, isTrue); |
expect(response.success, isTrue); |
||||||
expect(response.deviceId, isNotEmpty); |
expect(response.deviceId, isNotEmpty); |
||||||
}); |
}); |
||||||
|
|
||||||
test('Delete device', () async { |
test('Delete device', () async { |
||||||
final deviceId = (await client.uppush.createDevice(deviceName: 'Test')).deviceId; |
final deviceId = (await client.uppush.createDevice(deviceName: 'Test')).deviceId; |
||||||
|
|
||||||
final response = await client.uppush.deleteDevice(deviceId: deviceId); |
final response = await client.uppush.deleteDevice(deviceId: deviceId); |
||||||
expect(response.success, isTrue); |
expect(response.success, isTrue); |
||||||
}); |
}); |
||||||
|
|
||||||
test('Create app', () async { |
test('Create app', () async { |
||||||
final deviceId = (await client.uppush.createDevice(deviceName: 'Test')).deviceId; |
final deviceId = (await client.uppush.createDevice(deviceName: 'Test')).deviceId; |
||||||
|
|
||||||
final response = await client.uppush.createApp(deviceId: deviceId, appName: 'Test'); |
final response = await client.uppush.createApp(deviceId: deviceId, appName: 'Test'); |
||||||
expect(response.success, isTrue); |
expect(response.success, isTrue); |
||||||
expect(response.token, isNotEmpty); |
expect(response.token, isNotEmpty); |
||||||
}); |
}); |
||||||
|
|
||||||
test('UnifiedPush discovery', () async { |
test('UnifiedPush discovery', () async { |
||||||
final response = await client.uppush.unifiedpushDiscovery(token: 'example'); |
final response = await client.uppush.unifiedpushDiscovery(token: 'example'); |
||||||
expect(response.unifiedpush.version, 1); |
expect(response.unifiedpush.version, 1); |
||||||
}); |
}); |
||||||
|
|
||||||
test('Matrix gateway discovery', () async { |
test('Matrix gateway discovery', () async { |
||||||
final response = await client.uppush.gatewayMatrixDiscovery(); |
final response = await client.uppush.gatewayMatrixDiscovery(); |
||||||
expect(response.unifiedpush.gateway, 'matrix'); |
expect(response.unifiedpush.gateway, 'matrix'); |
||||||
}); |
}); |
||||||
|
|
||||||
// Deleting an app, sending a notification (also via matrix gateway) or listening for notifications is not possible because redis is not set up |
// Deleting an app, sending a notification (also via matrix gateway) or listening for notifications is not possible because redis is not set up |
||||||
}); |
}, |
||||||
|
retry: retryCount, |
||||||
|
timeout: timeout, |
||||||
|
); |
||||||
} |
} |
||||||
|
@ -1,174 +1,176 @@ |
|||||||
@Retry(3) |
|
||||||
library user_status_test; |
|
||||||
|
|
||||||
import 'package:nextcloud/nextcloud.dart'; |
import 'package:nextcloud/nextcloud.dart'; |
||||||
import 'package:test/test.dart'; |
import 'package:test/test.dart'; |
||||||
|
|
||||||
import 'helper.dart'; |
import 'helper.dart'; |
||||||
|
|
||||||
void main() { |
void main() { |
||||||
group('user_status', () { |
group( |
||||||
late DockerImage image; |
'user_status', |
||||||
setUpAll(() async => image = await getDockerImage()); |
() { |
||||||
|
late DockerImage image; |
||||||
late DockerContainer container; |
setUpAll(() async => image = await getDockerImage()); |
||||||
late TestNextcloudClient client; |
|
||||||
setUp(() async { |
late DockerContainer container; |
||||||
container = await getDockerContainer(image); |
late TestNextcloudClient client; |
||||||
client = await getTestClient(container); |
setUp(() async { |
||||||
}); |
container = await getDockerContainer(image); |
||||||
tearDown(() => container.destroy()); |
client = await getTestClient(container); |
||||||
|
}); |
||||||
test('Find all predefined statuses', () async { |
tearDown(() => container.destroy()); |
||||||
final expectedStatusIDs = ['meeting', 'commuting', 'remote-work', 'sick-leave', 'vacationing']; |
|
||||||
final response = await client.userStatus.predefinedStatus.findAll(); |
test('Find all predefined statuses', () async { |
||||||
expect(response.ocs.data, hasLength(5)); |
final expectedStatusIDs = ['meeting', 'commuting', 'remote-work', 'sick-leave', 'vacationing']; |
||||||
final responseIDs = response.ocs.data.map((final status) => status.id); |
final response = await client.userStatus.predefinedStatus.findAll(); |
||||||
expect(expectedStatusIDs.map(responseIDs.contains).contains(false), false); |
expect(response.ocs.data, hasLength(5)); |
||||||
for (final status in response.ocs.data) { |
final responseIDs = response.ocs.data.map((final status) => status.id); |
||||||
expect(status.icon, isNotNull); |
expect(expectedStatusIDs.map(responseIDs.contains).contains(false), false); |
||||||
expect(status.message, isNotNull); |
for (final status in response.ocs.data) { |
||||||
} |
expect(status.icon, isNotNull); |
||||||
|
expect(status.message, isNotNull); |
||||||
final meeting = response.ocs.data.singleWhere((final s) => s.id == 'meeting').clearAt!; |
} |
||||||
expect(meeting.type, UserStatusClearAt_Type.period); |
|
||||||
expect(meeting.time.$int, 3600); |
final meeting = response.ocs.data.singleWhere((final s) => s.id == 'meeting').clearAt!; |
||||||
|
expect(meeting.type, UserStatusClearAt_Type.period); |
||||||
final commuting = response.ocs.data.singleWhere((final s) => s.id == 'commuting').clearAt!; |
expect(meeting.time.$int, 3600); |
||||||
expect(commuting.type, UserStatusClearAt_Type.period); |
|
||||||
expect(commuting.time.$int, 1800); |
final commuting = response.ocs.data.singleWhere((final s) => s.id == 'commuting').clearAt!; |
||||||
|
expect(commuting.type, UserStatusClearAt_Type.period); |
||||||
final remoteWork = response.ocs.data.singleWhere((final s) => s.id == 'remote-work').clearAt!; |
expect(commuting.time.$int, 1800); |
||||||
expect(remoteWork.type, UserStatusClearAt_Type.endOf); |
|
||||||
expect(remoteWork.time.clearAtTimeType, UserStatusClearAtTimeType.day); |
final remoteWork = response.ocs.data.singleWhere((final s) => s.id == 'remote-work').clearAt!; |
||||||
|
expect(remoteWork.type, UserStatusClearAt_Type.endOf); |
||||||
final sickLeave = response.ocs.data.singleWhere((final s) => s.id == 'sick-leave').clearAt!; |
expect(remoteWork.time.clearAtTimeType, UserStatusClearAtTimeType.day); |
||||||
expect(sickLeave.type, UserStatusClearAt_Type.endOf); |
|
||||||
expect(sickLeave.time.clearAtTimeType, UserStatusClearAtTimeType.day); |
final sickLeave = response.ocs.data.singleWhere((final s) => s.id == 'sick-leave').clearAt!; |
||||||
|
expect(sickLeave.type, UserStatusClearAt_Type.endOf); |
||||||
final vacationing = response.ocs.data.singleWhere((final s) => s.id == 'vacationing').clearAt; |
expect(sickLeave.time.clearAtTimeType, UserStatusClearAtTimeType.day); |
||||||
expect(vacationing, null); |
|
||||||
}); |
final vacationing = response.ocs.data.singleWhere((final s) => s.id == 'vacationing').clearAt; |
||||||
|
expect(vacationing, null); |
||||||
test('Set status', () async { |
}); |
||||||
final response = await client.userStatus.userStatus.setStatus(statusType: 'online'); |
|
||||||
|
test('Set status', () async { |
||||||
expect(response.ocs.data.public.userId, 'user1'); |
final response = await client.userStatus.userStatus.setStatus(statusType: 'online'); |
||||||
expect(response.ocs.data.public.message, null); |
|
||||||
expect(response.ocs.data.private1.messageId, null); |
expect(response.ocs.data.public.userId, 'user1'); |
||||||
expect(response.ocs.data.private1.messageIsPredefined, false); |
expect(response.ocs.data.public.message, null); |
||||||
expect(response.ocs.data.public.icon, null); |
expect(response.ocs.data.private1.messageId, null); |
||||||
expect(response.ocs.data.public.clearAt, null); |
expect(response.ocs.data.private1.messageIsPredefined, false); |
||||||
expect(response.ocs.data.public.status, 'online'); |
expect(response.ocs.data.public.icon, null); |
||||||
expect(response.ocs.data.private1.statusIsUserDefined, true); |
expect(response.ocs.data.public.clearAt, null); |
||||||
}); |
expect(response.ocs.data.public.status, 'online'); |
||||||
|
expect(response.ocs.data.private1.statusIsUserDefined, true); |
||||||
test('Get status', () async { |
}); |
||||||
// There seems to be a bug in Nextcloud which makes getting the status fail before it has been set once. |
|
||||||
// The error message from Nextcloud is "Could not create folder" |
test('Get status', () async { |
||||||
await client.userStatus.userStatus.setStatus(statusType: 'online'); |
// There seems to be a bug in Nextcloud which makes getting the status fail before it has been set once. |
||||||
|
// The error message from Nextcloud is "Could not create folder" |
||||||
final response = await client.userStatus.userStatus.getStatus(); |
await client.userStatus.userStatus.setStatus(statusType: 'online'); |
||||||
expect(response.ocs.data.public.userId, 'user1'); |
|
||||||
expect(response.ocs.data.public.message, null); |
final response = await client.userStatus.userStatus.getStatus(); |
||||||
expect(response.ocs.data.private1.messageId, null); |
expect(response.ocs.data.public.userId, 'user1'); |
||||||
expect(response.ocs.data.private1.messageIsPredefined, false); |
expect(response.ocs.data.public.message, null); |
||||||
expect(response.ocs.data.public.icon, null); |
expect(response.ocs.data.private1.messageId, null); |
||||||
expect(response.ocs.data.public.clearAt, null); |
expect(response.ocs.data.private1.messageIsPredefined, false); |
||||||
expect(response.ocs.data.public.status, 'online'); |
expect(response.ocs.data.public.icon, null); |
||||||
expect(response.ocs.data.private1.statusIsUserDefined, true); |
expect(response.ocs.data.public.clearAt, null); |
||||||
}); |
expect(response.ocs.data.public.status, 'online'); |
||||||
|
expect(response.ocs.data.private1.statusIsUserDefined, true); |
||||||
test('Find all statuses', () async { |
}); |
||||||
var response = await client.userStatus.statuses.findAll(); |
|
||||||
expect(response.ocs.data, hasLength(0)); |
test('Find all statuses', () async { |
||||||
|
var response = await client.userStatus.statuses.findAll(); |
||||||
await client.userStatus.userStatus.setStatus(statusType: 'online'); |
expect(response.ocs.data, hasLength(0)); |
||||||
|
|
||||||
response = await client.userStatus.statuses.findAll(); |
await client.userStatus.userStatus.setStatus(statusType: 'online'); |
||||||
expect(response.ocs.data, hasLength(1)); |
|
||||||
expect(response.ocs.data[0].userId, 'user1'); |
response = await client.userStatus.statuses.findAll(); |
||||||
expect(response.ocs.data[0].message, null); |
expect(response.ocs.data, hasLength(1)); |
||||||
expect(response.ocs.data[0].icon, null); |
expect(response.ocs.data[0].userId, 'user1'); |
||||||
expect(response.ocs.data[0].clearAt, null); |
expect(response.ocs.data[0].message, null); |
||||||
expect(response.ocs.data[0].status, 'online'); |
expect(response.ocs.data[0].icon, null); |
||||||
}); |
expect(response.ocs.data[0].clearAt, null); |
||||||
|
expect(response.ocs.data[0].status, 'online'); |
||||||
test('Find status', () async { |
}); |
||||||
// Same as getting status |
|
||||||
await client.userStatus.userStatus.setStatus(statusType: 'online'); |
test('Find status', () async { |
||||||
|
// Same as getting status |
||||||
final response = await client.userStatus.statuses.find(userId: 'user1'); |
await client.userStatus.userStatus.setStatus(statusType: 'online'); |
||||||
expect(response.ocs.data.userId, 'user1'); |
|
||||||
expect(response.ocs.data.message, null); |
final response = await client.userStatus.statuses.find(userId: 'user1'); |
||||||
expect(response.ocs.data.icon, null); |
expect(response.ocs.data.userId, 'user1'); |
||||||
expect(response.ocs.data.clearAt, null); |
expect(response.ocs.data.message, null); |
||||||
expect(response.ocs.data.status, 'online'); |
expect(response.ocs.data.icon, null); |
||||||
}); |
expect(response.ocs.data.clearAt, null); |
||||||
|
expect(response.ocs.data.status, 'online'); |
||||||
test('Set predefined message', () async { |
}); |
||||||
final clearAt = DateTime.now().millisecondsSinceEpoch ~/ 1000 + 60; |
|
||||||
final response = await client.userStatus.userStatus.setPredefinedMessage( |
test('Set predefined message', () async { |
||||||
messageId: 'meeting', |
final clearAt = DateTime.now().millisecondsSinceEpoch ~/ 1000 + 60; |
||||||
clearAt: clearAt, |
final response = await client.userStatus.userStatus.setPredefinedMessage( |
||||||
); |
messageId: 'meeting', |
||||||
expect(response.ocs.data.public.userId, 'user1'); |
clearAt: clearAt, |
||||||
expect(response.ocs.data.public.message, null); |
); |
||||||
expect(response.ocs.data.private1.messageId, 'meeting'); |
expect(response.ocs.data.public.userId, 'user1'); |
||||||
expect(response.ocs.data.private1.messageIsPredefined, true); |
expect(response.ocs.data.public.message, null); |
||||||
expect(response.ocs.data.public.icon, null); |
expect(response.ocs.data.private1.messageId, 'meeting'); |
||||||
expect(response.ocs.data.public.clearAt, clearAt); |
expect(response.ocs.data.private1.messageIsPredefined, true); |
||||||
expect(response.ocs.data.public.status, 'offline'); |
expect(response.ocs.data.public.icon, null); |
||||||
expect(response.ocs.data.private1.statusIsUserDefined, false); |
expect(response.ocs.data.public.clearAt, clearAt); |
||||||
}); |
expect(response.ocs.data.public.status, 'offline'); |
||||||
|
expect(response.ocs.data.private1.statusIsUserDefined, false); |
||||||
test('Set custom message', () async { |
}); |
||||||
final clearAt = DateTime.now().millisecondsSinceEpoch ~/ 1000 + 60; |
|
||||||
final response = await client.userStatus.userStatus.setCustomMessage( |
test('Set custom message', () async { |
||||||
statusIcon: '😀', |
final clearAt = DateTime.now().millisecondsSinceEpoch ~/ 1000 + 60; |
||||||
message: 'bla', |
final response = await client.userStatus.userStatus.setCustomMessage( |
||||||
clearAt: clearAt, |
statusIcon: '😀', |
||||||
); |
message: 'bla', |
||||||
expect(response.ocs.data.public.userId, 'user1'); |
clearAt: clearAt, |
||||||
expect(response.ocs.data.public.message, 'bla'); |
); |
||||||
expect(response.ocs.data.private1.messageId, null); |
expect(response.ocs.data.public.userId, 'user1'); |
||||||
expect(response.ocs.data.private1.messageIsPredefined, false); |
expect(response.ocs.data.public.message, 'bla'); |
||||||
expect(response.ocs.data.public.icon, '😀'); |
expect(response.ocs.data.private1.messageId, null); |
||||||
expect(response.ocs.data.public.clearAt, clearAt); |
expect(response.ocs.data.private1.messageIsPredefined, false); |
||||||
expect(response.ocs.data.public.status, 'offline'); |
expect(response.ocs.data.public.icon, '😀'); |
||||||
expect(response.ocs.data.private1.statusIsUserDefined, false); |
expect(response.ocs.data.public.clearAt, clearAt); |
||||||
}); |
expect(response.ocs.data.public.status, 'offline'); |
||||||
|
expect(response.ocs.data.private1.statusIsUserDefined, false); |
||||||
test('Clear message', () async { |
}); |
||||||
final clearAt = DateTime.now().millisecondsSinceEpoch ~/ 1000 + 60; |
|
||||||
await client.userStatus.userStatus.setCustomMessage( |
test('Clear message', () async { |
||||||
statusIcon: '😀', |
final clearAt = DateTime.now().millisecondsSinceEpoch ~/ 1000 + 60; |
||||||
message: 'bla', |
await client.userStatus.userStatus.setCustomMessage( |
||||||
clearAt: clearAt, |
statusIcon: '😀', |
||||||
); |
message: 'bla', |
||||||
await client.userStatus.userStatus.clearMessage(); |
clearAt: clearAt, |
||||||
|
); |
||||||
final response = await client.userStatus.userStatus.getStatus(); |
await client.userStatus.userStatus.clearMessage(); |
||||||
expect(response.ocs.data.public.userId, 'user1'); |
|
||||||
expect(response.ocs.data.public.message, null); |
final response = await client.userStatus.userStatus.getStatus(); |
||||||
expect(response.ocs.data.private1.messageId, null); |
expect(response.ocs.data.public.userId, 'user1'); |
||||||
expect(response.ocs.data.private1.messageIsPredefined, false); |
expect(response.ocs.data.public.message, null); |
||||||
expect(response.ocs.data.public.icon, null); |
expect(response.ocs.data.private1.messageId, null); |
||||||
expect(response.ocs.data.public.clearAt, null); |
expect(response.ocs.data.private1.messageIsPredefined, false); |
||||||
expect(response.ocs.data.public.status, 'offline'); |
expect(response.ocs.data.public.icon, null); |
||||||
expect(response.ocs.data.private1.statusIsUserDefined, false); |
expect(response.ocs.data.public.clearAt, null); |
||||||
}); |
expect(response.ocs.data.public.status, 'offline'); |
||||||
|
expect(response.ocs.data.private1.statusIsUserDefined, false); |
||||||
test('Heartbeat', () async { |
}); |
||||||
final response = await client.userStatus.heartbeat.heartbeat(status: 'online'); |
|
||||||
expect(response.ocs.data.public.userId, 'user1'); |
test('Heartbeat', () async { |
||||||
expect(response.ocs.data.public.message, null); |
final response = await client.userStatus.heartbeat.heartbeat(status: 'online'); |
||||||
expect(response.ocs.data.private1.messageId, null); |
expect(response.ocs.data.public.userId, 'user1'); |
||||||
expect(response.ocs.data.private1.messageIsPredefined, false); |
expect(response.ocs.data.public.message, null); |
||||||
expect(response.ocs.data.public.icon, null); |
expect(response.ocs.data.private1.messageId, null); |
||||||
expect(response.ocs.data.public.clearAt, null); |
expect(response.ocs.data.private1.messageIsPredefined, false); |
||||||
expect(response.ocs.data.public.status, 'online'); |
expect(response.ocs.data.public.icon, null); |
||||||
expect(response.ocs.data.private1.statusIsUserDefined, false); |
expect(response.ocs.data.public.clearAt, null); |
||||||
}); |
expect(response.ocs.data.public.status, 'online'); |
||||||
}); |
expect(response.ocs.data.private1.statusIsUserDefined, false); |
||||||
|
}); |
||||||
|
}, |
||||||
|
retry: retryCount, |
||||||
|
timeout: timeout, |
||||||
|
); |
||||||
} |
} |
||||||
|
Loading…
Reference in new issue