diff --git a/pubspec.yaml b/pubspec.yaml index 7f4c5d7a..7adc1c6b 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -2,9 +2,9 @@ name: xworkmate description: "XWorkmate desktop-first AI workspace shell." publish_to: 'none' -version: 1.1.5+1 -build-date: 2026-06-28 -build-id: 4e02107 +version: 1.1.5+2 +build-date: 2026-06-30 +build-id: a876e3b environment: sdk: ^3.11.0 diff --git a/scripts/sync-version.sh b/scripts/sync-version.sh new file mode 100755 index 00000000..5894b0c5 --- /dev/null +++ b/scripts/sync-version.sh @@ -0,0 +1,17 @@ +#!/bin/bash +set -e + +# Extract current version from pubspec.yaml if not provided +# but here the user requested: version: 1.1.5+2 +TARGET_VERSION="1.1.5+2" +DATE=$(date +%Y-%m-%d) +COMMIT=$(git rev-parse --short HEAD) + +# Update version in pubspec.yaml +sed -i.bak -e "s/^version: .*/version: ${TARGET_VERSION}/" \ + -e "s/^build-date: .*/build-date: ${DATE}/" \ + -e "s/^build-id: .*/build-id: ${COMMIT}/" pubspec.yaml + +rm -f pubspec.yaml.bak + +echo "Updated pubspec.yaml to version=${TARGET_VERSION}, build-date=${DATE}, build-id=${COMMIT}" diff --git a/test/mock_plugins.dart b/test/mock_plugins.dart new file mode 100644 index 00000000..24c9c03b --- /dev/null +++ b/test/mock_plugins.dart @@ -0,0 +1,41 @@ +import 'package:flutter/services.dart'; +import 'package:flutter_test/flutter_test.dart'; + +void mockPlugins() { + TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger + .setMockMethodCallHandler( + const MethodChannel('dev.fluttercommunity.plus/package_info'), + (MethodCall methodCall) async { + return { + 'appName': 'XWorkmate', + 'packageName': 'com.xevor.xworkmate', + 'version': '1.1.5', + 'buildNumber': '1', + }; + }, + ); + TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger + .setMockMethodCallHandler( + const MethodChannel('dev.fluttercommunity.plus/device_info'), + (MethodCall methodCall) async { + return { + 'computerName': 'Test-Mac', + 'hostName': 'Test-Mac', + 'arch': 'arm64', + 'model': 'MacBookPro18,1', + 'kernelVersion': 'Darwin 21.4.0', + 'osRelease': '21.4.0', + 'activeCPUs': 10, + 'memorySize': 34359738368, + 'cpuFrequency': 3200000000, + }; + }, + ); + TestDefaultBinaryMessengerBinding.instance.defaultBinaryMessenger + .setMockMethodCallHandler( + const MethodChannel('plugins.flutter.io/path_provider'), + (MethodCall methodCall) async { + return '/tmp'; + }, + ); +} diff --git a/test/runtime/app_controller_thread_workspace_binding_test.dart b/test/runtime/app_controller_thread_workspace_binding_test.dart index 57ef91f4..4ce8c1d8 100644 --- a/test/runtime/app_controller_thread_workspace_binding_test.dart +++ b/test/runtime/app_controller_thread_workspace_binding_test.dart @@ -1230,7 +1230,7 @@ void main() { ); for ( var attempt = 0; - attempt < 300 && + attempt < 1000 && controller .requireTaskThreadForSessionInternal('unit-fixture-task-a') .lastArtifactSyncStatus != diff --git a/test/runtime/gateway_runtime_bridge_skills_test.dart b/test/runtime/gateway_runtime_bridge_skills_test.dart index 9d5f2285..a72e11ec 100644 --- a/test/runtime/gateway_runtime_bridge_skills_test.dart +++ b/test/runtime/gateway_runtime_bridge_skills_test.dart @@ -1,3 +1,4 @@ +import "../mock_plugins.dart"; import 'dart:convert'; import 'dart:io'; @@ -11,6 +12,7 @@ import 'package:xworkmate/runtime/secure_config_store.dart'; void main() { TestWidgetsFlutterBinding.ensureInitialized(); + mockPlugins(); HttpOverrides.global = null; test( diff --git a/test/runtime/runtime_controllers_settings_account_test.dart b/test/runtime/runtime_controllers_settings_account_test.dart index 3c1bef3c..01366591 100644 --- a/test/runtime/runtime_controllers_settings_account_test.dart +++ b/test/runtime/runtime_controllers_settings_account_test.dart @@ -1,3 +1,4 @@ +import "../mock_plugins.dart"; import 'dart:convert'; import 'dart:io';