Skip to content

Commit 71ff07e

Browse files
authored
Merge pull request #360 from NativeScript/no-snapshot-on-catalina
chore: do not build with snapshot on catalina
2 parents 65dab15 + e0a565b commit 71ff07e

File tree

4 files changed

+38
-11
lines changed

4 files changed

+38
-11
lines changed

core/utils/os_utils.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
import platform
2+
3+
from core.enums.os_type import OSType
4+
from core.settings.Settings import HOST_OS
5+
from core.utils.version import Version
6+
7+
8+
class OSUtils(object):
9+
@staticmethod
10+
def get_version():
11+
"""
12+
Get OS version
13+
:return: Version as double.
14+
"""
15+
result = platform.release()
16+
version_string = ".".join(result.split(".", 2)[:2])
17+
return Version.get(version_string)
18+
19+
@staticmethod
20+
def is_catalina():
21+
"""
22+
Check if current os is macOS Catalina.
23+
:return: True if host OS is Catalina.
24+
"""
25+
return HOST_OS is OSType.OSX and OSUtils.get_version() >= 19.0

tests/cli/build/android_app_bundle_tests.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,19 @@
11
import os
22
import unittest
3-
import platform
43

5-
from core.enums.os_type import OSType
6-
from core.utils.file_utils import Folder, File
7-
from core.utils.device.adb import Adb
8-
from core.utils.run import run
94
from core.base_test.tns_run_test import TnsRunTest
5+
from core.enums.os_type import OSType
106
from core.settings import Settings
117
from core.settings.Settings import TEST_SUT_HOME, TEST_RUN_HOME, AppName, Android
8+
from core.utils.device.adb import Adb
9+
from core.utils.file_utils import Folder, File
10+
from core.utils.os_utils import OSUtils
11+
from core.utils.run import run
1212
from data.templates import Template
1313
from products.nativescript.tns import Tns
1414

1515

1616
class AndroidAppBundleTests(TnsRunTest):
17-
1817
app_name = AppName.DEFAULT
1918
app_path = os.path.join(TEST_RUN_HOME, app_name)
2019
target_project_dir = os.path.join(TEST_RUN_HOME, 'data', 'temp', app_name)
@@ -89,7 +88,7 @@ def test_200_build_android_app_bundle(self):
8988
self.emu.wait_for_text(text='TAP')
9089

9190
@unittest.skipIf(Settings.HOST_OS == OSType.WINDOWS, "Skip on Windows")
92-
@unittest.skipIf(platform.platform() == 'Darwin-19.0.0-x86_64-i386-64bit', 'snapshot not working on Catalina')
91+
@unittest.skipIf(OSUtils.is_catalina(), 'snapshot not working on Catalina')
9392
def test_205_build_android_app_bundle_env_snapshot(self):
9493
"""Build app with android app bundle option with --bundle and optimisations for snapshot.
9594
Verify the output(app.aab) and use bundletool to deploy on device."""

tests/cli/build/build_tests.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import os
2-
import platform
32
import unittest
43

54
from core.base_test.tns_test import TnsTest
@@ -9,11 +8,12 @@
98
from core.settings.Settings import TEST_RUN_HOME
109
from core.utils.file_utils import File, Folder
1110
from core.utils.npm import Npm
11+
from core.utils.os_utils import OSUtils
1212
from core.utils.run import run
1313
from data.templates import Template
1414
from products.nativescript.tns import Tns
15-
from products.nativescript.tns_paths import TnsPaths
1615
from products.nativescript.tns_assert import TnsAssert
16+
from products.nativescript.tns_paths import TnsPaths
1717

1818

1919
class BuildTests(TnsTest):
@@ -93,7 +93,7 @@ def test_001_build_android(self):
9393
assert "Gradle build..." in result.output, "Gradle build is not called."
9494
assert result.output.count("Gradle build...") == 1, "More than 1 gradle build is triggered."
9595

96-
@unittest.skipIf(platform.platform() == 'Darwin-19.0.0-x86_64-i386-64bit', 'snapshot not working on Catalina')
96+
@unittest.skipIf(OSUtils.is_catalina(), 'snapshot not working on Catalina')
9797
def test_002_build_android_release_uglify_snapshot_sourcemap(self):
9898
# https://github.com/NativeScript/nativescript-dev-webpack/issues/920
9999
result = Tns.build_android(self.app_name, release=True, uglify=True, snapshot=True, source_map=True)

tests/code_sharing/ng_new_tests.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
from core.settings import Settings
1515
from core.utils.file_utils import Folder
1616
from core.utils.json_utils import JsonUtils
17+
from core.utils.os_utils import OSUtils
1718
from data.apps import Apps
1819
from data.const import Colors
1920
from products.angular.ng import NG, NS_SCHEMATICS
@@ -177,8 +178,10 @@ def run_bundle(app_data, webpack, shared, theme, emu, sim):
177178

178179
@staticmethod
179180
def build_release():
181+
# Do not build with snapshot on macOS Catalina due to known issue.
182+
snapshot = not OSUtils.is_catalina()
180183
Tns.build(app_name=NGNewTests.app_name, platform=Platform.ANDROID, release=True,
181-
bundle=True, aot=True, uglify=True, snapshot=True)
184+
bundle=True, aot=True, uglify=True, snapshot=snapshot)
182185
if Settings.HOST_OS is OSType.OSX:
183186
Tns.build(app_name=NGNewTests.app_name, platform=Platform.IOS, release=True, for_device=True,
184187
bundle=True, aot=True, uglify=True)

0 commit comments

Comments
 (0)