Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
94bc5c5
Add custom build for debugging merge
tsdicloud Jan 31, 2024
ab07426
Add script for automatic backport PR creation
tsdicloud Feb 12, 2024
a19b6fe
Update script for adding new stable branch
TSI-amrutwaghmare Mar 29, 2024
6b8f760
Update stable branch 5.2.7
TSI-amrutwaghmare Apr 15, 2024
98d7d30
Update new version 5.2.7
TSI-amrutwaghmare May 22, 2024
61af49e
Update nmc-custom-client.yml
TSI-amrutwaghmare Jul 26, 2024
efa967c
Update nmc-custom-stables.yml
TSI-amrutwaghmare Aug 26, 2024
8f8a1f9
Update nmc-custom-stables.yml for NC stable 5.5.5
TSI-amrutwaghmare Sep 30, 2024
e5d9d0a
Update nmc-custom-client.yml for NC Stable 5.5.5
TSI-amrutwaghmare Sep 30, 2024
45ad2c5
Update nmc-custom-stables.yml for stable-6.1.3
harshada-15-tsys Nov 18, 2024
98da80e
Update nmc-custom-stables.yml
harshada-15-tsys Mar 31, 2025
7753914
Update nmc-custom-client.yml
harshada-15-tsys Mar 31, 2025
26d4278
Update nmc-custom-stables.yml for NC stable-6.6.0
harshada-15-tsys Apr 16, 2025
1cd0ba7
Update nmc-custom-stables.yml for NC Stable 6.5.0
harshada-15-tsys Apr 17, 2025
a19254b
Update nmc-custom-stables.yml for NC stable-6.6.0
harshada-15-tsys Apr 17, 2025
036fb36
Update nmc-custom-stables.yml to stable-6.6.3
harshada-15-tsys Jun 4, 2025
c0a92cd
Update nmc-custom-client.yml to stable-6.6.3
harshada-15-tsys Jun 4, 2025
5597211
NMC 1931 - Auto upload customisation and unit test
TSI-amrutwaghmare Nov 20, 2023
09c4595
NMC 1931 - Auto upload customisation and unit test changes
harshada-15-tsys Apr 11, 2025
53fae2e
NMC 1931 - Auto upload customisation changes
harshada-15-tsys Oct 3, 2025
5b30f3a
NMC 1931 - Auto upload customisation changes
harshada-15-tsys Dec 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions .github/workflows/nmc-custom-client.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
###
# SPDX-License-Identifier: AGPL-3.0
#
# Author: Bernd rederlechner <[email protected]>
#
# Builds a stable release package based on a release assembly
# customisation-<version>-<increment>
#
# As soon as a package is deployed to production, the tag and the branch
# MUST STAY FOR 2 years and not deleted.
#
# Release packages, tags and customisation branches not delivered to production should
# be deleted asap a newer release is available.
#

name: MCLOUD custom client merge

on:
workflow_dispatch:
inputs:
branch:
type: choice
description: Custom build from base branch
options:
- master
- stable-4.9.7
- stable-5.2.1
- stable-5.2.7
- stable-5.5.0
- stable-5.5.5
- stable-6.1.3
- stable-6.2.7
- stable-6.6.0
- stable-6.6.3
# - v3.0.8
default: master

jobs:
assemble-custom:
uses: nextmcloud/.github/.github/workflows/nmc-custom-client.yml@master
with:
trunk: 'master'
stable: ${{ inputs.branch }}
result: ${{ format('customisation-{0}-{1}', github.actor, inputs.branch) }}
secrets: inherit
45 changes: 45 additions & 0 deletions .github/workflows/nmc-custom-stables.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
###
# SPDX-License-Identifier: AGPL-3.0
#
# Author: Bernd rederlechner <[email protected]>
#
# Builds a stable release package based on a release assembly
# customisation-<version>-<increment>
#
# As soon as a package is deployed to production, the tag and the branch
# MUST STAY FOR 2 years and not deleted.
#
# Release packages, tags and customisation branches not delivered to production should
# be deleted asap a newer release is available.
#

name: MCLOUD create stable backports

on:
workflow_dispatch:
inputs:
branch:
type: choice
description: Custom build from base branch
options:
- stable-6.6.3
- stable-6.6.0
- stable-6.5.0
- stable-6.2.7
- stable-6.1.3
- stable-5.5.5
- stable-5.5.4
- stable-5.2.7
- stable-5.2.1
- stable-4.9.7
- 4.9.6
- 4.9.5
default: stable-6.6.3

jobs:
backport-custom:
uses: nextmcloud/.github/.github/workflows/nmc-custom-stables.yml@master
with:
trunk: 'master'
stable: ${{ inputs.branch }}
secrets: inherit
19 changes: 19 additions & 0 deletions Nextcloud.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,12 @@
AFCE353527E4ED5900FEA6C2 /* DateFormatter+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFCE353427E4ED5900FEA6C2 /* DateFormatter+Extension.swift */; };
AFCE353727E4ED7B00FEA6C2 /* NCShareCells.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFCE353627E4ED7B00FEA6C2 /* NCShareCells.swift */; };
AFCE353927E5DE0500FEA6C2 /* Shareable.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFCE353827E5DE0400FEA6C2 /* Shareable.swift */; };
AFCE353927E5DE0500FEA6C2 /* NCShare+Helper.swift in Sources */ = {isa = PBXBuildFile; fileRef = AFCE353827E5DE0400FEA6C2 /* NCShare+Helper.swift */; };
B52FAEA12DA8ED40001AB1BD /* AudioUploadTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B52FAEA02DA8ED40001AB1BD /* AudioUploadTests.swift */; };
B52FAEA42DA8EE60001AB1BD /* NCManageAutoUploadFileName.swift in Sources */ = {isa = PBXBuildFile; fileRef = B52FAEA32DA8EE60001AB1BD /* NCManageAutoUploadFileName.swift */; };
B52FAEA82DA8EE99001AB1BD /* CCManageAutoUpload.m in Sources */ = {isa = PBXBuildFile; fileRef = B52FAEA72DA8EE99001AB1BD /* CCManageAutoUpload.m */; };
C04E2F232A17BB4D001BAD85 /* FilesIntegrationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C04E2F222A17BB4D001BAD85 /* FilesIntegrationTests.swift */; };
D575039F27146F93008DC9DC /* String+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = F7A0D1342591FBC5008F8A13 /* String+Extension.swift */; };
D5B6AA7827200C7200D49C24 /* NCActivityTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D5B6AA7727200C7200D49C24 /* NCActivityTableViewCell.swift */; };
F310B1EF2BA862F1001C42F5 /* NCViewerMedia+VisionKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = F310B1EE2BA862F1001C42F5 /* NCViewerMedia+VisionKit.swift */; };
F321DA8A2B71205A00DDA0E6 /* NCTrashSelectTabBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = F321DA892B71205A00DDA0E6 /* NCTrashSelectTabBar.swift */; };
Expand Down Expand Up @@ -1221,6 +1227,11 @@
AFCE353427E4ED5900FEA6C2 /* DateFormatter+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "DateFormatter+Extension.swift"; sourceTree = "<group>"; };
AFCE353627E4ED7B00FEA6C2 /* NCShareCells.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NCShareCells.swift; sourceTree = "<group>"; };
AFCE353827E5DE0400FEA6C2 /* Shareable.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Shareable.swift; sourceTree = "<group>"; };
AFCE353827E5DE0400FEA6C2 /* NCShare+Helper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NCShare+Helper.swift"; sourceTree = "<group>"; };
B52FAEA02DA8ED40001AB1BD /* AudioUploadTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AudioUploadTests.swift; sourceTree = "<group>"; };
B52FAEA32DA8EE60001AB1BD /* NCManageAutoUploadFileName.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NCManageAutoUploadFileName.swift; sourceTree = "<group>"; };
B52FAEA62DA8EE99001AB1BD /* CCManageAutoUpload.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CCManageAutoUpload.h; sourceTree = "<group>"; };
B52FAEA72DA8EE99001AB1BD /* CCManageAutoUpload.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CCManageAutoUpload.m; sourceTree = "<group>"; };
C0046CDA2A17B98400D87C9D /* NextcloudUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NextcloudUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
C04E2F202A17BB4D001BAD85 /* NextcloudIntegrationTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = NextcloudIntegrationTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
D5B6AA7727200C7200D49C24 /* NCActivityTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NCActivityTableViewCell.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -2024,6 +2035,8 @@
isa = PBXGroup;
children = (
AA52EB452D42AC5A0089C348 /* Placeholder.swift */,
B52FAEA02DA8ED40001AB1BD /* AudioUploadTests.swift */,
AF8ED1FB2757821000B8DBC4 /* NextcloudUnitTests.swift */,
);
path = NextcloudUnitTests;
sourceTree = "<group>";
Expand Down Expand Up @@ -2518,6 +2531,9 @@
F76882042C0DD1E7001CF441 /* Settings */ = {
isa = PBXGroup;
children = (
B52FAEA62DA8EE99001AB1BD /* CCManageAutoUpload.h */,
B52FAEA72DA8EE99001AB1BD /* CCManageAutoUpload.m */,
B52FAEA32DA8EE60001AB1BD /* NCManageAutoUploadFileName.swift */,
F768820B2C0DD1E7001CF441 /* Settings */,
F76882162C0DD1E7001CF441 /* AutoUpload */,
F389C9F32CEE381E00049762 /* SelectAlbum */,
Expand Down Expand Up @@ -4083,6 +4099,7 @@
files = (
AA52EB472D42AC9E0089C348 /* Placeholder.swift in Sources */,
F372087D2BAB4C0F006B5430 /* TestConstants.swift in Sources */,
B52FAEA12DA8ED40001AB1BD /* AudioUploadTests.swift in Sources */,
F78E2D6C29AF02DB0024D4F3 /* Database.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
Expand Down Expand Up @@ -4491,6 +4508,7 @@
F700510522DF6A89003A3356 /* NCShare.swift in Sources */,
F72D1007210B6882009C96B7 /* NCPushNotificationEncryption.m in Sources */,
F76882362C0DD1E7001CF441 /* NCAcknowledgementsView.swift in Sources */,
B52FAEA82DA8EE99001AB1BD /* CCManageAutoUpload.m in Sources */,
F785EE9D246196DF00B3F945 /* NCNetworkingE2EE.swift in Sources */,
F724377B2C10B83E00C7C68D /* NCSharePermissions.swift in Sources */,
F794E13D2BBBFF2E003693D7 /* NCMainTabBarController.swift in Sources */,
Expand Down Expand Up @@ -4690,6 +4708,7 @@
AA8E041D2D300FDE00E7E89C /* NCShareNetworkingDelegate.swift in Sources */,
F78E2D6529AF02DB0024D4F3 /* Database.swift in Sources */,
F70CEF5623E9C7E50007035B /* UIColor+Extension.swift in Sources */,
B52FAEA42DA8EE60001AB1BD /* NCManageAutoUploadFileName.swift in Sources */,
F76882242C0DD1E7001CF441 /* NCSettingsAdvancedView.swift in Sources */,
F785129C2D7989B30087DDD0 /* NCNetworking+TermsOfService.swift in Sources */,
F77C3F5B2D9BF8CD00F3C471 /* UITabBar+Extension.swift in Sources */,
Expand Down
52 changes: 52 additions & 0 deletions Tests/NextcloudUnitTests/AudioUploadTests.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
//
// AudioUploadTests.swift
// NextcloudTests
//
// Created by A200020526 on 13/06/23.
// Copyright © 2023 Marino Faggiana. All rights reserved.
//

import XCTest
@testable import Nextcloud

final class AudioUploadTests: XCTestCase {
var viewController:NCAudioRecorderViewController?

override func setUpWithError() throws {
// Put setup code here. This method is called before the invocation of each test method in the class.
// Step 1. Create an instance of UIStoryboard
let viewController = UIStoryboard(name: "NCAudioRecorderViewController", bundle: nil).instantiateInitialViewController() as? NCAudioRecorderViewController
// Step 3. Make the viewDidLoad() execute.
viewController?.loadViewIfNeeded()
}

override func tearDownWithError() throws {
// Put teardown code here. This method is called after the invocation of each test method in the class.
viewController = nil
}

func testExample() throws {
// This is an example of a functional test case.
// Use XCTAssert and related functions to verify your tests produce the correct results.
// Any test you write for XCTest can be annotated as throws and async.
// Mark your test throws to produce an unexpected failure when your test encounters an uncaught error.
// Mark your test async to allow awaiting for asynchronous code to complete. Check the results with assertions afterwards.
}

func testPerformanceExample() throws {
// This is an example of a performance test case.
self.measure {
// Put the code you want to measure the time of here.
}
}

func testAudioMeterUpdateAfterDb(){
viewController?.audioMeterDidUpdate(0.5)
XCTAssertNotNil(!(viewController?.durationLabel.text?.isEmpty ?? false))
}

func testStartRecorder(){
viewController?.startStop()
XCTAssertEqual(viewController?.recording.state, nil, "Test start audio recorder")
}
}
28 changes: 28 additions & 0 deletions iOSClient/Settings/CCManageAutoUpload.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
//
// CCManageAutoUpload.h
// Nextcloud
//
// Created by Marino Faggiana on 01/09/15.
// Copyright (c) 2015 Marino Faggiana. All rights reserved.
//
// Author Marino Faggiana <[email protected]>
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
//

#import <XLForm.h>

@interface CCManageAutoUpload : XLFormViewController

@end
Loading