Skip to content

Drone: test on oldest and latest stable server#2007

Open
tobiasKaminsky wants to merge 1 commit intomasterfrom
test-stable-oldest
Open

Drone: test on oldest and latest stable server#2007
tobiasKaminsky wants to merge 1 commit intomasterfrom
test-stable-oldest

Conversation

@tobiasKaminsky
Copy link
Copy Markdown
Member

No description provided.

Signed-off-by: tobiasKaminsky <tobias@kaminsky.me>
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 5, 2026

SpotBugs

CategoryBaseNew
Bad practice3434
Correctness2929
Dodgy code1515
Internationalization66
Malicious code vulnerability2626
Multithreaded correctness1111
Performance99
Total130130

@codecov
Copy link
Copy Markdown

codecov Bot commented May 5, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Expands CI coverage to run the test suite against both the oldest and latest stable Nextcloud servers, and updates integration tests to account for server-version-specific behavior.

Changes:

  • Renames the existing stable Drone pipeline to target the latest stable server and adds a new oldest-stable pipeline/service.
  • Adds a reusable server-version helper in the Android integration test base class.
  • Adjusts several integration tests to skip or vary assertions based on Nextcloud version support.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
library/src/androidTest/java/com/owncloud/android/lib/resources/users/StatusIT.kt Makes status assertions conditional for pre-NC21 servers.
library/src/androidTest/java/com/owncloud/android/lib/resources/users/DeleteE2ERemoteOperationIT.kt Restricts the E2EE delete test to newer server versions.
library/src/androidTest/java/com/owncloud/android/lib/resources/files/SearchRemoteOperationIT.java Adapts shared-search expectations for old server behavior.
library/src/androidTest/java/com/owncloud/android/lib/resources/files/ReadFileRemoteOperationIT.kt Gates image-dimension assertions by server version.
library/src/androidTest/java/com/owncloud/android/GetCapabilitiesRemoteOperationIT.java Scopes the client-integration capability test to NC32+.
library/src/androidTest/java/com/owncloud/android/AbstractIT.java Adds a helper to compare the connected server version.
library/src/androidTest/java/com/nextcloud/android/lib/resources/search/UnifiedSearchRemoteOperationIT.kt Gates unified-search fileId assertions by server version.
library/src/androidTest/java/com/nextcloud/android/lib/resources/dashboard/DashboardGetWidgetItemsRemoteOperationIT.kt Restricts dashboard widget test to NC25+.
.drone.yml Renames the stable pipeline, bumps latest stable, and adds an oldest-stable CI job/service.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


if (result.isSuccess()) {
return result.getResultData().getVersion().isNewerOrEqual(version);
} else {
Comment on lines +356 to +360
protected boolean isServerAtLeast(OwnCloudVersion version) {
final var result = new GetCapabilitiesRemoteOperation().execute(nextcloudClient);

if (result.isSuccess()) {
return result.getResultData().getVersion().isNewerOrEqual(version);
class DeleteE2ERemoteOperationIT : AbstractIT() {
@Before
fun before() {
testOnlyOnServer(NextcloudVersion.nextcloud_34)
@Suppress("Detekt.MagicNumber")
assertEquals(ImageDimension(451f, 529f), remoteFile.imageDimension)
if (isServerAtLeast(NextcloudVersion.nextcloud_21)) {
assertEquals(ImageDimension(451f, 529f), remoteFile.imageDimension)
assertEquals(fileId.toString(), firstResult?.fileId())

if (isServerAtLeast(NextcloudVersion.nextcloud_21)) {
assertEquals(fileId.toString(), firstResult?.fileId())
Comment thread .drone.yml
- su www-data -c "cd /var/www/html/apps/photos; composer install --no-dev"
- su www-data -c "php /var/www/html/occ app:enable -f photos"
- su www-data -c "git clone --depth 1 -b $SERVER_VERSION https://github.com/nextcloud/assistant.git /var/www/html/apps/assistant/"
- su www-data -c "git clone --depth 1 -b main https://github.com/nextcloud/assistant.git /var/www/html/apps/assistant/"
Comment thread .drone.yml
Comment on lines +345 to +351
- su www-data -c "git clone --depth 1 -b $SERVER_VERSION https://github.com/nextcloud/notifications.git /var/www/html/apps/notifications/"
- su www-data -c "cd /var/www/html/apps/notifications"
- su www-data -c "php /var/www/html/occ app:enable -f notifications"
- su www-data -c "php /var/www/html/occ notification:generate test test"
- su www-data -c "git clone --depth 1 -b $SERVER_VERSION https://github.com/nextcloud/photos.git /var/www/html/apps/photos/"
- su www-data -c "cd /var/www/html/apps/photos"
- su www-data -c "php /var/www/html/occ app:enable -f photos"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants