1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee

feat: CI测试

This commit is contained in:
steven 2023-04-02 12:51:43 +08:00
parent 533696e34d
commit 3d5012fced
90 changed files with 5662 additions and 2008 deletions

View File

@ -0,0 +1,6 @@
[android]
target = Google Inc.:Google APIs:23
[maven_repositories]
central = https://repo1.maven.org/maven2

View File

@ -12,16 +12,16 @@ module.exports = {
apps: {
'ios.debug': {
type: 'ios.app',
binaryPath: 'ios/build/Build/Products/Debug-iphonesimulator/testHotUpdate.app',
binaryPath: 'ios/build/Build/Products/Debug-iphonesimulator/AwesomeProject.app',
build:
'xcodebuild -workspace ios/testHotUpdate.xcworkspace -scheme testHotUpdate -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build',
'xcodebuild -workspace ios/AwesomeProject.xcworkspace -scheme AwesomeProject -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build',
},
'ios.release': {
type: 'ios.app',
binaryPath:
'ios/build/Build/Products/Release-iphonesimulator/testHotUpdate.app',
'ios/build/Build/Products/Release-iphonesimulator/AwesomeProject.app',
build:
'xcodebuild -workspace ios/testHotUpdate.xcworkspace -scheme testHotUpdate -configuration Release -sdk iphonesimulator -derivedDataPath ios/build',
'xcodebuild -workspace ios/AwesomeProject.xcworkspace -scheme AwesomeProject -configuration Release -sdk iphonesimulator -derivedDataPath ios/build',
},
'android.debug': {
type: 'android.apk',

View File

@ -0,0 +1,4 @@
module.exports = {
root: true,
extends: '@react-native-community',
};

View File

@ -0,0 +1,66 @@
[ignore]
; We fork some components by platform
.*/*[.]android.js
; Ignore "BUCK" generated dirs
<PROJECT_ROOT>/\.buckd/
; Ignore polyfills
node_modules/react-native/Libraries/polyfills/.*
; Flow doesn't support platforms
.*/Libraries/Utilities/LoadingView.js
.*/node_modules/resolve/test/resolver/malformed_package_json/package\.json$
[untyped]
.*/node_modules/@react-native-community/cli/.*/.*
[include]
[libs]
node_modules/react-native/interface.js
node_modules/react-native/flow/
[options]
emoji=true
exact_by_default=true
format.bracket_spacing=false
module.file_ext=.js
module.file_ext=.json
module.file_ext=.ios.js
munge_underscores=true
module.name_mapper='^react-native/\(.*\)$' -> '<PROJECT_ROOT>/node_modules/react-native/\1'
module.name_mapper='^@?[./a-zA-Z0-9$_-]+\.\(bmp\|gif\|jpg\|jpeg\|png\|psd\|svg\|webp\|m4v\|mov\|mp4\|mpeg\|mpg\|webm\|aac\|aiff\|caf\|m4a\|mp3\|wav\|html\|pdf\)$' -> '<PROJECT_ROOT>/node_modules/react-native/Libraries/Image/RelativeImageStub'
suppress_type=$FlowIssue
suppress_type=$FlowFixMe
suppress_type=$FlowFixMeProps
suppress_type=$FlowFixMeState
[lints]
sketchy-null-number=warn
sketchy-null-mixed=warn
sketchy-number=warn
untyped-type-import=warn
nonstrict-import=warn
deprecated-type=warn
unsafe-getters-setters=warn
unnecessary-invariant=warn
[strict]
deprecated-type
nonstrict-import
sketchy-null
unclear-type
unsafe-getters-setters
untyped-import
untyped-type-import
[version]
^0.176.3

View File

@ -0,0 +1,59 @@
name: e2e-android
on: push
jobs:
e2e-android:
runs-on: macos-latest
env:
DETOX_CONFIGURATION: android.emu.release
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
cache: yarn
node-version-file: .nvmrc
- name: Install Yarn dependencies
run: yarn --frozen-lockfile --prefer-offline
- name: Setup Java
uses: actions/setup-java@v3
with:
cache: gradle
distribution: temurin
java-version: 17
- name: Cache Detox build
id: cache-detox-build
uses: actions/cache@v3
with:
path: android/app/build
key: ${{ runner.os }}-detox-build
restore-keys: |
${{ runner.os }}-detox-build
- name: Detox build
run: yarn detox build --configuration ${{ env.DETOX_CONFIGURATION }}
- name: Get device name
id: device
run: node -e "console.log('AVD_NAME=' + require('./.detoxrc').devices.emulator.device.avdName)" >> $GITHUB_OUTPUT
- name: Detox test
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: 31
arch: x86_64
avd-name: ${{ steps.device.outputs.AVD_NAME }}
script: yarn detox test --configuration ${{ env.DETOX_CONFIGURATION }} --headless --record-logs all
- name: Upload artifacts
if: failure()
uses: actions/upload-artifact@v3
with:
name: detox-artifacts
path: artifacts

View File

@ -24,16 +24,12 @@ ios/.xcode.env.local
# Android/IntelliJ
#
release/
build/
.idea
.gradle
local.properties
*.iml
*.hprof
.cxx/
*.keystore
!debug.keystore
# node.js
#
@ -41,6 +37,12 @@ node_modules/
npm-debug.log
yarn-error.log
# BUCK
buck-out/
\.buckd/
*.keystore
!debug.keystore
# fastlane
#
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
@ -59,6 +61,3 @@ yarn-error.log
# Ruby / CocoaPods
/ios/Pods/
/vendor/bundle/
# Temporary files created by Metro to check the health of the file watcher
.metro-health-check*

View File

@ -0,0 +1 @@
18

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
{"/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/detox.config.js":{"path":"/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/detox.config.js","statementMap":{"0":{"start":{"line":2,"column":0},"end":{"line":110,"column":2}}},"fnMap":{},"branchMap":{"0":{"loc":{"start":{"line":4,"column":11},"end":{"line":4,"column":47}},"type":"cond-expr","locations":[{"start":{"line":4,"column":28},"end":{"line":4,"column":35}},{"start":{"line":4,"column":38},"end":{"line":4,"column":47}}],"line":4},"1":{"loc":{"start":{"line":9,"column":18},"end":{"line":9,"column":48}},"type":"cond-expr","locations":[{"start":{"line":9,"column":35},"end":{"line":9,"column":36}},{"start":{"line":9,"column":39},"end":{"line":9,"column":48}}],"line":9},"2":{"loc":{"start":{"line":15,"column":11},"end":{"line":15,"column":49}},"type":"cond-expr","locations":[{"start":{"line":15,"column":28},"end":{"line":15,"column":37}},{"start":{"line":15,"column":40},"end":{"line":15,"column":49}}],"line":15},"3":{"loc":{"start":{"line":16,"column":18},"end":{"line":16,"column":56}},"type":"cond-expr","locations":[{"start":{"line":16,"column":35},"end":{"line":16,"column":44}},{"start":{"line":16,"column":47},"end":{"line":16,"column":56}}],"line":16},"4":{"loc":{"start":{"line":58,"column":15},"end":{"line":58,"column":49}},"type":"cond-expr","locations":[{"start":{"line":58,"column":32},"end":{"line":58,"column":37}},{"start":{"line":58,"column":40},"end":{"line":58,"column":49}}],"line":58}},"s":{"0":1},"f":{},"b":{"0":[0,1],"1":[0,1],"2":[0,1],"3":[0,1],"4":[0,1]},"_coverageSchema":"1a1c01bbd47fc00a2c39e90264f33305004495a9","hash":"58bedfd3138217937b7d396abd7b0c5826481f79","contentHash":"522b38643de93a23c72e2d1e6fe4f7c043965dd9f6c9c9782d17180545d4bfd3"}}

View File

@ -1 +0,0 @@
{"parent":"f45cbde3-af32-4880-b276-321a181077f9","pid":95187,"argv":["/usr/local/bin/node","/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/node_modules/.bin/jest","--config","e2e/jest.config.js","e2e"],"execArgv":[],"cwd":"/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate","time":1680248198332,"ppid":95181,"coverageFilename":"/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/.nyc_output/19bd8c73-3fb6-4ed1-a0bb-38f0a5fd9ee6.json","externalId":"","uuid":"19bd8c73-3fb6-4ed1-a0bb-38f0a5fd9ee6","files":["/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/e2e/globalSetup.ts"]}

View File

@ -1 +0,0 @@
{"parent":null,"pid":95180,"argv":["/usr/local/bin/node","/opt/homebrew/bin/yarn","detox","test","--configuration","android.emu.release"],"execArgv":[],"cwd":"/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate","time":1680248197419,"ppid":95177,"coverageFilename":"/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/.nyc_output/d981de3a-162c-4c70-80a9-84bb168e00d7.json","externalId":"","uuid":"d981de3a-162c-4c70-80a9-84bb168e00d7","files":[]}

View File

@ -1 +0,0 @@
{"parent":"d981de3a-162c-4c70-80a9-84bb168e00d7","pid":95181,"argv":["/usr/local/bin/node","/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/node_modules/.bin/detox","test","--configuration","android.emu.release"],"execArgv":[],"cwd":"/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate","time":1680248197907,"ppid":95180,"coverageFilename":"/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/.nyc_output/f45cbde3-af32-4880-b276-321a181077f9.json","externalId":"","uuid":"f45cbde3-af32-4880-b276-321a181077f9","files":["/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/detox.config.js"]}

View File

@ -1 +0,0 @@
{"processes":{"19bd8c73-3fb6-4ed1-a0bb-38f0a5fd9ee6":{"parent":"f45cbde3-af32-4880-b276-321a181077f9","children":[]},"d981de3a-162c-4c70-80a9-84bb168e00d7":{"parent":null,"children":["f45cbde3-af32-4880-b276-321a181077f9"]},"f45cbde3-af32-4880-b276-321a181077f9":{"parent":"d981de3a-162c-4c70-80a9-84bb168e00d7","children":["19bd8c73-3fb6-4ed1-a0bb-38f0a5fd9ee6"]}},"files":{"/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/e2e/globalSetup.ts":["19bd8c73-3fb6-4ed1-a0bb-38f0a5fd9ee6"],"/Users/arvinh/Desktop/remotework/react-native-pushy/Example/testHotUpdate/detox.config.js":["f45cbde3-af32-4880-b276-321a181077f9"]},"externalIds":{}}

View File

@ -1 +1 @@
3.1.1
2.7.5

View File

@ -1,6 +1,6 @@
source 'https://rubygems.org'
# You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
ruby File.read(File.join(__dir__, '.ruby-version')).strip
ruby '3.1.1'
gem 'cocoapods', '~> 1.11', '>= 1.11.3'
gem 'cocoapods', '~> 1.11', '>= 1.11.2'

View File

@ -1,30 +1,29 @@
GEM
remote: https://rubygems.org/
specs:
CFPropertyList (3.0.5)
CFPropertyList (3.0.6)
rexml
activesupport (6.1.5.1)
activesupport (7.0.4.3)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
tzinfo (~> 2.0)
zeitwerk (~> 2.3)
addressable (2.8.0)
public_suffix (>= 2.0.2, < 5.0)
addressable (2.8.1)
public_suffix (>= 2.0.2, < 6.0)
algoliasearch (1.27.5)
httpclient (~> 2.8, >= 2.8.3)
json (>= 1.5.1)
atomos (0.1.3)
claide (1.1.0)
cocoapods (1.11.3)
cocoapods (1.12.0)
addressable (~> 2.8)
claide (>= 1.0.2, < 2.0)
cocoapods-core (= 1.11.3)
cocoapods-core (= 1.12.0)
cocoapods-deintegrate (>= 1.0.3, < 2.0)
cocoapods-downloader (>= 1.4.0, < 2.0)
cocoapods-downloader (>= 1.6.0, < 2.0)
cocoapods-plugins (>= 1.0.0, < 2.0)
cocoapods-search (>= 1.0.0, < 2.0)
cocoapods-trunk (>= 1.4.0, < 2.0)
cocoapods-trunk (>= 1.6.0, < 2.0)
cocoapods-try (>= 1.1.0, < 2.0)
colored2 (~> 3.1)
escape (~> 0.0.4)
@ -32,10 +31,10 @@ GEM
gh_inspector (~> 1.0)
molinillo (~> 0.8.0)
nap (~> 1.0)
ruby-macho (>= 1.0, < 3.0)
ruby-macho (>= 2.3.0, < 3.0)
xcodeproj (>= 1.21.0, < 2.0)
cocoapods-core (1.11.3)
activesupport (>= 5.0, < 7)
cocoapods-core (1.12.0)
activesupport (>= 5.0, < 8)
addressable (~> 2.8)
algoliasearch (~> 1.0)
concurrent-ruby (~> 1.1)
@ -54,19 +53,19 @@ GEM
netrc (~> 0.11)
cocoapods-try (1.2.0)
colored2 (3.1.2)
concurrent-ruby (1.1.10)
concurrent-ruby (1.2.2)
escape (0.0.4)
ethon (0.15.0)
ethon (0.16.0)
ffi (>= 1.15.0)
ffi (1.15.5)
fourflusher (2.3.1)
fuzzy_match (2.0.4)
gh_inspector (1.1.3)
httpclient (2.8.3)
i18n (1.10.0)
i18n (1.12.0)
concurrent-ruby (~> 1.0)
json (2.6.1)
minitest (5.15.0)
json (2.6.3)
minitest (5.18.0)
molinillo (0.8.0)
nanaimo (0.3.0)
nap (1.1.0)
@ -76,25 +75,24 @@ GEM
ruby-macho (2.5.1)
typhoeus (1.4.0)
ethon (>= 0.9.0)
tzinfo (2.0.4)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
xcodeproj (1.21.0)
xcodeproj (1.22.0)
CFPropertyList (>= 2.3.3, < 4.0)
atomos (~> 0.1.3)
claide (>= 1.0.2, < 2.0)
colored2 (~> 3.1)
nanaimo (~> 0.3.0)
rexml (~> 3.2.4)
zeitwerk (2.5.4)
PLATFORMS
ruby
DEPENDENCIES
cocoapods (~> 1.11, >= 1.11.3)
cocoapods (~> 1.11, >= 1.11.2)
RUBY VERSION
ruby 3.1.1p18
BUNDLED WITH
2.2.27
2.1.4

View File

@ -0,0 +1,66 @@
# react-native-android-detox
[![e2e-android](https://github.com/remarkablemark/react-native-android-detox/actions/workflows/e2e-android.yml/badge.svg)](https://github.com/remarkablemark/react-native-android-detox/actions/workflows/e2e-android.yml)
React Native Android Detox. The project has already been patched with the [additional Android configuration](https://wix.github.io/Detox/docs/introduction/project-setup/).
## Prerequisites
Follow the [environment setup](https://wix.github.io/Detox/docs/introduction/getting-started).
## Install
Clone the repository:
```sh
git clone https://github.com/remarkablemark/react-native-android-detox.git
cd react-native-android-detox
```
Install the dependencies:
```sh
yarn
```
## Build
### Android (Debug)
Build the Android debug app:
```sh
yarn detox build --configuration android.emu.debug
```
### Android (Release)
Build the Android release app:
```sh
yarn detox build --configuration android.emu.release
```
## Test
### Android (Debug)
Start the app:
```sh
yarn start
```
Run the test:
```sh
yarn detox test --configuration android.emu.debug
```
### Android (Release)
Run the test:
```sh
yarn detox test --configuration android.emu.release
```

View File

@ -0,0 +1,55 @@
# To learn about Buck see [Docs](https://buckbuild.com/).
# To run your application with Buck:
# - install Buck
# - `npm start` - to start the packager
# - `cd android`
# - `keytool -genkey -v -keystore keystores/debug.keystore -storepass android -alias androiddebugkey -keypass android -dname "CN=Android Debug,O=Android,C=US"`
# - `./gradlew :app:copyDownloadableDepsToLibs` - make all Gradle compile dependencies available to Buck
# - `buck install -r android/app` - compile, install and run application
#
load(":build_defs.bzl", "create_aar_targets", "create_jar_targets")
lib_deps = []
create_aar_targets(glob(["libs/*.aar"]))
create_jar_targets(glob(["libs/*.jar"]))
android_library(
name = "all-libs",
exported_deps = lib_deps,
)
android_library(
name = "app-code",
srcs = glob([
"src/main/java/**/*.java",
]),
deps = [
":all-libs",
":build_config",
":res",
],
)
android_build_config(
name = "build_config",
package = "com.awesomeproject",
)
android_resource(
name = "res",
package = "com.awesomeproject",
res = "src/main/res",
)
android_binary(
name = "app",
keystore = "//android/keystores:debug",
manifest = "src/main/AndroidManifest.xml",
package_type = "debug",
deps = [
":app-code",
],
)

View File

@ -1,72 +1,105 @@
apply plugin: "com.android.application"
apply plugin: "com.facebook.react"
import com.android.build.OutputFile
/**
* This is the configuration block to customize your React Native Android app.
* By default you don't need to apply any configuration, just uncomment the lines you need.
* The react.gradle file registers a task for each build variant (e.g. bundleDebugJsAndAssets
* and bundleReleaseJsAndAssets).
* These basically call `react-native bundle` with the correct arguments during the Android build
* cycle. By default, bundleDebugJsAndAssets is skipped, as in debug/dev mode we prefer to load the
* bundle directly from the development server. Below you can see all the possible configurations
* and their defaults. If you decide to add a configuration block, make sure to add it before the
* `apply from: "../../node_modules/react-native/react.gradle"` line.
*
* project.ext.react = [
* // the name of the generated asset file containing your JS bundle
* bundleAssetName: "index.android.bundle",
*
* // the entry file for bundle generation. If none specified and
* // "index.android.js" exists, it will be used. Otherwise "index.js" is
* // default. Can be overridden with ENTRY_FILE environment variable.
* entryFile: "index.android.js",
*
* // https://reactnative.dev/docs/performance#enable-the-ram-format
* bundleCommand: "ram-bundle",
*
* // whether to bundle JS and assets in debug mode
* bundleInDebug: false,
*
* // whether to bundle JS and assets in release mode
* bundleInRelease: true,
*
* // whether to bundle JS and assets in another build variant (if configured).
* // See http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Build-Variants
* // The configuration property can be in the following formats
* // 'bundleIn${productFlavor}${buildType}'
* // 'bundleIn${buildType}'
* // bundleInFreeDebug: true,
* // bundleInPaidRelease: true,
* // bundleInBeta: true,
*
* // whether to disable dev mode in custom build variants (by default only disabled in release)
* // for example: to disable dev mode in the staging build type (if configured)
* devDisabledInStaging: true,
* // The configuration property can be in the following formats
* // 'devDisabledIn${productFlavor}${buildType}'
* // 'devDisabledIn${buildType}'
*
* // the root of your project, i.e. where "package.json" lives
* root: "../../",
*
* // where to put the JS bundle asset in debug mode
* jsBundleDirDebug: "$buildDir/intermediates/assets/debug",
*
* // where to put the JS bundle asset in release mode
* jsBundleDirRelease: "$buildDir/intermediates/assets/release",
*
* // where to put drawable resources / React Native assets, e.g. the ones you use via
* // require('./image.png')), in debug mode
* resourcesDirDebug: "$buildDir/intermediates/res/merged/debug",
*
* // where to put drawable resources / React Native assets, e.g. the ones you use via
* // require('./image.png')), in release mode
* resourcesDirRelease: "$buildDir/intermediates/res/merged/release",
*
* // by default the gradle tasks are skipped if none of the JS files or assets change; this means
* // that we don't look at files in android/ or ios/ to determine whether the tasks are up to
* // date; if you have any other folders that you want to ignore for performance reasons (gradle
* // indexes the entire tree), add them here. Alternatively, if you have JS files in android/
* // for example, you might want to remove it from here.
* inputExcludes: ["android/**", "ios/**"],
*
* // override which node gets called and with what additional arguments
* nodeExecutableAndArgs: ["node"],
*
* // supply additional arguments to the packager
* extraPackagerArgs: []
* ]
*/
react {
/* Folders */
// The root of your project, i.e. where "package.json" lives. Default is '..'
// root = file("../")
// The folder where the react-native NPM package is. Default is ../node_modules/react-native
// reactNativeDir = file("../node_modules/react-native")
// The folder where the react-native Codegen package is. Default is ../node_modules/react-native-codegen
// codegenDir = file("../node_modules/react-native-codegen")
// The cli.js file which is the React Native CLI entrypoint. Default is ../node_modules/react-native/cli.js
// cliFile = file("../node_modules/react-native/cli.js")
/* Variants */
// The list of variants to that are debuggable. For those we're going to
// skip the bundling of the JS bundle and the assets. By default is just 'debug'.
// If you add flavors like lite, prod, etc. you'll have to list your debuggableVariants.
// debuggableVariants = ["liteDebug", "prodDebug"]
project.ext.react = [
enableHermes: false, // clean and rebuild if changing
]
/* Bundling */
// A list containing the node command and its flags. Default is just 'node'.
// nodeExecutableAndArgs = ["node"]
//
// The command to run when bundling. By default is 'bundle'
// bundleCommand = "ram-bundle"
//
// The path to the CLI configuration file. Default is empty.
// bundleConfig = file(../rn-cli.config.js)
//
// The name of the generated asset file containing your JS bundle
// bundleAssetName = "MyApplication.android.bundle"
//
// The entry file for bundle generation. Default is 'index.android.js' or 'index.js'
// entryFile = file("../js/MyApplication.android.js")
//
// A list of extra flags to pass to the 'bundle' commands.
// See https://github.com/react-native-community/cli/blob/main/docs/commands.md#bundle
// extraPackagerArgs = []
/* Hermes Commands */
// The hermes compiler command to run. By default it is 'hermesc'
// hermesCommand = "$rootDir/my-custom-hermesc/bin/hermesc"
//
// The list of flags to pass to the Hermes compiler. By default is "-O", "-output-source-map"
// hermesFlags = ["-O", "-output-source-map"]
}
apply from: "../../node_modules/react-native/react.gradle"
/**
* Set this to true to create four separate APKs instead of one,
* one for each native architecture. This is useful if you don't
* use App Bundles (https://developer.android.com/guide/app-bundle/)
* and want to have separate APKs to upload to the Play Store.
* Set this to true to create two separate APKs instead of one:
* - An APK that only works on ARM devices
* - An APK that only works on x86 devices
* The advantage is the size of the APK is reduced by about 4MB.
* Upload all the APKs to the Play Store and people will download
* the correct one based on the CPU architecture of their device.
*/
def enableSeparateBuildPerCPUArchitecture = false
/**
* Set this to true to Run Proguard on Release builds to minify the Java bytecode.
* Run Proguard to shrink the Java bytecode in release builds.
*/
def enableProguardInReleaseBuilds = false
/**
* The preferred build flavor of JavaScriptCore (JSC)
* The preferred build flavor of JavaScriptCore.
*
* For example, to use the international variant, you can use:
* `def jscFlavor = 'org.webkit:android-jsc-intl:+'`
@ -79,9 +112,16 @@ def enableProguardInReleaseBuilds = false
def jscFlavor = 'org.webkit:android-jsc:+'
/**
* Private function to get the list of Native Architectures you want to build.
* This reads the value from reactNativeArchitectures in your gradle.properties
* file and works together with the --active-arch-only flag of react-native run-android.
* Whether to enable the Hermes VM.
*
* This should be set on project.ext.react and that value will be read here. If it is not set
* on project.ext.react, JavaScript will not be compiled to Hermes Bytecode
* and the benefits of using Hermes will therefore be sharply reduced.
*/
def enableHermes = project.ext.react.get("enableHermes", false);
/**
* Architectures to build native code for.
*/
def reactNativeArchitectures() {
def value = project.getProperties().get("reactNativeArchitectures")
@ -93,13 +133,82 @@ android {
compileSdkVersion rootProject.ext.compileSdkVersion
namespace "com.testhotupdate"
defaultConfig {
applicationId "com.testhotupdate"
applicationId "com.awesomeproject"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 1
versionName "1.0"
testBuildType System.getProperty('testBuildType', 'debug')
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString()
if (isNewArchitectureEnabled()) {
// We configure the NDK build only if you decide to opt-in for the New Architecture.
externalNativeBuild {
ndkBuild {
arguments "APP_PLATFORM=android-21",
"APP_STL=c++_shared",
"NDK_TOOLCHAIN_VERSION=clang",
"GENERATED_SRC_DIR=$buildDir/generated/source",
"PROJECT_BUILD_DIR=$buildDir",
"REACT_ANDROID_DIR=$rootDir/../node_modules/react-native/ReactAndroid",
"REACT_ANDROID_BUILD_DIR=$rootDir/../node_modules/react-native/ReactAndroid/build",
"NODE_MODULES_DIR=$rootDir/../node_modules"
cFlags "-Wall", "-Werror", "-fexceptions", "-frtti", "-DWITH_INSPECTOR=1"
cppFlags "-std=c++17"
// Make sure this target name is the same you specify inside the
// src/main/jni/Android.mk file for the `LOCAL_MODULE` variable.
targets "awesomeproject_appmodules"
}
}
if (!enableSeparateBuildPerCPUArchitecture) {
ndk {
abiFilters (*reactNativeArchitectures())
}
}
}
}
if (isNewArchitectureEnabled()) {
// We configure the NDK build only if you decide to opt-in for the New Architecture.
externalNativeBuild {
ndkBuild {
path "$projectDir/src/main/jni/Android.mk"
}
}
def reactAndroidProjectDir = project(':ReactAndroid').projectDir
def packageReactNdkDebugLibs = tasks.register("packageReactNdkDebugLibs", Copy) {
dependsOn(":ReactAndroid:packageReactNdkDebugLibsForBuck")
from("$reactAndroidProjectDir/src/main/jni/prebuilt/lib")
into("$buildDir/react-ndk/exported")
}
def packageReactNdkReleaseLibs = tasks.register("packageReactNdkReleaseLibs", Copy) {
dependsOn(":ReactAndroid:packageReactNdkReleaseLibsForBuck")
from("$reactAndroidProjectDir/src/main/jni/prebuilt/lib")
into("$buildDir/react-ndk/exported")
}
afterEvaluate {
// If you wish to add a custom TurboModule or component locally,
// you should uncomment this line.
// preBuild.dependsOn("generateCodegenArtifactsFromSchema")
preDebugBuild.dependsOn(packageReactNdkDebugLibs)
preReleaseBuild.dependsOn(packageReactNdkReleaseLibs)
// Due to a bug inside AGP, we have to explicitly set a dependency
// between configureNdkBuild* tasks and the preBuild tasks.
// This can be removed once this is solved: https://issuetracker.google.com/issues/207403732
configureNdkBuildRelease.dependsOn(preReleaseBuild)
configureNdkBuildDebug.dependsOn(preDebugBuild)
reactNativeArchitectures().each { architecture ->
tasks.findByName("configureNdkBuildDebug[${architecture}]")?.configure {
dependsOn("preDebugBuild")
}
tasks.findByName("configureNdkBuildRelease[${architecture}]")?.configure {
dependsOn("preReleaseBuild")
}
}
}
}
splits {
@ -128,6 +237,7 @@ android {
signingConfig signingConfigs.debug
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
proguardFile "${rootProject.projectDir}/../node_modules/detox/android/detox/proguard-rules-app.pro"
}
}
@ -149,22 +259,67 @@ android {
}
dependencies {
// The version of react-native is set by the React Native Gradle Plugin
implementation("com.facebook.react:react-android")
androidTestImplementation('com.wix:detox:+')
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.0.0")
//noinspection GradleDynamicVersion
implementation "com.facebook.react:react-native:+" // From node_modules
implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0"
debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}") {
exclude group:'com.facebook.fbjni'
}
debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}")
debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") {
exclude group:'com.facebook.flipper'
exclude group:'com.squareup.okhttp3', module:'okhttp'
}
debugImplementation("com.facebook.flipper:flipper-fresco-plugin:${FLIPPER_VERSION}")
if (hermesEnabled.toBoolean()) {
implementation("com.facebook.react:hermes-android")
debugImplementation("com.facebook.flipper:flipper-fresco-plugin:${FLIPPER_VERSION}") {
exclude group:'com.facebook.flipper'
}
if (enableHermes) {
//noinspection GradleDynamicVersion
implementation("com.facebook.react:hermes-engine:+") { // From node_modules
exclude group:'com.facebook.fbjni'
}
} else {
implementation jscFlavor
}
}
if (isNewArchitectureEnabled()) {
// If new architecture is enabled, we let you build RN from source
// Otherwise we fallback to a prebuilt .aar bundled in the NPM package.
// This will be applied to all the imported transtitive dependency.
configurations.all {
resolutionStrategy.dependencySubstitution {
substitute(module("com.facebook.react:react-native"))
.using(project(":ReactAndroid"))
.because("On New Architecture we're building React Native from source")
substitute(module("com.facebook.react:hermes-engine"))
.using(project(":ReactAndroid:hermes-engine"))
.because("On New Architecture we're building Hermes from source")
}
}
}
// Run this once to be able to run the application with BUCK
// puts all compile dependencies into folder libs for BUCK to use
task copyDownloadableDepsToLibs(type: Copy) {
from configurations.implementation
into 'libs'
}
apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
def isNewArchitectureEnabled() {
// To opt-in for the New Architecture, you can either:
// - Set `newArchEnabled` to true inside the `gradle.properties` file
// - Invoke gradle with `-newArchEnabled=true`
// - Set an environment variable `ORG_GRADLE_PROJECT_newArchEnabled=true`
return project.hasProperty("newArchEnabled") && project.newArchEnabled == "true"
}

View File

@ -0,0 +1,19 @@
"""Helper definitions to glob .aar and .jar targets"""
def create_aar_targets(aarfiles):
for aarfile in aarfiles:
name = "aars__" + aarfile[aarfile.rindex("/") + 1:aarfile.rindex(".aar")]
lib_deps.append(":" + name)
android_prebuilt_aar(
name = name,
aar = aarfile,
)
def create_jar_targets(jarfiles):
for jarfile in jarfiles:
name = "jars__" + jarfile[jarfile.rindex("/") + 1:jarfile.rindex(".jar")]
lib_deps.append(":" + name)
prebuilt_jar(
name = name,
binary_jar = jarfile,
)

View File

@ -0,0 +1,29 @@
package com.awesomeproject;
import com.wix.detox.Detox;
import com.wix.detox.config.DetoxConfig;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.LargeTest;
import androidx.test.rule.ActivityTestRule;
@RunWith(AndroidJUnit4.class)
@LargeTest
public class DetoxTest {
@Rule
public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule<>(MainActivity.class, false, false);
@Test
public void runDetoxTests() {
DetoxConfig detoxConfig = new DetoxConfig();
detoxConfig.idlePolicyConfig.masterTimeoutSec = 90;
detoxConfig.idlePolicyConfig.idleResourceTimeoutSec = 60;
detoxConfig.rnContextLoadTimeoutSec = (BuildConfig.DEBUG ? 180 : 60);
Detox.runTests(mActivityRule, detoxConfig);
}
}

View File

@ -4,7 +4,7 @@
* <p>This source code is licensed under the MIT license found in the LICENSE file in the root
* directory of this source tree.
*/
package com.testhotupdate;
package com.awesomeproject;
import android.content.Context;
import com.facebook.flipper.android.AndroidFlipperClient;
@ -17,6 +17,7 @@ import com.facebook.flipper.plugins.inspector.DescriptorMapping;
import com.facebook.flipper.plugins.inspector.InspectorFlipperPlugin;
import com.facebook.flipper.plugins.network.FlipperOkhttpInterceptor;
import com.facebook.flipper.plugins.network.NetworkFlipperPlugin;
import com.facebook.flipper.plugins.react.ReactFlipperPlugin;
import com.facebook.flipper.plugins.sharedpreferences.SharedPreferencesFlipperPlugin;
import com.facebook.react.ReactInstanceEventListener;
import com.facebook.react.ReactInstanceManager;
@ -24,16 +25,13 @@ import com.facebook.react.bridge.ReactContext;
import com.facebook.react.modules.network.NetworkingModule;
import okhttp3.OkHttpClient;
/**
* Class responsible of loading Flipper inside your React Native application. This is the debug
* flavor of it. Here you can add your own plugins and customize the Flipper setup.
*/
public class ReactNativeFlipper {
public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) {
if (FlipperUtils.shouldEnableFlipper(context)) {
final FlipperClient client = AndroidFlipperClient.getInstance(context);
client.addPlugin(new InspectorFlipperPlugin(context, DescriptorMapping.withDefaults()));
client.addPlugin(new ReactFlipperPlugin());
client.addPlugin(new DatabasesFlipperPlugin(context));
client.addPlugin(new SharedPreferencesFlipperPlugin(context));
client.addPlugin(CrashReporterPlugin.getInstance());

View File

@ -1,4 +1,5 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.awesomeproject">
<uses-permission android:name="android.permission.INTERNET" />
@ -8,7 +9,8 @@
android:icon="@mipmap/ic_launcher"
android:roundIcon="@mipmap/ic_launcher_round"
android:allowBackup="false"
android:theme="@style/AppTheme">
android:theme="@style/AppTheme"
android:networkSecurityConfig="@xml/network_security_config">
<activity
android:name=".MainActivity"
android:label="@string/app_name"

View File

@ -0,0 +1,48 @@
package com.awesomeproject;
import com.facebook.react.ReactActivity;
import com.facebook.react.ReactActivityDelegate;
import com.facebook.react.ReactRootView;
public class MainActivity extends ReactActivity {
/**
* Returns the name of the main component registered from JavaScript. This is used to schedule
* rendering of the component.
*/
@Override
protected String getMainComponentName() {
return "AwesomeProject";
}
/**
* Returns the instance of the {@link ReactActivityDelegate}. There the RootView is created and
* you can specify the renderer you wish to use - the new renderer (Fabric) or the old renderer
* (Paper).
*/
@Override
protected ReactActivityDelegate createReactActivityDelegate() {
return new MainActivityDelegate(this, getMainComponentName());
}
public static class MainActivityDelegate extends ReactActivityDelegate {
public MainActivityDelegate(ReactActivity activity, String mainComponentName) {
super(activity, mainComponentName);
}
@Override
protected ReactRootView createRootView() {
ReactRootView reactRootView = new ReactRootView(getContext());
// If you opted-in for the New Architecture, we enable the Fabric Renderer.
reactRootView.setIsFabric(BuildConfig.IS_NEW_ARCHITECTURE_ENABLED);
return reactRootView;
}
@Override
protected boolean isConcurrentRootEnabled() {
// If you opted-in for the New Architecture, we enable Concurrent Root (i.e. React 18).
// More on this on https://reactjs.org/blog/2022/03/29/react-v18.html
return BuildConfig.IS_NEW_ARCHITECTURE_ENABLED;
}
}
}

View File

@ -0,0 +1,104 @@
package com.awesomeproject;
import android.app.Application;
import android.content.Context;
import androidx.annotation.Nullable;
import com.facebook.react.PackageList;
import com.facebook.react.ReactApplication;
import com.facebook.react.ReactInstanceManager;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
import com.facebook.react.config.ReactFeatureFlags;
import com.facebook.react.shell.MainReactPackage;
import com.facebook.soloader.SoLoader;
import com.awesomeproject.newarchitecture.MainApplicationReactNativeHost;
import java.lang.reflect.InvocationTargetException;
import java.util.Arrays;
import java.util.List;
import cn.reactnative.modules.update.UpdateContext;
import cn.reactnative.modules.update.UpdatePackage;
public class MainApplication extends Application implements ReactApplication {
private final ReactNativeHost mReactNativeHost =
new ReactNativeHost(this) {
@Override
public boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
@Nullable
@Override
protected String getJSBundleFile() {
return UpdateContext.getBundleUrl(MainApplication.this);
}
@Override
protected List<ReactPackage> getPackages() {
@SuppressWarnings("UnnecessaryLocalVariable")
List<ReactPackage> packages = new PackageList(this).getPackages();
// Packages that cannot be autolinked yet can be added manually here, for example:
// packages.add(new MyReactNativePackage());
return packages;
}
@Override
protected String getJSMainModuleName() {
return "index";
}
};
private final ReactNativeHost mNewArchitectureNativeHost =
new MainApplicationReactNativeHost(this);
@Override
public ReactNativeHost getReactNativeHost() {
if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) {
return mNewArchitectureNativeHost;
} else {
return mReactNativeHost;
}
}
@Override
public void onCreate() {
super.onCreate();
// If you opted-in for the New Architecture, we enable the TurboModule system
ReactFeatureFlags.useTurboModules = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED;
SoLoader.init(this, /* native exopackage */ false);
initializeFlipper(this, getReactNativeHost().getReactInstanceManager());
}
/**
* Loads Flipper in React Native templates. Call this in the onCreate method with something like
* initializeFlipper(this, getReactNativeHost().getReactInstanceManager());
*
* @param context
* @param reactInstanceManager
*/
private static void initializeFlipper(
Context context, ReactInstanceManager reactInstanceManager) {
if (BuildConfig.DEBUG) {
try {
/*
We use reflection here to pick up the class that initializes Flipper,
since Flipper library is not available in release mode
*/
Class<?> aClass = Class.forName("com.awesomeproject.ReactNativeFlipper");
aClass
.getMethod("initializeFlipper", Context.class, ReactInstanceManager.class)
.invoke(null, context, reactInstanceManager);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
}
}

View File

@ -0,0 +1,116 @@
package com.awesomeproject.newarchitecture;
import android.app.Application;
import androidx.annotation.NonNull;
import com.facebook.react.PackageList;
import com.facebook.react.ReactInstanceManager;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
import com.facebook.react.ReactPackageTurboModuleManagerDelegate;
import com.facebook.react.bridge.JSIModulePackage;
import com.facebook.react.bridge.JSIModuleProvider;
import com.facebook.react.bridge.JSIModuleSpec;
import com.facebook.react.bridge.JSIModuleType;
import com.facebook.react.bridge.JavaScriptContextHolder;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.UIManager;
import com.facebook.react.fabric.ComponentFactory;
import com.facebook.react.fabric.CoreComponentsRegistry;
import com.facebook.react.fabric.FabricJSIModuleProvider;
import com.facebook.react.fabric.ReactNativeConfig;
import com.facebook.react.uimanager.ViewManagerRegistry;
import com.awesomeproject.BuildConfig;
import com.awesomeproject.newarchitecture.components.MainComponentsRegistry;
import com.awesomeproject.newarchitecture.modules.MainApplicationTurboModuleManagerDelegate;
import java.util.ArrayList;
import java.util.List;
/**
* A {@link ReactNativeHost} that helps you load everything needed for the New Architecture, both
* TurboModule delegates and the Fabric Renderer.
*
* <p>Please note that this class is used ONLY if you opt-in for the New Architecture (see the
* `newArchEnabled` property). Is ignored otherwise.
*/
public class MainApplicationReactNativeHost extends ReactNativeHost {
public MainApplicationReactNativeHost(Application application) {
super(application);
}
@Override
public boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
@Override
protected List<ReactPackage> getPackages() {
List<ReactPackage> packages = new PackageList(this).getPackages();
// Packages that cannot be autolinked yet can be added manually here, for example:
// packages.add(new MyReactNativePackage());
// TurboModules must also be loaded here providing a valid TurboReactPackage implementation:
// packages.add(new TurboReactPackage() { ... });
// If you have custom Fabric Components, their ViewManagers should also be loaded here
// inside a ReactPackage.
return packages;
}
@Override
protected String getJSMainModuleName() {
return "index";
}
@NonNull
@Override
protected ReactPackageTurboModuleManagerDelegate.Builder
getReactPackageTurboModuleManagerDelegateBuilder() {
// Here we provide the ReactPackageTurboModuleManagerDelegate Builder. This is necessary
// for the new architecture and to use TurboModules correctly.
return new MainApplicationTurboModuleManagerDelegate.Builder();
}
@Override
protected JSIModulePackage getJSIModulePackage() {
return new JSIModulePackage() {
@Override
public List<JSIModuleSpec> getJSIModules(
final ReactApplicationContext reactApplicationContext,
final JavaScriptContextHolder jsContext) {
final List<JSIModuleSpec> specs = new ArrayList<>();
// Here we provide a new JSIModuleSpec that will be responsible of providing the
// custom Fabric Components.
specs.add(
new JSIModuleSpec() {
@Override
public JSIModuleType getJSIModuleType() {
return JSIModuleType.UIManager;
}
@Override
public JSIModuleProvider<UIManager> getJSIModuleProvider() {
final ComponentFactory componentFactory = new ComponentFactory();
CoreComponentsRegistry.register(componentFactory);
// Here we register a Components Registry.
// The one that is generated with the template contains no components
// and just provides you the one from React Native core.
MainComponentsRegistry.register(componentFactory);
final ReactInstanceManager reactInstanceManager = getReactInstanceManager();
ViewManagerRegistry viewManagerRegistry =
new ViewManagerRegistry(
reactInstanceManager.getOrCreateViewManagers(reactApplicationContext));
return new FabricJSIModuleProvider(
reactApplicationContext,
componentFactory,
ReactNativeConfig.DEFAULT_CONFIG,
viewManagerRegistry);
}
});
return specs;
}
};
}
}

View File

@ -0,0 +1,36 @@
package com.awesomeproject.newarchitecture.components;
import com.facebook.jni.HybridData;
import com.facebook.proguard.annotations.DoNotStrip;
import com.facebook.react.fabric.ComponentFactory;
import com.facebook.soloader.SoLoader;
/**
* Class responsible to load the custom Fabric Components. This class has native methods and needs a
* corresponding C++ implementation/header file to work correctly (already placed inside the jni/
* folder for you).
*
* <p>Please note that this class is used ONLY if you opt-in for the New Architecture (see the
* `newArchEnabled` property). Is ignored otherwise.
*/
@DoNotStrip
public class MainComponentsRegistry {
static {
SoLoader.loadLibrary("fabricjni");
}
@DoNotStrip private final HybridData mHybridData;
@DoNotStrip
private native HybridData initHybrid(ComponentFactory componentFactory);
@DoNotStrip
private MainComponentsRegistry(ComponentFactory componentFactory) {
mHybridData = initHybrid(componentFactory);
}
@DoNotStrip
public static MainComponentsRegistry register(ComponentFactory componentFactory) {
return new MainComponentsRegistry(componentFactory);
}
}

View File

@ -0,0 +1,48 @@
package com.awesomeproject.newarchitecture.modules;
import com.facebook.jni.HybridData;
import com.facebook.react.ReactPackage;
import com.facebook.react.ReactPackageTurboModuleManagerDelegate;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.soloader.SoLoader;
import java.util.List;
/**
* Class responsible to load the TurboModules. This class has native methods and needs a
* corresponding C++ implementation/header file to work correctly (already placed inside the jni/
* folder for you).
*
* <p>Please note that this class is used ONLY if you opt-in for the New Architecture (see the
* `newArchEnabled` property). Is ignored otherwise.
*/
public class MainApplicationTurboModuleManagerDelegate
extends ReactPackageTurboModuleManagerDelegate {
private static volatile boolean sIsSoLibraryLoaded;
protected MainApplicationTurboModuleManagerDelegate(
ReactApplicationContext reactApplicationContext, List<ReactPackage> packages) {
super(reactApplicationContext, packages);
}
protected native HybridData initHybrid();
native boolean canCreateTurboModule(String moduleName);
public static class Builder extends ReactPackageTurboModuleManagerDelegate.Builder {
protected MainApplicationTurboModuleManagerDelegate build(
ReactApplicationContext context, List<ReactPackage> packages) {
return new MainApplicationTurboModuleManagerDelegate(context, packages);
}
}
@Override
protected synchronized void maybeLoadOtherSoLibraries() {
if (!sIsSoLibraryLoaded) {
// If you change the name of your application .so file in the Android.mk file,
// make sure you update the name here as well.
SoLoader.loadLibrary("awesomeproject_appmodules");
sIsSoLibraryLoaded = true;
}
}
}

View File

@ -1,35 +0,0 @@
package com.testhotupdate;
import com.facebook.react.ReactActivity;
import com.facebook.react.ReactActivityDelegate;
import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint;
import com.facebook.react.defaults.DefaultReactActivityDelegate;
public class MainActivity extends ReactActivity {
/**
* Returns the name of the main component registered from JavaScript. This is used to schedule
* rendering of the component.
*/
@Override
protected String getMainComponentName() {
return "testHotupdate";
}
/**
* Returns the instance of the {@link ReactActivityDelegate}. Here we use a util class {@link
* DefaultReactActivityDelegate} which allows you to easily enable Fabric and Concurrent React
* (aka React 18) with two boolean flags.
*/
@Override
protected ReactActivityDelegate createReactActivityDelegate() {
return new DefaultReactActivityDelegate(
this,
getMainComponentName(),
// If you opted-in for the New Architecture, we enable the Fabric Renderer.
DefaultNewArchitectureEntryPoint.getFabricEnabled(), // fabricEnabled
// If you opted-in for the New Architecture, we enable Concurrent React (i.e. React 18).
DefaultNewArchitectureEntryPoint.getConcurrentReactEnabled() // concurrentRootEnabled
);
}
}

View File

@ -1,68 +0,0 @@
package com.testhotupdate;
import android.app.Application;
import com.facebook.react.PackageList;
import com.facebook.react.ReactApplication;
import com.facebook.react.ReactNativeHost;
import com.facebook.react.ReactPackage;
import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint;
import com.facebook.react.defaults.DefaultReactNativeHost;
import com.facebook.soloader.SoLoader;
import java.util.List;
import cn.reactnative.modules.update.UpdateContext;
public class MainApplication extends Application implements ReactApplication {
private final ReactNativeHost mReactNativeHost =
new DefaultReactNativeHost(this) {
@Override
protected String getJSBundleFile() {
return UpdateContext.getBundleUrl(MainApplication.this);
}
@Override
public boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
@Override
protected List<ReactPackage> getPackages() {
@SuppressWarnings("UnnecessaryLocalVariable")
List<ReactPackage> packages = new PackageList(this).getPackages();
// Packages that cannot be autolinked yet can be added manually here, for example:
// packages.add(new MyReactNativePackage());
return packages;
}
@Override
protected String getJSMainModuleName() {
return "index";
}
@Override
protected boolean isNewArchEnabled() {
return BuildConfig.IS_NEW_ARCHITECTURE_ENABLED;
}
@Override
protected Boolean isHermesEnabled() {
return BuildConfig.IS_HERMES_ENABLED;
}
};
@Override
public ReactNativeHost getReactNativeHost() {
return mReactNativeHost;
}
@Override
public void onCreate() {
super.onCreate();
SoLoader.init(this, /* native exopackage */ false);
if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) {
// If you opted-in for the New Architecture, we load the native entry point for this app.
DefaultNewArchitectureEntryPoint.load();
}
ReactNativeFlipper.initializeFlipper(this, getReactNativeHost().getReactInstanceManager());
}
}

View File

@ -0,0 +1,48 @@
THIS_DIR := $(call my-dir)
include $(REACT_ANDROID_DIR)/Android-prebuilt.mk
# If you wish to add a custom TurboModule or Fabric component in your app you
# will have to include the following autogenerated makefile.
# include $(GENERATED_SRC_DIR)/codegen/jni/Android.mk
include $(CLEAR_VARS)
LOCAL_PATH := $(THIS_DIR)
# You can customize the name of your application .so file here.
LOCAL_MODULE := awesomeproject_appmodules
LOCAL_C_INCLUDES := $(LOCAL_PATH)
LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/*.cpp)
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)
# If you wish to add a custom TurboModule or Fabric component in your app you
# will have to uncomment those lines to include the generated source
# files from the codegen (placed in $(GENERATED_SRC_DIR)/codegen/jni)
#
# LOCAL_C_INCLUDES += $(GENERATED_SRC_DIR)/codegen/jni
# LOCAL_SRC_FILES += $(wildcard $(GENERATED_SRC_DIR)/codegen/jni/*.cpp)
# LOCAL_EXPORT_C_INCLUDES += $(GENERATED_SRC_DIR)/codegen/jni
# Here you should add any native library you wish to depend on.
LOCAL_SHARED_LIBRARIES := \
libfabricjni \
libfbjni \
libfolly_runtime \
libglog \
libjsi \
libreact_codegen_rncore \
libreact_debug \
libreact_nativemodule_core \
libreact_render_componentregistry \
libreact_render_core \
libreact_render_debug \
libreact_render_graphics \
librrc_view \
libruntimeexecutor \
libturbomodulejsijni \
libyoga
LOCAL_CFLAGS := -DLOG_TAG=\"ReactNative\" -fexceptions -frtti -std=c++17 -Wall
include $(BUILD_SHARED_LIBRARY)

View File

@ -0,0 +1,24 @@
#include "MainApplicationModuleProvider.h"
#include <rncore.h>
namespace facebook {
namespace react {
std::shared_ptr<TurboModule> MainApplicationModuleProvider(
const std::string moduleName,
const JavaTurboModule::InitParams &params) {
// Here you can provide your own module provider for TurboModules coming from
// either your application or from external libraries. The approach to follow
// is similar to the following (for a library called `samplelibrary`:
//
// auto module = samplelibrary_ModuleProvider(moduleName, params);
// if (module != nullptr) {
// return module;
// }
// return rncore_ModuleProvider(moduleName, params);
return rncore_ModuleProvider(moduleName, params);
}
} // namespace react
} // namespace facebook

View File

@ -0,0 +1,16 @@
#pragma once
#include <memory>
#include <string>
#include <ReactCommon/JavaTurboModule.h>
namespace facebook {
namespace react {
std::shared_ptr<TurboModule> MainApplicationModuleProvider(
const std::string moduleName,
const JavaTurboModule::InitParams &params);
} // namespace react
} // namespace facebook

View File

@ -0,0 +1,45 @@
#include "MainApplicationTurboModuleManagerDelegate.h"
#include "MainApplicationModuleProvider.h"
namespace facebook {
namespace react {
jni::local_ref<MainApplicationTurboModuleManagerDelegate::jhybriddata>
MainApplicationTurboModuleManagerDelegate::initHybrid(
jni::alias_ref<jhybridobject>) {
return makeCxxInstance();
}
void MainApplicationTurboModuleManagerDelegate::registerNatives() {
registerHybrid({
makeNativeMethod(
"initHybrid", MainApplicationTurboModuleManagerDelegate::initHybrid),
makeNativeMethod(
"canCreateTurboModule",
MainApplicationTurboModuleManagerDelegate::canCreateTurboModule),
});
}
std::shared_ptr<TurboModule>
MainApplicationTurboModuleManagerDelegate::getTurboModule(
const std::string name,
const std::shared_ptr<CallInvoker> jsInvoker) {
// Not implemented yet: provide pure-C++ NativeModules here.
return nullptr;
}
std::shared_ptr<TurboModule>
MainApplicationTurboModuleManagerDelegate::getTurboModule(
const std::string name,
const JavaTurboModule::InitParams &params) {
return MainApplicationModuleProvider(name, params);
}
bool MainApplicationTurboModuleManagerDelegate::canCreateTurboModule(
std::string name) {
return getTurboModule(name, nullptr) != nullptr ||
getTurboModule(name, {.moduleName = name}) != nullptr;
}
} // namespace react
} // namespace facebook

View File

@ -0,0 +1,38 @@
#include <memory>
#include <string>
#include <ReactCommon/TurboModuleManagerDelegate.h>
#include <fbjni/fbjni.h>
namespace facebook {
namespace react {
class MainApplicationTurboModuleManagerDelegate
: public jni::HybridClass<
MainApplicationTurboModuleManagerDelegate,
TurboModuleManagerDelegate> {
public:
// Adapt it to the package you used for your Java class.
static constexpr auto kJavaDescriptor =
"Lcom/awesomeproject/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate;";
static jni::local_ref<jhybriddata> initHybrid(jni::alias_ref<jhybridobject>);
static void registerNatives();
std::shared_ptr<TurboModule> getTurboModule(
const std::string name,
const std::shared_ptr<CallInvoker> jsInvoker) override;
std::shared_ptr<TurboModule> getTurboModule(
const std::string name,
const JavaTurboModule::InitParams &params) override;
/**
* Test-only method. Allows user to verify whether a TurboModule can be
* created by instances of this class.
*/
bool canCreateTurboModule(std::string name);
};
} // namespace react
} // namespace facebook

View File

@ -0,0 +1,61 @@
#include "MainComponentsRegistry.h"
#include <CoreComponentsRegistry.h>
#include <fbjni/fbjni.h>
#include <react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h>
#include <react/renderer/components/rncore/ComponentDescriptors.h>
namespace facebook {
namespace react {
MainComponentsRegistry::MainComponentsRegistry(ComponentFactory *delegate) {}
std::shared_ptr<ComponentDescriptorProviderRegistry const>
MainComponentsRegistry::sharedProviderRegistry() {
auto providerRegistry = CoreComponentsRegistry::sharedProviderRegistry();
// Custom Fabric Components go here. You can register custom
// components coming from your App or from 3rd party libraries here.
//
// providerRegistry->add(concreteComponentDescriptorProvider<
// AocViewerComponentDescriptor>());
return providerRegistry;
}
jni::local_ref<MainComponentsRegistry::jhybriddata>
MainComponentsRegistry::initHybrid(
jni::alias_ref<jclass>,
ComponentFactory *delegate) {
auto instance = makeCxxInstance(delegate);
auto buildRegistryFunction =
[](EventDispatcher::Weak const &eventDispatcher,
ContextContainer::Shared const &contextContainer)
-> ComponentDescriptorRegistry::Shared {
auto registry = MainComponentsRegistry::sharedProviderRegistry()
->createComponentDescriptorRegistry(
{eventDispatcher, contextContainer});
auto mutableRegistry =
std::const_pointer_cast<ComponentDescriptorRegistry>(registry);
mutableRegistry->setFallbackComponentDescriptor(
std::make_shared<UnimplementedNativeViewComponentDescriptor>(
ComponentDescriptorParameters{
eventDispatcher, contextContainer, nullptr}));
return registry;
};
delegate->buildRegistryFunction = buildRegistryFunction;
return instance;
}
void MainComponentsRegistry::registerNatives() {
registerHybrid({
makeNativeMethod("initHybrid", MainComponentsRegistry::initHybrid),
});
}
} // namespace react
} // namespace facebook

View File

@ -0,0 +1,32 @@
#pragma once
#include <ComponentFactory.h>
#include <fbjni/fbjni.h>
#include <react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h>
#include <react/renderer/componentregistry/ComponentDescriptorRegistry.h>
namespace facebook {
namespace react {
class MainComponentsRegistry
: public facebook::jni::HybridClass<MainComponentsRegistry> {
public:
// Adapt it to the package you used for your Java class.
constexpr static auto kJavaDescriptor =
"Lcom/awesomeproject/newarchitecture/components/MainComponentsRegistry;";
static void registerNatives();
MainComponentsRegistry(ComponentFactory *delegate);
private:
static std::shared_ptr<ComponentDescriptorProviderRegistry const>
sharedProviderRegistry();
static jni::local_ref<jhybriddata> initHybrid(
jni::alias_ref<jclass>,
ComponentFactory *delegate);
};
} // namespace react
} // namespace facebook

View File

@ -0,0 +1,11 @@
#include <fbjni/fbjni.h>
#include "MainApplicationTurboModuleManagerDelegate.h"
#include "MainComponentsRegistry.h"
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *) {
return facebook::jni::initialize(vm, [] {
facebook::react::MainApplicationTurboModuleManagerDelegate::
registerNatives();
facebook::react::MainComponentsRegistry::registerNatives();
});
}

View File

@ -1,3 +1,3 @@
<resources>
<string name="app_name">testHotupdate</string>
<string name="app_name">AwesomeProject</string>
</resources>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">10.0.2.2</domain>
<domain includeSubdomains="true">localhost</domain>
<domain includeSubdomains="true">cos.pgyer.com</domain>
</domain-config>
</network-security-config>

View File

@ -1,20 +0,0 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* <p>This source code is licensed under the MIT license found in the LICENSE file in the root
* directory of this source tree.
*/
package com.testhotupdate;
import android.content.Context;
import com.facebook.react.ReactInstanceManager;
/**
* Class responsible of loading Flipper inside your React Native application. This is the release
* flavor of it so it's empty as we don't want to load Flipper.
*/
public class ReactNativeFlipper {
public static void initializeFlipper(Context context, ReactInstanceManager reactInstanceManager) {
// Do nothing as we don't want to initialize Flipper on Release.
}
}

View File

@ -1,21 +1,58 @@
import org.apache.tools.ant.taskdefs.condition.Os
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext {
buildToolsVersion = "33.0.0"
buildToolsVersion = "31.0.0"
minSdkVersion = 21
compileSdkVersion = 33
targetSdkVersion = 33
compileSdkVersion = 31
targetSdkVersion = 31
kotlinVersion = '1.7.10'
// We use NDK 23 which has both M1 support and is the side-by-side NDK version from AGP.
ndkVersion = "23.1.7779620"
if (System.properties['os.arch'] == "aarch64") {
// For M1 Users we need to use the NDK 24 which added support for aarch64
ndkVersion = "24.0.8215888"
} else {
// Otherwise we default to the side-by-side NDK version from AGP.
ndkVersion = "21.4.7075529"
}
}
repositories {
google()
mavenCentral()
}
dependencies {
classpath("com.android.tools.build:gradle:7.3.1")
classpath("com.android.tools.build:gradle:7.1.1")
classpath("com.facebook.react:react-native-gradle-plugin")
classpath("de.undercouch:gradle-download-task:5.0.1")
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion")
}
}
allprojects {
repositories {
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url("$rootDir/../node_modules/react-native/android")
}
maven {
// Android JSC is installed from npm
url("$rootDir/../node_modules/jsc-android/dist")
}
mavenCentral {
// We don't want to fetch react-native from Maven Central as there are
// older versions over there.
content {
excludeGroup "com.facebook.react"
}
}
google()
maven {
url("$rootDir/../node_modules/detox/Detox-android")
}
maven { url 'https://www.jitpack.io' }
}
}

View File

@ -38,7 +38,3 @@ reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64
# to write custom TurboModules/Fabric components OR use libraries that
# are providing them.
newArchEnabled=false
# Use this property to enable or disable the Hermes JS engine.
# If set to false, you will be using JSC instead.
hermesEnabled=true

View File

@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

View File

@ -1,4 +1,11 @@
rootProject.name = 'testHotupdate'
rootProject.name = 'AwesomeProject'
apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
include ':app'
includeBuild('../node_modules/react-native-gradle-plugin')
if (settings.hasProperty("newArchEnabled") && settings.newArchEnabled == "true") {
include(":ReactAndroid")
project(":ReactAndroid").projectDir = file('../node_modules/react-native/ReactAndroid')
include(":ReactAndroid:hermes-engine")
project(":ReactAndroid:hermes-engine").projectDir = file('../node_modules/react-native/ReactAndroid/hermes-engine')
}

View File

@ -1,4 +1,4 @@
{
"name": "testHotupdate",
"displayName": "testHotupdate"
"name": "AwesomeProject",
"displayName": "AwesomeProject"
}

View File

@ -0,0 +1,29 @@
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"lifecycle","ph":"B","tid":0,"cwd":"/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate","data":{"id":"cf35f38f-f35b-6c2b-412c-d8942bb92b27","detoxConfig":{"configurationName":"android.emu.debug","apps":{"default":{"type":"android.apk","binaryPath":"android/app/build/outputs/apk/debug/app-debug.apk","build":"cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug","reversePorts":[8081]}},"artifacts":{"rootDir":"artifacts/android.emu.debug.2023-04-01 15-30-12Z","plugins":{"log":{"enabled":true,"keepOnlyFailedTestsArtifacts":false},"screenshot":{"enabled":true,"shouldTakeAutomaticSnapshots":false,"keepOnlyFailedTestsArtifacts":false},"video":{"enabled":false,"keepOnlyFailedTestsArtifacts":false},"instruments":{"enabled":false,"keepOnlyFailedTestsArtifacts":false},"uiHierarchy":{"enabled":false,"keepOnlyFailedTestsArtifacts":false}}},"behavior":{"init":{"keepLockFile":false,"reinstallApp":true,"exposeGlobals":true},"cleanup":{"shutdownDevice":false},"launchApp":"auto"},"cli":{"recordLogs":"all","configuration":"android.emu.debug","headless":true,"start":true},"device":{"type":"android.emulator","device":{"avdName":"Pixel_3a_API_33_arm64-v8a"},"headless":true},"logger":{"level":"info","overrideConsole":true,"options":{"showLoggerName":true,"showPid":true,"showLevel":false,"showMetadata":false,"basepath":"/Users/arvinh/Desktop/wooza/react-native-pushy/node_modules/detox/src","prefixers":{},"stringifiers":{}}},"testRunner":{"retries":0,"forwardEnv":false,"bail":false,"jest":{"setupTimeout":120000,"teardownTimeout":30000,"retryAfterCircusRetries":false,"reportWorkerAssign":true},"args":{"$0":"jest","_":[],"config":"e2e/jest.config.js","--":[]}},"session":{"autoStart":true,"debugSynchronization":10000}},"detoxIPCServer":"primary-83339","testResults":[],"testSessionIndex":0,"workersCount":0},"msg":"../../node_modules/.bin/detox test --configuration android.emu.debug --headless --record-logs all","time":"2023-04-01T15:30:12.537Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"Server path not specified, so defaulting to ipc.config.socketRoot + ipc.config.appspace + ipc.config.id /tmp/detox.primary-83339","time":"2023-04-01T15:30:12.542Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"starting server on /tmp/detox.primary-83339 ","time":"2023-04-01T15:30:12.543Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"starting TLS server false","time":"2023-04-01T15:30:12.543Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"starting server as Unix || Windows Socket","time":"2023-04-01T15:30:12.543Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":20,"cat":"ws-server,ws","ph":"i","tid":0,"msg":"Detox server listening on localhost:55002...","time":"2023-04-01T15:30:12.549Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"lifecycle","ph":"i","tid":0,"msg":"Serialized the session state at: /private/var/folders/wm/91840x650t10w1m7sq830mp80000gn/T/cf35f38f-f35b-6c2b-412c-d8942bb92b27.detox.json","time":"2023-04-01T15:30:12.550Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":30,"cat":"lifecycle,cli","ph":"B","tid":0,"env":{},"msg":"jest --config e2e/jest.config.js","time":"2023-04-01T15:30:12.551Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"## socket connection to server detected ##","time":"2023-04-01T15:30:14.526Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"received event of : registerContext { id: \u001b[32m'secondary-83344'\u001b[39m }","time":"2023-04-01T15:30:14.528Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"dispatching event to socket : registerContextDone { testResults: [], testSessionIndex: \u001b[33m0\u001b[39m }","time":"2023-04-01T15:30:14.528Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"received event of : registerWorker { workerId: \u001b[32m'w1'\u001b[39m }","time":"2023-04-01T15:30:14.576Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"dispatching event to socket : registerWorkerDone { workersCount: \u001b[33m1\u001b[39m }","time":"2023-04-01T15:30:14.576Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"broadcasting event to all known sockets listening to /tmp/detox.primary-83339 : sessionStateUpdate { workersCount: \u001b[33m1\u001b[39m }","time":"2023-04-01T15:30:14.576Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":20,"cat":"ws-server,ws","ph":"B","tid":0,"id":55009,"msg":"connection :55002<->:55009","time":"2023-04-01T15:30:14.659Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws","ph":"i","tid":0,"id":55009,"data":"{\"type\":\"login\",\"params\":{\"sessionId\":\"911a46af-75be-6237-d296-b945b323abb2\",\"role\":\"tester\"},\"messageId\":0}","msg":"get","time":"2023-04-01T15:30:14.662Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws-session","ph":"i","tid":1,"msg":"created session 911a46af-75be-6237-d296-b945b323abb2","time":"2023-04-01T15:30:14.662Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws","ph":"i","tid":0,"id":55009,"trackingId":"tester","sessionId":"911a46af-75be-6237-d296-b945b323abb2","role":"tester","data":{"type":"loginSuccess","params":{"testerConnected":true,"appConnected":false},"messageId":0},"msg":"send","time":"2023-04-01T15:30:14.662Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws-session","ph":"i","tid":1,"msg":"tester joined session 911a46af-75be-6237-d296-b945b323abb2","time":"2023-04-01T15:30:14.663Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":20,"cat":"ws-server,ws","ph":"B","tid":1,"id":55134,"msg":"connection :55002<->:55134","time":"2023-04-01T15:30:20.151Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws","ph":"i","tid":1,"id":55134,"data":"{\"messageId\":0,\"type\":\"login\",\"params\":{\"role\":\"app\",\"sessionId\":\"911a46af-75be-6237-d296-b945b323abb2\"}}","msg":"get","time":"2023-04-01T15:30:20.161Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws","ph":"i","tid":1,"id":55134,"trackingId":"app","sessionId":"911a46af-75be-6237-d296-b945b323abb2","role":"app","data":{"messageId":0,"type":"loginSuccess","params":{"testerConnected":true,"appConnected":true}},"msg":"send","time":"2023-04-01T15:30:20.161Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws-session","ph":"i","tid":2,"msg":"app joined session 911a46af-75be-6237-d296-b945b323abb2","time":"2023-04-01T15:30:20.161Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws","ph":"i","tid":0,"id":55009,"trackingId":"tester","sessionId":"911a46af-75be-6237-d296-b945b323abb2","role":"tester","data":{"type":"appConnected"},"msg":"send","time":"2023-04-01T15:30:20.161Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws","ph":"i","tid":0,"id":55009,"trackingId":"tester","sessionId":"911a46af-75be-6237-d296-b945b323abb2","role":"tester","data":"{\"type\":\"isReady\",\"params\":{},\"messageId\":-1000}","msg":"get","time":"2023-04-01T15:30:20.163Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws","ph":"i","tid":1,"id":55134,"trackingId":"app","sessionId":"911a46af-75be-6237-d296-b945b323abb2","role":"app","data":{"type":"isReady","params":{},"messageId":-1000},"msg":"send","time":"2023-04-01T15:30:20.163Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws","ph":"i","tid":0,"id":55009,"trackingId":"tester","sessionId":"911a46af-75be-6237-d296-b945b323abb2","role":"tester","data":"{\"type\":\"currentStatus\",\"params\":{},\"messageId\":1}","msg":"get","time":"2023-04-01T15:30:30.164Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"ws-server,ws","ph":"i","tid":1,"id":55134,"trackingId":"app","sessionId":"911a46af-75be-6237-d296-b945b323abb2","role":"app","data":{"type":"currentStatus","params":{},"messageId":1},"msg":"send","time":"2023-04-01T15:30:30.165Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":83339,"level":10,"cat":"lifecycle","ph":"E","tid":0,"abortSignal":"SIGINT","msg":"jest --config e2e/jest.config.js","time":"2023-04-01T15:32:05.663Z","v":0}

View File

@ -0,0 +1,29 @@
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"lifecycle","ph":"B","tid":0,"cwd":"/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate","data":{"id":"d04386f3-e94c-894f-8d25-1193249ad5cf","detoxConfig":{"configurationName":"android.emu.debug","apps":{"default":{"type":"android.apk","binaryPath":"android/app/build/outputs/apk/debug/app-debug.apk","build":"cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug","reversePorts":[8081]}},"artifacts":{"rootDir":"artifacts/android.emu.debug.2023-04-01 15-32-08Z","plugins":{"log":{"enabled":true,"keepOnlyFailedTestsArtifacts":false},"screenshot":{"enabled":true,"shouldTakeAutomaticSnapshots":false,"keepOnlyFailedTestsArtifacts":false},"video":{"enabled":false,"keepOnlyFailedTestsArtifacts":false},"instruments":{"enabled":false,"keepOnlyFailedTestsArtifacts":false},"uiHierarchy":{"enabled":false,"keepOnlyFailedTestsArtifacts":false}}},"behavior":{"init":{"keepLockFile":false,"reinstallApp":true,"exposeGlobals":true},"cleanup":{"shutdownDevice":false},"launchApp":"auto"},"cli":{"recordLogs":"all","configuration":"android.emu.debug","headless":true,"start":true},"device":{"type":"android.emulator","device":{"avdName":"Pixel_3a_API_33_arm64-v8a"},"headless":true},"logger":{"level":"info","overrideConsole":true,"options":{"showLoggerName":true,"showPid":true,"showLevel":false,"showMetadata":false,"basepath":"/Users/arvinh/Desktop/wooza/react-native-pushy/node_modules/detox/src","prefixers":{},"stringifiers":{}}},"testRunner":{"retries":0,"forwardEnv":false,"bail":false,"jest":{"setupTimeout":120000,"teardownTimeout":30000,"retryAfterCircusRetries":false,"reportWorkerAssign":true},"args":{"$0":"jest","_":[],"config":"e2e/jest.config.js","--":[]}},"session":{"autoStart":true,"debugSynchronization":10000}},"detoxIPCServer":"primary-95956","testResults":[],"testSessionIndex":0,"workersCount":0},"msg":"../../node_modules/.bin/detox test --configuration android.emu.debug --headless --record-logs all","time":"2023-04-01T15:32:08.091Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"Server path not specified, so defaulting to ipc.config.socketRoot + ipc.config.appspace + ipc.config.id /tmp/detox.primary-95956","time":"2023-04-01T15:32:08.095Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"starting server on /tmp/detox.primary-95956 ","time":"2023-04-01T15:32:08.096Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"starting TLS server false","time":"2023-04-01T15:32:08.096Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"starting server as Unix || Windows Socket","time":"2023-04-01T15:32:08.096Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":20,"cat":"ws-server,ws","ph":"i","tid":0,"msg":"Detox server listening on localhost:55591...","time":"2023-04-01T15:32:08.101Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"lifecycle","ph":"i","tid":0,"msg":"Serialized the session state at: /private/var/folders/wm/91840x650t10w1m7sq830mp80000gn/T/d04386f3-e94c-894f-8d25-1193249ad5cf.detox.json","time":"2023-04-01T15:32:08.102Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":30,"cat":"lifecycle,cli","ph":"B","tid":0,"env":{},"msg":"jest --config e2e/jest.config.js","time":"2023-04-01T15:32:08.103Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"## socket connection to server detected ##","time":"2023-04-01T15:32:09.118Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"received event of : registerContext { id: \u001b[32m'secondary-95963'\u001b[39m }","time":"2023-04-01T15:32:09.120Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"dispatching event to socket : registerContextDone { testResults: [], testSessionIndex: \u001b[33m0\u001b[39m }","time":"2023-04-01T15:32:09.120Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"received event of : registerWorker { workerId: \u001b[32m'w1'\u001b[39m }","time":"2023-04-01T15:32:09.177Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"dispatching event to socket : registerWorkerDone { workersCount: \u001b[33m1\u001b[39m }","time":"2023-04-01T15:32:09.177Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ipc,ipc-server","ph":"i","tid":0,"msg":"broadcasting event to all known sockets listening to /tmp/detox.primary-95956 : sessionStateUpdate { workersCount: \u001b[33m1\u001b[39m }","time":"2023-04-01T15:32:09.177Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":20,"cat":"ws-server,ws","ph":"B","tid":0,"id":55598,"msg":"connection :55591<->:55598","time":"2023-04-01T15:32:09.265Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws","ph":"i","tid":0,"id":55598,"data":"{\"type\":\"login\",\"params\":{\"sessionId\":\"e5928eb2-642b-d685-dc0d-c06c4bbc6df3\",\"role\":\"tester\"},\"messageId\":0}","msg":"get","time":"2023-04-01T15:32:09.268Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws-session","ph":"i","tid":1,"msg":"created session e5928eb2-642b-d685-dc0d-c06c4bbc6df3","time":"2023-04-01T15:32:09.268Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws","ph":"i","tid":0,"id":55598,"trackingId":"tester","sessionId":"e5928eb2-642b-d685-dc0d-c06c4bbc6df3","role":"tester","data":{"type":"loginSuccess","params":{"testerConnected":true,"appConnected":false},"messageId":0},"msg":"send","time":"2023-04-01T15:32:09.268Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws-session","ph":"i","tid":1,"msg":"tester joined session e5928eb2-642b-d685-dc0d-c06c4bbc6df3","time":"2023-04-01T15:32:09.268Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":20,"cat":"ws-server,ws","ph":"B","tid":1,"id":55704,"msg":"connection :55591<->:55704","time":"2023-04-01T15:32:14.120Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws","ph":"i","tid":1,"id":55704,"data":"{\"messageId\":0,\"type\":\"login\",\"params\":{\"role\":\"app\",\"sessionId\":\"e5928eb2-642b-d685-dc0d-c06c4bbc6df3\"}}","msg":"get","time":"2023-04-01T15:32:14.130Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws","ph":"i","tid":1,"id":55704,"trackingId":"app","sessionId":"e5928eb2-642b-d685-dc0d-c06c4bbc6df3","role":"app","data":{"messageId":0,"type":"loginSuccess","params":{"testerConnected":true,"appConnected":true}},"msg":"send","time":"2023-04-01T15:32:14.131Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws-session","ph":"i","tid":2,"msg":"app joined session e5928eb2-642b-d685-dc0d-c06c4bbc6df3","time":"2023-04-01T15:32:14.131Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws","ph":"i","tid":0,"id":55598,"trackingId":"tester","sessionId":"e5928eb2-642b-d685-dc0d-c06c4bbc6df3","role":"tester","data":{"type":"appConnected"},"msg":"send","time":"2023-04-01T15:32:14.131Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws","ph":"i","tid":0,"id":55598,"trackingId":"tester","sessionId":"e5928eb2-642b-d685-dc0d-c06c4bbc6df3","role":"tester","data":"{\"type\":\"isReady\",\"params\":{},\"messageId\":-1000}","msg":"get","time":"2023-04-01T15:32:14.132Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws","ph":"i","tid":1,"id":55704,"trackingId":"app","sessionId":"e5928eb2-642b-d685-dc0d-c06c4bbc6df3","role":"app","data":{"type":"isReady","params":{},"messageId":-1000},"msg":"send","time":"2023-04-01T15:32:14.132Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws","ph":"i","tid":0,"id":55598,"trackingId":"tester","sessionId":"e5928eb2-642b-d685-dc0d-c06c4bbc6df3","role":"tester","data":"{\"type\":\"currentStatus\",\"params\":{},\"messageId\":1}","msg":"get","time":"2023-04-01T15:32:24.139Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"ws-server,ws","ph":"i","tid":1,"id":55704,"trackingId":"app","sessionId":"e5928eb2-642b-d685-dc0d-c06c4bbc6df3","role":"app","data":{"type":"currentStatus","params":{},"messageId":1},"msg":"send","time":"2023-04-01T15:32:24.140Z","v":0}
{"name":"detox","hostname":"MacBook-Pro.local","pid":95956,"level":10,"cat":"lifecycle","ph":"E","tid":0,"abortSignal":"SIGINT","msg":"jest --config e2e/jest.config.js","time":"2023-04-01T15:32:37.850Z","v":0}

View File

@ -0,0 +1,797 @@
23:32:39.942 detox[286] B ../../node_modules/.bin/detox test --configuration android.emu.debug --headless --record-logs all
data: {
"id": "5bb1f0fb-2312-754e-890e-9b6f4493310d",
"detoxConfig": {
"configurationName": "android.emu.debug",
"apps": {
"default": {
"type": "android.apk",
"binaryPath": "android/app/build/outputs/apk/debug/app-debug.apk",
"build": "cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug",
"reversePorts": [
8081
]
}
},
"artifacts": {
"rootDir": "artifacts/android.emu.debug.2023-04-01 15-32-39Z",
"plugins": {
"log": {
"enabled": true,
"keepOnlyFailedTestsArtifacts": false
},
"screenshot": {
"enabled": true,
"shouldTakeAutomaticSnapshots": false,
"keepOnlyFailedTestsArtifacts": false
},
"video": {
"enabled": false,
"keepOnlyFailedTestsArtifacts": false
},
"instruments": {
"enabled": false,
"keepOnlyFailedTestsArtifacts": false
},
"uiHierarchy": {
"enabled": false,
"keepOnlyFailedTestsArtifacts": false
}
}
},
"behavior": {
"init": {
"keepLockFile": false,
"reinstallApp": true,
"exposeGlobals": true
},
"cleanup": {
"shutdownDevice": false
},
"launchApp": "auto"
},
"cli": {
"recordLogs": "all",
"configuration": "android.emu.debug",
"headless": true,
"start": true
},
"device": {
"type": "android.emulator",
"device": {
"avdName": "Pixel_3a_API_33_arm64-v8a"
},
"headless": true
},
"logger": {
"level": "info",
"overrideConsole": true,
"options": {
"showLoggerName": true,
"showPid": true,
"showLevel": false,
"showMetadata": false,
"basepath": "/Users/arvinh/Desktop/wooza/react-native-pushy/node_modules/detox/src",
"prefixers": {},
"stringifiers": {}
}
},
"testRunner": {
"retries": 0,
"forwardEnv": false,
"bail": false,
"jest": {
"setupTimeout": 120000,
"teardownTimeout": 30000,
"retryAfterCircusRetries": false,
"reportWorkerAssign": true
},
"args": {
"$0": "jest",
"_": [],
"config": "e2e/jest.config.js",
"--": []
}
},
"session": {
"autoStart": true,
"debugSynchronization": 10000
}
},
"detoxIPCServer": "primary-286",
"testResults": [],
"testSessionIndex": 0,
"workersCount": 0
}
23:32:39.946 detox[286] i Server path not specified, so defaulting to ipc.config.socketRoot + ipc.config.appspace + ipc.config.id /tmp/detox.primary-286
23:32:39.947 detox[286] i starting server on /tmp/detox.primary-286
23:32:39.947 detox[286] i starting TLS server false
23:32:39.947 detox[286] i starting server as Unix || Windows Socket
23:32:39.952 detox[286] i Detox server listening on localhost:55801...
23:32:39.953 detox[286] i Serialized the session state at: /private/var/folders/wm/91840x650t10w1m7sq830mp80000gn/T/5bb1f0fb-2312-754e-890e-9b6f4493310d.detox.json
23:32:39.954 detox[286] B jest --config e2e/jest.config.js
23:32:40.958 detox[287] i Service path not specified, so defaulting to ipc.config.socketRoot + ipc.config.appspace + id
23:32:40.959 detox[286] i ## socket connection to server detected ##
23:32:40.959 detox[287] i requested connection to primary-286 /tmp/detox.primary-286
23:32:40.959 detox[287] i Connecting client on Unix Socket : /tmp/detox.primary-286
23:32:40.959 detox[287] i retrying reset
23:32:40.960 detox[287] i dispatching event to primary-286 /tmp/detox.primary-286 : registerContext , { id: 'secondary-287' }
23:32:40.961 detox[286] i received event of : registerContext { id: 'secondary-287' }
23:32:40.961 detox[286] i dispatching event to socket : registerContextDone { testResults: [], testSessionIndex: 0 }
23:32:40.962 detox[287] i ## received events ##
23:32:40.962 detox[287] i detected event registerContextDone { testResults: [], testSessionIndex: 0 }
23:32:41.006 detox[287] B e2e/NativeModule.test.ts
23:32:41.014 detox[287] B set up environment
23:32:41.014 detox[287] i dispatching event to primary-286 /tmp/detox.primary-286 : registerWorker , { workerId: 'w1' }
23:32:41.015 detox[286] i received event of : registerWorker { workerId: 'w1' }
23:32:41.015 detox[286] i dispatching event to socket : registerWorkerDone { workersCount: 1 }
23:32:41.015 detox[286] i broadcasting event to all known sockets listening to /tmp/detox.primary-286 : sessionStateUpdate { workersCount: 1 }
23:32:41.015 detox[287] i ## received events ##
23:32:41.015 detox[287] i detected event registerWorkerDone { workersCount: 1 }
23:32:41.103 detox[287] i ## received events ##
23:32:41.103 detox[287] i detected event sessionStateUpdate { workersCount: 1 }
23:32:41.106 detox[286] B connection :55801<->:55810
23:32:41.107 detox[287] i opened web socket to: ws://localhost:55801
23:32:41.108 detox[287] i send message
data: {"type":"login","params":{"sessionId":"85295354-1163-f241-e2d5-6b40862968db","role":"tester"},"messageId":0}
23:32:41.109 detox[286] i get
data: {"type":"login","params":{"sessionId":"85295354-1163-f241-e2d5-6b40862968db","role":"tester"},"messageId":0}
23:32:41.109 detox[286] i created session 85295354-1163-f241-e2d5-6b40862968db
23:32:41.109 detox[286] i send
data: {
"type": "loginSuccess",
"params": {
"testerConnected": true,
"appConnected": false
},
"messageId": 0
}
23:32:41.109 detox[286] i tester joined session 85295354-1163-f241-e2d5-6b40862968db
23:32:41.110 detox[287] i get message
data: {"type":"loginSuccess","params":{"testerConnected":true,"appConnected":false},"messageId":0}
23:32:41.145 detox[287] B allocate
args: ({"type":"android.emulator","device":{"avdName":"Pixel_3a_API_33_arm64-v8a"},"headless":true})
23:32:41.145 detox[287] i "/Users/arvinh/Library/Android/sdk/emulator/emulator" -list-avds --verbose
23:32:41.168 detox[287] i Pixel_3a_API_33_arm64-v8a
23:32:41.169 detox[287] i "/Users/arvinh/Library/Android/sdk/emulator/emulator" -version -no-window
23:32:41.245 detox[287] i INFO | Duplicate loglines will be removed, if you wish to see each indiviudal line launch with the -log-nofilter flag.
Android emulator version 31.3.13.0 (build_id 9189900) (CL:N/A)
Copyright (C) 2006-2017 The Android Open Source Project and many others.
This program is a derivative of the QEMU CPU emulator (www.qemu.org).
This software is licensed under the terms of the GNU General Public
License version 2, as published by the Free Software Foundation, and
may be copied, distributed, and modified under those terms.
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.
23:32:41.246 detox[287] i Detected emulator binary version { major: 31, minor: 3, patch: 13, toString: [Function: toString] }
23:32:41.246 detox[287] i Trying to allocate a device based on "Pixel_3a_API_33_arm64-v8a"
23:32:41.247 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" devices
23:32:41.259 detox[287] i List of devices attached
emulator-5554 device
23:32:41.260 detox[287] i port: 5554, host: localhost
23:32:41.264 detox[287] i Found a matching & free device emulator-5554
23:32:41.265 detox[287] i Settled on emulator-5554
23:32:41.265 detox[287] B _launchEmulator
args: ("Pixel_3a_API_33_arm64-v8a", "emulator-5554", true, {"headless":true,"port":null})
23:32:41.265 detox[287] B _awaitEmulatorBoot
args: ("emulator-5554")
23:32:41.265 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "getprop dev.bootcomplete"
23:32:41.302 detox[287] i 1
23:32:41.302 detox[287] E _awaitEmulatorBoot
23:32:41.302 detox[287] B onBootDevice
args: ({"deviceId":"emulator-5554","type":"Pixel_3a_API_33_arm64-v8a","coldBoot":false})
23:32:41.303 detox[287] E onBootDevice
23:32:41.303 detox[287] E _launchEmulator
23:32:41.303 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "getprop ro.build.version.sdk"
23:32:41.329 detox[287] i 33
23:32:41.330 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "settings put global animator_duration_scale 0"
23:32:41.370 detox[287] i
23:32:41.370 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "settings put global window_animation_scale 0"
23:32:41.400 detox[287] i
23:32:41.400 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "settings put global transition_animation_scale 0"
23:32:41.428 detox[287] i
23:32:41.428 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "dumpsys power | grep \"^[ ]*m[UW].*=\""
23:32:41.488 detox[287] i mWakefulness=Awake
mWakefulnessChanging=false
mWakeLockSummary=0x0
mWakeUpWhenPluggedOrUnpluggedConfig=false
mWakeUpWhenPluggedOrUnpluggedInTheaterModeConfig=false
mUserActivityTimeoutOverrideFromWindowManager=-1
mUserInactiveOverrideFromWindowManager=false
mUserId=0
mWakeLockSummary=0x0
mUserInteractionBackoffMillis=60000
23:32:41.488 detox[287] E allocate
23:32:41.500 detox[287] B installUtilBinaries
args: ()
23:32:41.500 detox[287] E installUtilBinaries
23:32:41.500 detox[287] B selectApp
args: ("default")
23:32:41.501 detox[287] i "/Users/arvinh/Library/Android/sdk/build-tools/33.0.0/aapt" dump badging "/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/debug/app-debug.apk"
23:32:41.535 detox[287] i package: name='com.awesomeproject' versionCode='1' versionName='1.0' platformBuildVersionName='12' platformBuildVersionCode='31' compileSdkVersion='31' compileSdkVersionCodename='12'
sdkVersion:'21'
targetSdkVersion:'31'
uses-permission: name='android.permission.SYSTEM_ALERT_WINDOW'
uses-permission: name='android.permission.INTERNET'
uses-permission: name='android.permission.ACCESS_WIFI_STATE'
uses-permission: name='android.permission.REQUEST_INSTALL_PACKAGES'
uses-permission: name='android.permission.WRITE_EXTERNAL_STORAGE'
application-label:'AwesomeProject'
application-label-af:'AwesomeProject'
application-label-am:'AwesomeProject'
application-label-ar:'AwesomeProject'
application-label-as:'AwesomeProject'
application-label-az:'AwesomeProject'
application-label-be:'AwesomeProject'
application-label-bg:'AwesomeProject'
application-label-bn:'AwesomeProject'
application-label-bs:'AwesomeProject'
application-label-ca:'AwesomeProject'
application-label-cs:'AwesomeProject'
application-label-da:'AwesomeProject'
application-label-de:'AwesomeProject'
application-label-el:'AwesomeProject'
application-label-en-AU:'AwesomeProject'
application-label-en-CA:'AwesomeProject'
application-label-en-GB:'AwesomeProject'
application-label-en-IN:'AwesomeProject'
application-label-en-XC:'AwesomeProject'
application-label-es:'AwesomeProject'
application-label-es-US:'AwesomeProject'
application-label-et:'AwesomeProject'
application-label-eu:'AwesomeProject'
application-label-fa:'AwesomeProject'
application-label-fi:'AwesomeProject'
application-label-fr:'AwesomeProject'
application-label-fr-CA:'AwesomeProject'
application-label-gl:'AwesomeProject'
application-label-gu:'AwesomeProject'
application-label-hi:'AwesomeProject'
application-label-hr:'AwesomeProject'
application-label-hu:'AwesomeProject'
application-label-hy:'AwesomeProject'
application-label-in:'AwesomeProject'
application-label-is:'AwesomeProject'
application-label-it:'AwesomeProject'
application-label-iw:'AwesomeProject'
application-label-ja:'AwesomeProject'
application-label-ka:'AwesomeProject'
application-label-kk:'AwesomeProject'
application-label-km:'AwesomeProject'
application-label-kn:'AwesomeProject'
application-label-ko:'AwesomeProject'
application-label-ky:'AwesomeProject'
application-label-lo:'AwesomeProject'
application-label-lt:'AwesomeProject'
application-label-lv:'AwesomeProject'
application-label-mk:'AwesomeProject'
application-label-ml:'AwesomeProject'
application-label-mn:'AwesomeProject'
application-label-mr:'AwesomeProject'
application-label-ms:'AwesomeProject'
application-label-my:'AwesomeProject'
application-label-nb:'AwesomeProject'
application-label-ne:'AwesomeProject'
application-label-nl:'AwesomeProject'
application-label-or:'AwesomeProject'
application-label-pa:'AwesomeProject'
application-label-pl:'AwesomeProject'
application-label-pt:'AwesomeProject'
application-label-pt-BR:'AwesomeProject'
application-label-pt-PT:'AwesomeProject'
application-label-ro:'AwesomeProject'
application-label-ru:'AwesomeProject'
application-label-si:'AwesomeProject'
application-label-sk:'AwesomeProject'
application-label-sl:'AwesomeProject'
application-label-sq:'AwesomeProject'
application-label-sr:'AwesomeProject'
application-label-sr-Latn:'AwesomeProject'
application-label-sv:'AwesomeProject'
application-label-sw:'AwesomeProject'
application-label-ta:'AwesomeProject'
application-label-te:'AwesomeProject'
application-label-th:'AwesomeProject'
application-label-tl:'AwesomeProject'
application-label-tr:'AwesomeProject'
application-label-uk:'AwesomeProject'
application-label-ur:'AwesomeProject'
application-label-uz:'AwesomeProject'
application-label-vi:'AwesomeProject'
application-label-zh-CN:'AwesomeProject'
application-label-zh-HK:'AwesomeProject'
application-label-zh-TW:'AwesomeProject'
application-label-zu:'AwesomeProject'
application-icon-160:'res/mipmap-mdpi-v4/ic_launcher.png'
application-icon-240:'res/mipmap-hdpi-v4/ic_launcher.png'
application-icon-320:'res/mipmap-xhdpi-v4/ic_launcher.png'
application-icon-480:'res/mipmap-xxhdpi-v4/ic_launcher.png'
application-icon-640:'res/mipmap-xxxhdpi-v4/ic_launcher.png'
application: label='AwesomeProject' icon='res/mipmap-mdpi-v4/ic_launcher.png'
application-debuggable
launchable-activity: name='com.awesomeproject.MainActivity' label='AwesomeProject' icon=''
uses-permission: name='android.permission.READ_EXTERNAL_STORAGE'
uses-implied-permission: name='android.permission.READ_EXTERNAL_STORAGE' reason='requested WRITE_EXTERNAL_STORAGE'
feature-group: label=''
uses-feature: name='android.hardware.faketouch'
uses-implied-feature: name='android.hardware.faketouch' reason='default feature for all apps'
uses-feature: name='android.hardware.wifi'
uses-implied-feature: name='android.hardware.wifi' reason='requested android.permission.ACCESS_WIFI_STATE permission'
main
other-activities
supports-screens: 'small' 'normal' 'large' 'xlarge'
supports-any-density: 'true'
locales: '--_--' 'af' 'am' 'ar' 'as' 'az' 'be' 'bg' 'bn' 'bs' 'ca' 'cs' 'da' 'de' 'el' 'en-AU' 'en-CA' 'en-GB' 'en-IN' 'en-XC' 'es' 'es-US' 'et' 'eu' 'fa' 'fi' 'fr' 'fr-CA' 'gl' 'gu' 'hi' 'hr' 'hu' 'hy' 'in' 'is' 'it' 'iw' 'ja' 'ka' 'kk' 'km' 'kn' 'ko' 'ky' 'lo' 'lt' 'lv' 'mk' 'ml' 'mn' 'mr' 'ms' 'my' 'nb' 'ne' 'nl' 'or' 'pa' 'pl' 'pt' 'pt-BR' 'pt-PT' 'ro' 'ru' 'si' 'sk' 'sl' 'sq' 'sr' 'sr-Latn' 'sv' 'sw' 'ta' 'te' 'th' 'tl' 'tr' 'uk' 'ur' 'uz' 'vi' 'zh-CN' 'zh-HK' 'zh-TW' 'zu'
densities: '160' '240' '320' '480' '640'
native-code: 'arm64-v8a' 'armeabi-v7a' 'x86' 'x86_64'
23:32:41.535 detox[287] E selectApp
23:32:41.535 detox[287] B uninstallApp
args: ()
23:32:41.535 detox[287] B onBeforeUninstallApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:32:41.535 detox[287] E onBeforeUninstallApp
23:32:41.535 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "pm list packages com.awesomeproject"
23:32:41.559 detox[287] i package:com.awesomeproject
package:com.awesomeproject.test
23:32:41.559 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 uninstall com.awesomeproject
23:32:41.875 detox[287] i Success
23:32:41.875 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "pm list packages com.awesomeproject.test"
23:32:41.973 detox[287] i package:com.awesomeproject.test
23:32:41.973 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 uninstall com.awesomeproject.test
23:32:42.138 detox[287] i Success
23:32:42.138 detox[287] E uninstallApp
23:32:42.138 detox[287] B selectApp
args: ("default")
23:32:42.139 detox[287] B terminateApp
args: ()
23:32:42.139 detox[287] B onBeforeTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:32:42.139 detox[287] E onBeforeTerminateApp
23:32:42.139 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "am force-stop com.awesomeproject"
23:32:42.202 detox[287] i
23:32:42.202 detox[287] B onTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:32:42.203 detox[287] E onTerminateApp
23:32:42.203 detox[287] E terminateApp
23:32:42.203 detox[287] E selectApp
23:32:42.203 detox[287] B installApp
args: ()
23:32:42.203 detox[287] i "/Users/arvinh/Library/Android/sdk/build-tools/33.0.0/aapt" dump xmlstrings "/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/debug/app-debug.apk" AndroidManifest.xml
23:32:42.216 detox[287] i String pool of 62 unique UTF-16 non-sorted strings, 62 entries and 0 styles using 2972 bytes:
String #0: theme
String #1: label
String #2: icon
String #3: name
String #4: debuggable
String #5: exported
String #6: authorities
String #7: grantUriPermissions
String #8: launchMode
String #9: configChanges
String #10: value
String #11: resource
String #12: minSdkVersion
String #13: versionCode
String #14: versionName
String #15: windowSoftInputMode
String #16: targetSdkVersion
String #17: allowBackup
String #18: usesCleartextTraffic
String #19: networkSecurityConfig
String #20: roundIcon
String #21: compileSdkVersion
String #22: compileSdkVersionCodename
String #23: appComponentFactory
String #24: 1.0
String #25: 12
String #26: action
String #27: activity
String #28: android
String #29: android.intent.action.MAIN
String #30: android.intent.category.LAUNCHER
String #31: android.permission.ACCESS_WIFI_STATE
String #32: android.permission.INTERNET
String #33: android.permission.REQUEST_INSTALL_PACKAGES
String #34: android.permission.SYSTEM_ALERT_WINDOW
String #35: android.permission.WRITE_EXTERNAL_STORAGE
String #36: android.support.FILE_PROVIDER_PATHS
String #37: androidx.core.app.CoreComponentFactory
String #38: androidx.emoji2.text.EmojiCompatInitializer
String #39: androidx.lifecycle.ProcessLifecycleInitializer
String #40: androidx.startup
String #41: androidx.startup.InitializationProvider
String #42: application
String #43: category
String #44: cn.reactnative.modules.update.PushyFileProvider
String #45: com.awesomeproject
String #46: com.awesomeproject.MainActivity
String #47: com.awesomeproject.MainApplication
String #48: com.awesomeproject.androidx-startup
String #49: com.awesomeproject.pushy.fileprovider
String #50: com.facebook.react.devsupport.DevSettingsActivity
String #51: http://schemas.android.com/apk/res/android
String #52: intent-filter
String #53: manifest
String #54: meta-data
String #55: package
String #56: platformBuildVersionCode
String #57: platformBuildVersionName
String #58: provider
String #59: pushy_build_time
String #60: uses-permission
String #61: uses-sdk
23:32:42.216 detox[287] i "/Users/arvinh/Library/Android/sdk/build-tools/33.0.0/aapt" dump xmlstrings "/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk" AndroidManifest.xml
23:32:42.228 detox[287] i String pool of 41 unique UTF-16 non-sorted strings, 41 entries and 0 styles using 2052 bytes:
String #0: theme
String #1: label
String #2: name
String #3: debuggable
String #4: exported
String #5: targetPackage
String #6: handleProfiling
String #7: functionalTest
String #8: minSdkVersion
String #9: targetSdkVersion
String #10: compileSdkVersion
String #11: compileSdkVersionCodename
String #12: 12
String #13: Tests for com.awesomeproject
String #14: action
String #15: activity
String #16: android
String #17: android.intent.action.MAIN
String #18: android.permission.REORDER_TASKS
String #19: android.test.runner
String #20: androidx.test.core.app.InstrumentationActivityInvoker$BootstrapActivity
String #21: androidx.test.core.app.InstrumentationActivityInvoker$EmptyActivity
String #22: androidx.test.core.app.InstrumentationActivityInvoker$EmptyFloatingActivity
String #23: androidx.test.orchestrator
String #24: androidx.test.runner.AndroidJUnitRunner
String #25: androidx.test.services
String #26: application
String #27: com.awesomeproject
String #28: com.awesomeproject.test
String #29: com.google.android.apps.common.testing.services
String #30: http://schemas.android.com/apk/res/android
String #31: instrumentation
String #32: intent-filter
String #33: manifest
String #34: package
String #35: platformBuildVersionCode
String #36: platformBuildVersionName
String #37: queries
String #38: uses-library
String #39: uses-permission
String #40: uses-sdk
23:32:42.228 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "rm -fr /data/local/tmp/detox"
23:32:42.306 detox[287] i
23:32:42.306 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "mkdir -p /data/local/tmp/detox"
23:32:42.344 detox[287] i
23:32:42.344 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 push "/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/debug/app-debug.apk" "/data/local/tmp/detox/Application.apk"
23:32:42.683 detox[287] i /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/debug/app-debug.apk: 1 file pushed, 0 skipped. 174.6 MB/s (57188071 bytes in 0.312s)
23:32:42.685 detox[287] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell pm install -r -g -t /data/local/tmp/detox/Application.apk
23:32:43.594 detox[287] i Success
23:32:43.597 detox[287] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell pm install -r -g -t /data/local/tmp/detox/Application.apk exited with code #0
23:32:43.597 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 push "/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk" "/data/local/tmp/detox/Test.apk"
23:32:43.643 detox[287] i /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk: 1 file pushed, 0 skipped. 466.5 MB/s (7834463 bytes in 0.016s)
23:32:43.644 detox[287] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell pm install -r -g -t /data/local/tmp/detox/Test.apk
23:32:43.845 detox[287] i Success
23:32:43.849 detox[287] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell pm install -r -g -t /data/local/tmp/detox/Test.apk exited with code #0
23:32:43.849 detox[287] B reverseTcpPort
args: (8081)
23:32:43.849 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 reverse tcp:8081 tcp:8081
23:32:43.865 detox[287] i
23:32:43.865 detox[287] E reverseTcpPort
23:32:43.865 detox[287] E installApp
23:32:43.865 detox[287] B selectApp
args: ("default")
23:32:43.865 detox[287] B terminateApp
args: ()
23:32:43.865 detox[287] B onBeforeTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:32:43.865 detox[287] E onBeforeTerminateApp
23:32:43.865 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "am force-stop com.awesomeproject"
23:32:43.925 detox[287] i
23:32:43.925 detox[287] B onTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:32:43.925 detox[287] E onTerminateApp
23:32:43.925 detox[287] E terminateApp
23:32:43.925 detox[287] E selectApp
23:32:43.926 detox[287] E set up environment
23:32:44.530 detox[287] i NativeModule.test.ts is assigned to emulator-5554 (Pixel_3a_API_33_arm64-v8a)
23:32:44.530 detox[287] B run the tests
23:32:44.530 detox[287] B onRunDescribeStart
args: ({"name":"ROOT_DESCRIBE_BLOCK"})
23:32:44.531 detox[287] E onRunDescribeStart
23:32:44.531 detox[287] B 测试Native模块的方法
23:32:44.531 detox[287] B onRunDescribeStart
args: ({"name":"测试Native模块的方法"})
23:32:44.531 detox[287] E onRunDescribeStart
23:32:44.531 detox[287] B beforeAll
23:32:44.535 detox[287] B launchApp
args: ()
23:32:44.536 detox[287] B terminateApp
args: ("com.awesomeproject")
23:32:44.536 detox[287] B onBeforeTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:32:44.536 detox[287] E onBeforeTerminateApp
23:32:44.536 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "am force-stop com.awesomeproject"
23:32:44.569 detox[287] i
23:32:44.569 detox[287] B onTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:32:44.569 detox[287] E onTerminateApp
23:32:44.569 detox[287] E terminateApp
23:32:44.570 detox[287] B onBeforeLaunchApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject","launchArgs":{"detoxServer":"ws://localhost:55801","detoxSessionId":"85295354-1163-f241-e2d5-6b40862968db"}})
23:32:44.571 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "date +\"%m-%d %T.000\""
23:32:44.594 detox[287] i 12-09 14:40:08.000
23:32:44.594 detox[287] E onBeforeLaunchApp
23:32:44.594 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 reverse tcp:55801 tcp:55801
23:32:44.607 detox[287] i 55801
23:32:44.607 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "pm list instrumentation"
23:32:44.630 detox[287] i instrumentation:com.awesomeproject.test/androidx.test.runner.AndroidJUnitRunner (target=com.awesomeproject)
instrumentation:com.testhotupdate.test/android.test.InstrumentationTestRunner (target=com.testhotupdate)
23:32:44.632 detox[287] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell am instrument -w -r -e detoxServer ws://localhost:55801 -e detoxSessionId 85295354-1163-f241-e2d5-6b40862968db -e debug false com.awesomeproject.test/androidx.test.runner.AndroidJUnitRunner
23:32:45.134 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "ps | grep \"com\.awesomeproject$\""
23:32:45.213 detox[287] i u0_a184 20108 325 14812908 167772 0 0 R com.awesomeproject
23:32:45.213 detox[287] B onLaunchApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject","launchArgs":{"detoxServer":"ws://localhost:55801","detoxSessionId":"85295354-1163-f241-e2d5-6b40862968db"},"pid":20108})
23:32:45.213 detox[287] i starting ADBLogcatRecording
23:32:45.214 detox[287] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell "logcat -T \"12-09 14:40:08.000\" --pid=20108 -f /sdcard/233241138_0.log"
23:32:45.214 detox[287] E onLaunchApp
23:32:45.516 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell du /sdcard/233241138_0.log
23:32:45.545 detox[287] i 4 /sdcard/233241138_0.log
23:32:45.581 detox[287] i INSTRUMENTATION_STATUS: class=com.awesomeproject.DetoxTest
INSTRUMENTATION_STATUS: current=1
INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
INSTRUMENTATION_STATUS: numtests=1
INSTRUMENTATION_STATUS: stream=
com.awesomeproject.DetoxTest:
INSTRUMENTATION_STATUS: test=runDetoxTests
INSTRUMENTATION_STATUS_CODE: 1
23:32:45.917 detox[286] B connection :55801<->:55919
23:32:45.942 detox[286] i get
data: {"messageId":0,"type":"login","params":{"role":"app","sessionId":"85295354-1163-f241-e2d5-6b40862968db"}}
23:32:45.942 detox[286] i send
data: {
"messageId": 0,
"type": "loginSuccess",
"params": {
"testerConnected": true,
"appConnected": true
}
}
23:32:45.942 detox[286] i app joined session 85295354-1163-f241-e2d5-6b40862968db
23:32:45.942 detox[286] i send
data: {
"type": "appConnected"
}
23:32:45.942 detox[287] i get message
data: {"type":"appConnected"}
23:32:45.943 detox[286] i get
data: {"type":"isReady","params":{},"messageId":-1000}
23:32:45.943 detox[287] i send message
data: {"type":"isReady","params":{},"messageId":-1000}
23:32:45.944 detox[286] i send
data: {
"type": "isReady",
"params": {},
"messageId": -1000
}
23:32:55.947 detox[287] i send message
data: {"type":"currentStatus","params":{},"messageId":1}
23:32:55.949 detox[286] i get
data: {"type":"currentStatus","params":{},"messageId":1}
23:32:55.949 detox[286] i send
data: {
"type": "currentStatus",
"params": {},
"messageId": 1
}
23:33:00.950 detox[287] i Failed to execute the current status query.
23:34:44.533 detox[287] B onHookFailure
args: ({"error":"Exceeded timeout of 120000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.","hook":"beforeAll"})
23:34:44.533 detox[287] E onHookFailure
23:34:44.533 detox[287] E beforeAll
error: 'Exceeded timeout of 120000 ms for a hook.\n' +
'Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.'
23:34:44.534 detox[287] B setLocalHashInfo
23:34:44.534 detox[287] i 测试Native模块的方法: setLocalHashInfo
23:34:44.536 detox[287] E setLocalHashInfo
23:34:44.536 detox[287] i 测试Native模块的方法: setLocalHashInfo [FAIL]
23:34:44.545 detox[287] B getLocalHashInfo
23:34:44.545 detox[287] i 测试Native模块的方法: getLocalHashInfo
23:34:44.545 detox[287] E getLocalHashInfo
23:34:44.545 detox[287] i 测试Native模块的方法: getLocalHashInfo [FAIL]
23:34:44.545 detox[287] B setUuid
23:34:44.545 detox[287] i 测试Native模块的方法: setUuid
23:34:44.545 detox[287] E setUuid
23:34:44.545 detox[287] i 测试Native模块的方法: setUuid [FAIL]
23:34:44.546 detox[287] B setBlockUpdate
23:34:44.546 detox[287] i 测试Native模块的方法: setBlockUpdate
23:34:44.546 detox[287] E setBlockUpdate
23:34:44.546 detox[287] i 测试Native模块的方法: setBlockUpdate [FAIL]
23:34:44.547 detox[287] B setNeedUpdate
23:34:44.547 detox[287] i 测试Native模块的方法: setNeedUpdate
23:34:44.547 detox[287] E setNeedUpdate
23:34:44.547 detox[287] i 测试Native模块的方法: setNeedUpdate [FAIL]
23:34:44.547 detox[287] B markSuccess
23:34:44.547 detox[287] i 测试Native模块的方法: markSuccess
23:34:44.547 detox[287] E markSuccess
23:34:44.547 detox[287] i 测试Native模块的方法: markSuccess [FAIL]
23:34:44.548 detox[287] B downloadPatchFromPpk
23:34:44.548 detox[287] i 测试Native模块的方法: downloadPatchFromPpk
23:34:44.548 detox[287] E downloadPatchFromPpk
23:34:44.548 detox[287] i 测试Native模块的方法: downloadPatchFromPpk [FAIL]
23:34:44.548 detox[287] B downloadPatchFromPackage
23:34:44.548 detox[287] i 测试Native模块的方法: downloadPatchFromPackage
23:34:44.548 detox[287] E downloadPatchFromPackage
23:34:44.548 detox[287] i 测试Native模块的方法: downloadPatchFromPackage [FAIL]
23:34:44.548 detox[287] B downloadFullUpdate
23:34:44.548 detox[287] i 测试Native模块的方法: downloadFullUpdate
23:34:44.549 detox[287] E downloadFullUpdate
23:34:44.549 detox[287] i 测试Native模块的方法: downloadFullUpdate [FAIL]
23:34:44.549 detox[287] B downloadAndInstallApk
23:34:44.549 detox[287] i 测试Native模块的方法: downloadAndInstallApk
23:34:44.549 detox[287] E downloadAndInstallApk
23:34:44.549 detox[287] i 测试Native模块的方法: downloadAndInstallApk [FAIL]
23:34:44.550 detox[287] B onRunDescribeFinish
args: ({"name":"测试Native模块的方法"})
23:34:44.550 detox[287] E onRunDescribeFinish
23:34:44.550 detox[287] E 测试Native模块的方法
23:34:44.550 detox[287] B onRunDescribeFinish
args: ({"name":"ROOT_DESCRIBE_BLOCK"})
23:34:44.550 detox[287] E onRunDescribeFinish
23:34:44.550 detox[287] E run the tests
23:34:44.574 detox[287] B tear down environment
23:34:44.574 detox[287] B onBeforeCleanup
args: ()
23:34:44.576 detox[287] i saving ADBLogcatRecording to: artifacts/android.emu.debug.2023-04-01 15-32-39Z/emulator-5554 2023-04-01 15-34-44Z.startup.log
23:34:44.576 detox[287] i stopping ADBLogcatRecording
23:34:44.576 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "date +\"%m-%d %T.000\""
23:34:44.612 detox[287] i 12-09 14:42:08.000
23:34:44.614 detox[287] i sending SIGINT to: /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell logcat -T "12-09 14:40:08.000" --pid=20108 -f /sdcard/233241138_0.log
23:34:44.615 detox[287] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell "logcat -T \"12-09 14:40:08.000\" --pid=20108 -f /sdcard/233241138_0.log" terminated with SIGINT
23:34:44.615 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 pull "/sdcard/233241138_0.log" "artifacts/android.emu.debug.2023-04-01 15-32-39Z/emulator-5554 2023-04-01 15-34-44Z.startup.log"
23:34:44.634 detox[287] i /sdcard/233241138_0.log: 1 file pulled, 0 skipped. 13.4 MB/s (53248 bytes in 0.004s)
23:34:44.634 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "rm \"/sdcard/233241138_0.log\""
23:34:44.678 detox[287] i
23:34:44.678 detox[287] i saving FileArtifact to: artifacts/android.emu.debug.2023-04-01 15-32-39Z/detox_pid_287.json.log { append: true }
23:34:44.678 detox[287] i saving FileArtifact to: artifacts/android.emu.debug.2023-04-01 15-32-39Z/detox_pid_287.log { append: true }
23:34:44.678 detox[287] E onBeforeCleanup
23:34:44.678 detox[287] i The app has not responded to the network requests below:
(id = 1) currentStatus: {}
(id = -1000) isReady: {}
Unresponded network requests might result in timeout errors in Detox tests.
23:34:44.680 detox[287] i send message
data: {"type":"cleanup","params":{"stopRunner":true},"messageId":-49642}
23:34:44.681 detox[286] i get
data: {"type":"cleanup","params":{"stopRunner":true},"messageId":-49642}
23:34:44.681 detox[286] i send
data: {
"type": "cleanup",
"params": {
"stopRunner": true
},
"messageId": -49642
}
23:34:49.683 detox[287] i The pending request #-49642 ("cleanup") has been rejected due to the following error:
The tester has not received a response within 5000ms timeout to the message:
Cleanup {
type: 'cleanup',
params: [Object],
messageId: -49642
}
23:34:49.687 detox[286] i tester exited session 85295354-1163-f241-e2d5-6b40862968db
23:34:49.688 detox[286] i send
data: {
"type": "testerDisconnected",
"messageId": -1
}
23:34:49.688 detox[286] E connection :55801<->:55810
23:34:49.688 detox[287] i sending SIGINT to: /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell am instrument -w -r -e detoxServer ws://localhost:55801 -e detoxSessionId 85295354-1163-f241-e2d5-6b40862968db -e debug false com.awesomeproject.test/androidx.test.runner.AndroidJUnitRunner
23:34:49.691 detox[287] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell am instrument -w -r -e detoxServer ws://localhost:55801 -e detoxSessionId 85295354-1163-f241-e2d5-6b40862968db -e debug false com.awesomeproject.test/androidx.test.runner.AndroidJUnitRunner terminated with SIGINT
23:34:49.691 detox[287] i An error occurred while waiting for the app to become ready. Waiting for disconnection...
error: Failed to run application on the device
HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.
23:34:49.692 detox[287] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 reverse --remove tcp:55801
23:34:49.693 detox[287] B free
args: ({"adbName":"emulator-5554"}, {"shutdown":false})
23:34:49.699 detox[287] E free
23:34:49.699 detox[287] E tear down environment
23:34:49.699 detox[287] E e2e/NativeModule.test.ts
23:34:49.705 detox[287] i dispatching event to primary-286 /tmp/detox.primary-286 : reportTestResults , {
testResults: [
{
success: false,
testFilePath: '/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/e2e/NativeModule.test.ts',
testExecError: undefined,
isPermanentFailure: false
}
]
}
23:34:49.706 detox[286] i received event of : reportTestResults {
testResults: [
{
success: false,
testFilePath: '/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/e2e/NativeModule.test.ts',
isPermanentFailure: false
}
]
}
23:34:49.706 detox[286] i dispatching event to socket : reportTestResultsDone {
testResults: [
{
success: false,
testFilePath: '/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/e2e/NativeModule.test.ts',
isPermanentFailure: false
}
]
}
23:34:49.706 detox[286] i broadcasting event to all known sockets listening to /tmp/detox.primary-286 : sessionStateUpdate {
testResults: [
{
success: false,
testFilePath: '/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/e2e/NativeModule.test.ts',
isPermanentFailure: false
}
]
}
23:34:49.706 detox[287] i ## received events ##
23:34:49.707 detox[287] i detected event reportTestResultsDone {
testResults: [
{
success: false,
testFilePath: '/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/e2e/NativeModule.test.ts',
isPermanentFailure: false
}
]
}
23:34:49.710 detox[286] i socket disconnected secondary-287
23:34:49.710 detox[287] i connection closed primary-286 /tmp/detox.primary-286 0 tries remaining of 0
23:34:49.710 detox[287] i secondary-287 exceeded connection rety amount of or stopRetrying flag set.
23:34:49.714 detox[287] i
23:34:49.777 detox[286] E Command failed with exit code = 1:
jest --config e2e/jest.config.js
23:34:49.778 detox[286] i Detox server has been closed gracefully
23:34:49.778 detox[286] i app exited session 85295354-1163-f241-e2d5-6b40862968db
23:34:49.778 detox[286] E connection :55801<->:55919
23:34:49.779 detox[286] E ../../node_modules/.bin/detox test --configuration android.emu.debug --headless --record-logs all

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,270 @@
--------- beginning of main
12-09 14:40:08.705 20108 20108 I .awesomeproject: Late-enabling -Xcheck:jni
12-09 14:40:08.746 20108 20108 D CompatibilityChangeReporter: Compat change id reported: 171979766; UID 10184; state: ENABLED
--------- beginning of system
12-09 14:40:08.751 20108 20108 W ActivityThread: Package uses different ABI(s) than its instrumentation: package[com.awesomeproject]: arm64-v8a, null instrumentation[com.awesomeproject.test]: null, null
12-09 14:40:08.753 20108 20108 W .awesomeproject: ClassLoaderContext classpath size mismatch. expected=0, found=1 (PCL[] | PCL[/system/framework/android.test.runner.jar*2256426886])
12-09 14:40:08.754 20108 20108 W .awesomeproject: ClassLoaderContext classpath size mismatch. expected=0, found=2 (PCL[] | PCL[/system/framework/android.test.runner.jar*2256426886:/system/framework/android.test.mock.jar*849501951])
12-09 14:40:08.754 20108 20108 W ziparchive: Unable to open '/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.dm': No such file or directory
12-09 14:40:08.754 20108 20108 W ziparchive: Unable to open '/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.dm': No such file or directory
12-09 14:40:08.815 20108 20108 W ziparchive: Unable to open '/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.dm': No such file or directory
12-09 14:40:08.815 20108 20108 W ziparchive: Unable to open '/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.dm': No such file or directory
12-09 14:40:08.886 20108 20108 V GraphicsEnvironment: ANGLE Developer option for 'com.awesomeproject' set to: 'default'
12-09 14:40:08.886 20108 20108 V GraphicsEnvironment: ANGLE GameManagerService for com.awesomeproject: false
12-09 14:40:08.886 20108 20108 V GraphicsEnvironment: Neither updatable production driver nor prerelease driver is supported.
12-09 14:40:08.887 20108 20108 D ApplicationLoaders: Returning zygote-cached class loader: /system/framework/android.test.base.jar
12-09 14:40:08.888 20108 20108 D ApplicationLoaders: Returning zygote-cached class loader: /system/framework/android.test.base.jar
12-09 14:40:08.888 20108 20108 W .awesomeproject: ClassLoaderContext shared library size mismatch. Expected=0, found=2 (PCL[] | PCL[]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]})
12-09 14:40:08.889 20108 20108 W .awesomeproject: ClassLoaderContext shared library size mismatch. Expected=0, found=3 (PCL[] | PCL[]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]#PCL[/system/framework/android.test.runner.jar*2256426886]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]}};PCL[/system/framework/android.test.runner.jar*2256426886:/system/framework/android.test.mock.jar*849501951:/system/framework/android.test.base.jar*1628045882:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk*3488107038:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk!classes2.dex*3802597924:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk!classes3.dex*1113348705:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk!classes4.dex*1609470516:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk*4280308006:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes2.dex*2341650508:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes3.dex*2242498629:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes4.dex*1939924932:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes5.dex*3428091317:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes6.dex*1896867339:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes7.dex*616740603])
12-09 14:40:08.889 20108 20108 W .awesomeproject: ClassLoaderContext classpath size mismatch. expected=0, found=1 (PCL[] | PCL[/system/framework/android.test.runner.jar*2256426886]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]#PCL[/system/framework/android.test.runner.jar*2256426886]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]}};PCL[/system/framework/android.test.runner.jar*2256426886:/system/framework/android.test.mock.jar*849501951:/system/framework/android.test.base.jar*1628045882:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk*3488107038:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk!classes2.dex*3802597924:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk!classes3.dex*1113348705:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk!classes4.dex*1609470516:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk*4280308006:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes2.dex*2341650508:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes3.dex*2242498629:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes4.dex*1939924932:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes5.dex*3428091317:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes6.dex*1896867339:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes7.dex*616740603])
12-09 14:40:08.889 20108 20108 W .awesomeproject: ClassLoaderContext classpath size mismatch. expected=0, found=2 (PCL[] | PCL[/system/framework/android.test.runner.jar*2256426886:/system/framework/android.test.mock.jar*849501951]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]#PCL[/system/framework/android.test.runner.jar*2256426886]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]}};PCL[/system/framework/android.test.runner.jar*2256426886:/system/framework/android.test.mock.jar*849501951:/system/framework/android.test.base.jar*1628045882:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk*3488107038:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk!classes2.dex*3802597924:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk!classes3.dex*1113348705:/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk!classes4.dex*1609470516:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk*4280308006:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes2.dex*2341650508:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes3.dex*2242498629:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes4.dex*1939924932:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes5.dex*3428091317:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes6.dex*1896867339:/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.apk!classes7.dex*616740603])
12-09 14:40:08.889 20108 20108 W ziparchive: Unable to open '/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.dm': No such file or directory
12-09 14:40:08.889 20108 20108 W ziparchive: Unable to open '/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.dm': No such file or directory
12-09 14:40:08.940 20108 20108 W ziparchive: Unable to open '/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.dm': No such file or directory
12-09 14:40:08.940 20108 20108 W ziparchive: Unable to open '/data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/base.dm': No such file or directory
12-09 14:40:09.014 20108 20108 D NetworkSecurityConfig: Using Network Security Config from resource network_security_config debugBuild: true
12-09 14:40:09.014 20108 20108 D NetworkSecurityConfig: Using Network Security Config from resource network_security_config debugBuild: true
12-09 14:40:09.018 20108 20108 I MonitoringInstr: Instrumentation started!
12-09 14:40:09.020 20108 20108 V TestEventClient: No service name argument was given (testDiscoveryService, testRunEventService or orchestratorService)
12-09 14:40:09.021 20108 20108 V fb-UnpackingSoSource: locked dso store /data/user/0/com.awesomeproject/lib-main
12-09 14:40:09.022 20108 20108 V fb-UnpackingSoSource: deps mismatch on deps store: regenerating
12-09 14:40:09.022 20108 20108 V fb-UnpackingSoSource: so store dirty: regenerating
12-09 14:40:09.032 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libc++_shared.so: deferring to libdir
12-09 14:40:09.032 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libevent-2.1.so: deferring to libdir
12-09 14:40:09.032 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libevent_core-2.1.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libevent_extra-2.1.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libfabricjni.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libfb.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libfbjni.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libflipper.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libfolly_runtime.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libglog.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libglog_init.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libimagepipeline.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libjsc.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libjscexecutor.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libjsi.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libjsijniprofiler.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libjsinspector.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/liblogger.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libmapbufferjni.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libnative-filters.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libnative-imagetranscoder.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_codegen_rncore.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_config.so: deferring to libdir
12-09 14:40:09.033 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_debug.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_nativemodule_core.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_animations.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_attributedstring.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_componentregistry.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_core.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_debug.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_graphics.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_imagemanager.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_leakchecker.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_mapbuffer.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_mounting.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_runtimescheduler.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_scheduler.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_telemetry.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_templateprocessor.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_textlayoutmanager.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_uimanager.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_utils.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreactnativeblob.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreactnativejni.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreactperfloggerjni.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librnupdate.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_image.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_root.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_scrollview.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_text.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_textinput.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_unimplementedview.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_view.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libruntimeexecutor.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libturbomodulejsijni.so: deferring to libdir
12-09 14:40:09.034 20108 20108 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libyoga.so: deferring to libdir
12-09 14:40:09.034 20108 20108 V fb-UnpackingSoSource: regenerating DSO store com.facebook.soloader.ApkSoSource
12-09 14:40:09.034 20108 20108 V fb-UnpackingSoSource: Finished regenerating DSO store com.facebook.soloader.ApkSoSource
12-09 14:40:09.034 20108 20108 V fb-UnpackingSoSource: starting syncer worker
12-09 14:40:09.037 20108 20108 V fb-UnpackingSoSource: releasing dso store lock for /data/user/0/com.awesomeproject/lib-main (from syncer thread)
12-09 14:40:09.037 20108 20108 V fb-UnpackingSoSource: not releasing dso store lock for /data/user/0/com.awesomeproject/lib-main (syncer thread started)
12-09 14:40:09.039 20108 20108 D SoLoader: libjscexecutor.so not found on /data/data/com.awesomeproject/lib-main
12-09 14:40:09.039 20108 20108 D SoLoader: libjscexecutor.so found on /data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/lib/arm64
12-09 14:40:09.039 20108 20108 D SoLoader: Not resolving dependencies for libjscexecutor.so
12-09 14:40:09.046 20108 20108 D JavaScriptCore.Version: 250230.2.1
12-09 14:40:09.072 20108 20130 D SoLoader: libfbjni.so not found on /data/data/com.awesomeproject/lib-main
12-09 14:40:09.072 20108 20130 D SoLoader: libfbjni.so found on /data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/lib/arm64
12-09 14:40:09.072 20108 20130 D SoLoader: Not resolving dependencies for libfbjni.so
12-09 14:40:09.073 20108 20130 D SoLoader: libflipper.so not found on /data/data/com.awesomeproject/lib-main
12-09 14:40:09.073 20108 20130 D SoLoader: libflipper.so found on /data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/lib/arm64
12-09 14:40:09.073 20108 20130 D SoLoader: Not resolving dependencies for libflipper.so
12-09 14:40:09.106 20108 20108 W .awesomeproject: Accessing hidden field Landroid/view/View;->mKeyedTags:Landroid/util/SparseArray; (unsupported, reflection, allowed)
12-09 14:40:09.106 20108 20108 W .awesomeproject: Accessing hidden field Landroid/view/View;->mListenerInfo:Landroid/view/View$ListenerInfo; (unsupported, reflection, allowed)
12-09 14:40:09.106 20108 20108 W .awesomeproject: Accessing hidden field Landroid/view/View$ListenerInfo;->mOnClickListener:Landroid/view/View$OnClickListener; (unsupported, reflection, allowed)
12-09 14:40:09.108 20108 20108 I flipper : flipper: FlipperClient::addPlugin Inspector
12-09 14:40:09.110 20108 20108 I flipper : flipper: FlipperClient::addPlugin React
12-09 14:40:09.110 20108 20108 I flipper : flipper: FlipperClient::addPlugin Databases
12-09 14:40:09.112 20108 20108 I flipper : flipper: FlipperClient::addPlugin Preferences
12-09 14:40:09.112 20108 20108 I flipper : flipper: FlipperClient::addPlugin CrashReporter
12-09 14:40:09.113 20108 20108 I flipper : flipper: FlipperClient::addPlugin Network
12-09 14:40:09.117 20108 20135 D TrafficStats: tagSocket(86) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:09.124 20108 20134 D TrafficStats: tagSocket(85) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:09.138 20108 20125 I UsageTrackerFacilitator: Usage tracking enabled
12-09 14:40:09.141 20108 20125 I TestRequestBuilder: Scanning classpath to find tests in paths [/data/app/~~JbluuSx6QTkqb_6NTsHF9w==/com.awesomeproject.test-hBD1JykP08ciZhLfSyPoEw==/base.apk]
12-09 14:40:09.141 20108 20125 W .awesomeproject: Opening an oat file without a class loader. Are you using the deprecated DexFile APIs?
12-09 14:40:09.291 20108 20129 W .awesomeproject: Verification of void org.slf4j.LoggerFactory.replayEvents() took 160.243ms (374.43 bytecodes/s) (2800B approximate peak alloc)
12-09 14:40:09.298 20108 20129 W System.err: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
12-09 14:40:09.303 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/AccessibilityHierarchyCheckResult; annotation class 6432
12-09 14:40:09.303 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/AccessibilityHierarchyCheckResult; annotation class 6432
12-09 14:40:09.303 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/AccessibilityHierarchyCheckResult; annotation class 6432
12-09 14:40:09.303 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/AccessibilityHierarchyCheckResult; annotation class 6432
12-09 14:40:09.303 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/AccessibilityViewCheckResult; annotation class 6432
12-09 14:40:09.304 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/ClusteringUtils; annotation class 6432
12-09 14:40:09.304 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/Question; annotation class 6432
12-09 14:40:09.306 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/replacements/TextUtils; annotation class 6431
12-09 14:40:09.308 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:40:09.308 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:40:09.308 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:40:09.308 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:40:09.308 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElementAndroid; annotation class 6432
12-09 14:40:09.308 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElementAndroid; annotation class 6432
12-09 14:40:09.308 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElementAndroid; annotation class 6432
12-09 14:40:09.308 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElementAndroid; annotation class 6432
12-09 14:40:09.308 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:40:09.309 20108 20125 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:40:09.322 20108 20129 W System.err: SLF4J: Defaulting to no-operation (NOP) logger implementation
12-09 14:40:09.331 20108 20129 W System.err: SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
12-09 14:40:09.375 20108 20153 D TrafficStats: tagSocket(96) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:09.506 20108 20125 D TestExecutor: Adding listener androidx.test.internal.runner.listener.LogRunListener
12-09 14:40:09.506 20108 20125 D TestExecutor: Adding listener androidx.test.internal.runner.listener.InstrumentationResultPrinter
12-09 14:40:09.506 20108 20125 D TestExecutor: Adding listener androidx.test.internal.runner.listener.ActivityFinisherRunListener
12-09 14:40:09.506 20108 20125 I TestRunner: run started: 1 tests
12-09 14:40:09.507 20108 20125 I TestRunner: started: runDetoxTests(com.awesomeproject.DetoxTest)
12-09 14:40:09.512 20108 20125 D EventInjectionStrategy: Creating injection strategy with input manager.
12-09 14:40:09.512 20108 20125 W .awesomeproject: Accessing hidden method Landroid/hardware/input/InputManager;->getInstance()Landroid/hardware/input/InputManager; (unsupported, reflection, allowed)
12-09 14:40:09.512 20108 20125 W .awesomeproject: Accessing hidden method Landroid/hardware/input/InputManager;->injectInputEvent(Landroid/view/InputEvent;I)Z (unsupported, reflection, allowed)
12-09 14:40:09.512 20108 20125 W .awesomeproject: Accessing hidden field Landroid/hardware/input/InputManager;->INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH:I (unsupported, reflection, allowed)
12-09 14:40:09.514 20108 20125 W .awesomeproject: Accessing hidden field Ljava/lang/reflect/Field;->accessFlags:I (unsupported, reflection, allowed)
12-09 14:40:09.557 20108 20158 D libEGL : loaded /vendor/lib64/egl/libEGL_emulation.so
12-09 14:40:09.622 20108 20158 D libEGL : loaded /vendor/lib64/egl/libGLESv1_CM_emulation.so
12-09 14:40:09.625 20108 20158 D libEGL : loaded /vendor/lib64/egl/libGLESv2_emulation.so
12-09 14:40:09.644 20108 20108 D LifecycleMonitor: Lifecycle status change: com.awesomeproject.MainActivity@fcceb27 in: PRE_ON_CREATE
12-09 14:40:09.711 20108 20108 W .awesomeproject: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (unsupported, reflection, allowed)
12-09 14:40:09.711 20108 20108 W .awesomeproject: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (unsupported, reflection, allowed)
12-09 14:40:09.711 20108 20108 D LifecycleMonitor: Lifecycle status change: com.awesomeproject.MainActivity@fcceb27 in: CREATED
12-09 14:40:09.712 20108 20108 D LifecycleMonitor: Lifecycle status change: com.awesomeproject.MainActivity@fcceb27 in: STARTED
12-09 14:40:09.713 20108 20108 D LifecycleMonitor: Lifecycle status change: com.awesomeproject.MainActivity@fcceb27 in: RESUMED
12-09 14:40:09.719 20108 20108 W unknown:ReactNative: Packager connection already open, nooping.
12-09 14:40:09.723 20108 20157 D HostConnection: createUnique: call
12-09 14:40:09.724 20108 20157 D HostConnection: HostConnection::get() New Host Connection established 0xb4000077d3ba7910, tid 20157
12-09 14:40:09.726 20108 20157 D HostConnection: HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_native_sync_v2 ANDROID_EMU_native_sync_v3 ANDROID_EMU_native_sync_v4 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV_Cache ANDROID_EMU_vulkan_ignored_handles ANDROID_EMU_has_shared_slots_host_memory_allocator ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit ANDROID_EMU_vulkan_queue_submit_with_commands ANDROID_EMU_sync_buffer_data ANDROID_EMU_read_color_buffer_dma ANDROID_EMU_hwc_multi_configs GL_OES_EGL_image_external_essl3 GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_3_0
12-09 14:40:09.727 20108 20157 W OpenGLRenderer: Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
12-09 14:40:09.728 20108 20157 W OpenGLRenderer: Failed to initialize 101010-2 format, error = EGL_SUCCESS
12-09 14:40:09.728 20108 20157 D EGL_emulation: eglCreateContext: 0xb4000077d3ba6c50: maj 3 min 0 rcv 3
12-09 14:40:09.729 20108 20157 D EGL_emulation: eglMakeCurrent: 0xb4000077d3ba6c50: ver 3 0 (tinfo 0x79f25a4080) (first time)
12-09 14:40:09.745 20108 20157 I Gralloc4: mapper 4.x is not supported
12-09 14:40:09.746 20108 20157 D HostConnection: createUnique: call
12-09 14:40:09.746 20108 20157 D HostConnection: HostConnection::get() New Host Connection established 0xb4000077d3ba7a90, tid 20157
12-09 14:40:09.746 20108 20157 D goldfish-address-space: allocate: Ask for block of size 0x100
12-09 14:40:09.746 20108 20157 D goldfish-address-space: allocate: ioctl allocate returned offset 0x1efff8000 size 0x8000
12-09 14:40:09.747 20108 20157 W Gralloc4: allocator 4.x is not supported
12-09 14:40:09.752 20108 20157 D HostConnection: HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_native_sync_v2 ANDROID_EMU_native_sync_v3 ANDROID_EMU_native_sync_v4 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV_Cache ANDROID_EMU_vulkan_ignored_handles ANDROID_EMU_has_shared_slots_host_memory_allocator ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit ANDROID_EMU_vulkan_queue_submit_with_commands ANDROID_EMU_sync_buffer_data ANDROID_EMU_read_color_buffer_dma ANDROID_EMU_hwc_multi_configs GL_OES_EGL_image_external_essl3 GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_3_0
12-09 14:40:09.758 20108 20161 D TrafficStats: tagSocket(109) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:09.763 20108 20157 W Parcel : Expecting binder but got null!
12-09 14:40:09.786 20108 20125 I Detox : Detox server connection details: url=ws://localhost:55801, sessionId=85295354-1163-f241-e2d5-6b40862968db
12-09 14:40:09.793 20108 20165 I DetoxDispatcher: Handling action '_init' (ID #0)...
12-09 14:40:09.796 20108 20165 I Detox : Connecting to server...
12-09 14:40:09.796 20108 20165 I DetoxWSClient: At connectToServer
12-09 14:40:09.805 20108 20108 D CompatibilityChangeReporter: Compat change id reported: 210923482; UID 10184; state: DISABLED
12-09 14:40:09.805 20108 20108 D CompatibilityChangeReporter: Compat change id reported: 37756858; UID 10184; state: ENABLED
12-09 14:40:09.811 20108 20167 D TrafficStats: tagSocket(124) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:09.830 20108 20157 W Parcel : Expecting binder but got null!
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: Could not parse DebugServerException from: {"originModulePath":"/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js","targetModuleName":"react-native-update","message":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m","errors":[{"description":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m"}],"name":"Error","stack":"Error: Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m\n at ModuleResolver.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:158:15)\n at DependencyGraph.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph.js:231:43)\n at Object.resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/lib/transformHelpers.js:129:24)\n at resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/DeltaBundler/traverseDependencies.js:396:33)\n at /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: org.json.JSONException: No value for filename
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at org.json.JSONObject.get(JSONObject.java:398)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at org.json.JSONObject.getString(JSONObject.java:559)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at com.facebook.react.common.DebugServerException.parse(DebugServerException.java:77)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processBundleResult(BundleDownloader.java:251)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$200(BundleDownloader.java:34)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$2.onChunkComplete(BundleDownloader.java:193)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.emitChunk(MultipartStreamReader.java:70)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.readAllParts(MultipartStreamReader.java:152)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processMultipartResponse(BundleDownloader.java:177)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$100(BundleDownloader.java:34)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$1.onResponse(BundleDownloader.java:147)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
12-09 14:40:09.841 20108 20161 W unknown:ReactNative: at java.lang.Thread.run(Thread.java:1012)
12-09 14:40:09.842 20108 20161 E unknown:ReactNative: Unable to download JS bundle
12-09 14:40:09.842 20108 20161 E unknown:ReactNative: com.facebook.react.common.DebugServerException: The development server returned response error code: 500
12-09 14:40:09.842 20108 20161 E unknown:ReactNative:
12-09 14:40:09.842 20108 20161 E unknown:ReactNative: URL: http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.awesomeproject&modulesOnly=false&runModule=true
12-09 14:40:09.842 20108 20161 E unknown:ReactNative:
12-09 14:40:09.842 20108 20161 E unknown:ReactNative: Body:
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: {"originModulePath":"/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js","targetModuleName":"react-native-update","message":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m","errors":[{"description":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m"}],"name":"Error","stack":"Error: Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m\n at ModuleResolver.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:158:15)\n at DependencyGraph.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph.js:231:43)\n at Object.resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/lib/transformHelpers.js:129:24)\n at resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/DeltaBundler/traverseDependencies.js:396:33)\n at /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/DeltaBundler/traverseDependencies
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processBundleResult(BundleDownloader.java:264)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$200(BundleDownloader.java:34)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$2.onChunkComplete(BundleDownloader.java:193)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.emitChunk(MultipartStreamReader.java:70)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.readAllParts(MultipartStreamReader.java:152)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processMultipartResponse(BundleDownloader.java:177)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$100(BundleDownloader.java:34)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$1.onResponse(BundleDownloader.java:147)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
12-09 14:40:09.843 20108 20161 E unknown:ReactNative: at java.lang.Thread.run(Thread.java:1012)
12-09 14:40:09.845 20108 20167 D DetoxWSClient: At onOpen
12-09 14:40:09.845 20108 20167 I DetoxWSClient: Sending out action 'login' (ID #0)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: Exception in native call
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: com.facebook.react.common.DebugServerException: The development server returned response error code: 500
12-09 14:40:09.859 20108 20108 E unknown:ReactNative:
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: URL: http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.awesomeproject&modulesOnly=false&runModule=true
12-09 14:40:09.859 20108 20108 E unknown:ReactNative:
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: Body:
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: {"originModulePath":"/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js","targetModuleName":"react-native-update","message":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m","errors":[{"description":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m"}],"name":"Error","stack":"Error: Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m\n at ModuleResolver.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:158:15)\n at DependencyGraph.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph.js:231:43)\n at Object.resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/lib/transformHelpers.js:129:24)\n at resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/DeltaBundler/traverseDependencies.js:396:33)\n at /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/DeltaBundler/traverseDependencies
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processBundleResult(BundleDownloader.java:264)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$200(BundleDownloader.java:34)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$2.onChunkComplete(BundleDownloader.java:193)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.emitChunk(MultipartStreamReader.java:70)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.readAllParts(MultipartStreamReader.java:152)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processMultipartResponse(BundleDownloader.java:177)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$100(BundleDownloader.java:34)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$1.onResponse(BundleDownloader.java:147)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
12-09 14:40:09.859 20108 20108 E unknown:ReactNative: at java.lang.Thread.run(Thread.java:1012)
12-09 14:40:09.862 20108 20108 D CompatibilityChangeReporter: Compat change id reported: 171228096; UID 10184; state: ENABLED
12-09 14:40:09.904 20108 20157 W Parcel : Expecting binder but got null!
12-09 14:40:09.905 20108 20167 I Detox : Connected to server!
12-09 14:40:09.906 20108 20167 D DetoxWSClient: Received action 'loginSuccess' (ID #0, params={"testerConnected":true,"appConnected":true})
12-09 14:40:09.910 20108 20167 D DetoxWSClient: Received action 'isReady' (ID #-1000, params={})
12-09 14:40:10.179 20108 20134 D SoLoader: libreactnativejni.so not found on /data/data/com.awesomeproject/lib-main
12-09 14:40:10.180 20108 20134 D SoLoader: libreactnativejni.so found on /data/app/~~sJBymP1pJHzMrTfEnUzLyQ==/com.awesomeproject-o0qibQ9IJbng_NpEZc31Ow==/lib/arm64
12-09 14:40:10.180 20108 20134 D SoLoader: Not resolving dependencies for libreactnativejni.so
12-09 14:40:11.388 20108 20175 D TrafficStats: tagSocket(142) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:11.505 20108 20157 D EGL_emulation: app_time_stats: avg=399.92ms min=3.80ms max=1219.56ms count=4
12-09 14:40:13.406 20108 20177 D TrafficStats: tagSocket(133) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:15.422 20108 20179 D TrafficStats: tagSocket(133) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:19.880 20108 20167 D DetoxWSClient: Received action 'currentStatus' (ID #1, params={})
12-09 14:40:19.881 20108 20166 I DetoxDispatcher: Handling action 'currentStatus' (ID #1)...
12-09 14:40:25.484 20108 20185 D TrafficStats: tagSocket(144) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:27.505 20108 20187 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:29.524 20108 20189 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:31.536 20108 20191 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:41.586 20108 20199 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:43.598 20108 20201 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:45.608 20108 20207 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:47.619 20108 20209 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:57.669 20108 20215 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:40:59.679 20108 20217 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:41:01.693 20108 20219 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:41:03.701 20108 20221 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:41:13.742 20108 20227 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:41:15.753 20108 20229 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:41:17.766 20108 20231 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:41:19.783 20108 20233 D TrafficStats: t

View File

@ -0,0 +1,797 @@
23:34:53.933 detox[4818] B ../../node_modules/.bin/detox test --configuration android.emu.debug --headless --record-logs all
data: {
"id": "339aa5c7-a6ef-b3b2-6c74-71a67b6a4fec",
"detoxConfig": {
"configurationName": "android.emu.debug",
"apps": {
"default": {
"type": "android.apk",
"binaryPath": "android/app/build/outputs/apk/debug/app-debug.apk",
"build": "cd android && ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug",
"reversePorts": [
8081
]
}
},
"artifacts": {
"rootDir": "artifacts/android.emu.debug.2023-04-01 15-34-53Z",
"plugins": {
"log": {
"enabled": true,
"keepOnlyFailedTestsArtifacts": false
},
"screenshot": {
"enabled": true,
"shouldTakeAutomaticSnapshots": false,
"keepOnlyFailedTestsArtifacts": false
},
"video": {
"enabled": false,
"keepOnlyFailedTestsArtifacts": false
},
"instruments": {
"enabled": false,
"keepOnlyFailedTestsArtifacts": false
},
"uiHierarchy": {
"enabled": false,
"keepOnlyFailedTestsArtifacts": false
}
}
},
"behavior": {
"init": {
"keepLockFile": false,
"reinstallApp": true,
"exposeGlobals": true
},
"cleanup": {
"shutdownDevice": false
},
"launchApp": "auto"
},
"cli": {
"recordLogs": "all",
"configuration": "android.emu.debug",
"headless": true,
"start": true
},
"device": {
"type": "android.emulator",
"device": {
"avdName": "Pixel_3a_API_33_arm64-v8a"
},
"headless": true
},
"logger": {
"level": "info",
"overrideConsole": true,
"options": {
"showLoggerName": true,
"showPid": true,
"showLevel": false,
"showMetadata": false,
"basepath": "/Users/arvinh/Desktop/wooza/react-native-pushy/node_modules/detox/src",
"prefixers": {},
"stringifiers": {}
}
},
"testRunner": {
"retries": 0,
"forwardEnv": false,
"bail": false,
"jest": {
"setupTimeout": 120000,
"teardownTimeout": 30000,
"retryAfterCircusRetries": false,
"reportWorkerAssign": true
},
"args": {
"$0": "jest",
"_": [],
"config": "e2e/jest.config.js",
"--": []
}
},
"session": {
"autoStart": true,
"debugSynchronization": 10000
}
},
"detoxIPCServer": "primary-4818",
"testResults": [],
"testSessionIndex": 0,
"workersCount": 0
}
23:34:53.938 detox[4818] i Server path not specified, so defaulting to ipc.config.socketRoot + ipc.config.appspace + ipc.config.id /tmp/detox.primary-4818
23:34:53.939 detox[4818] i starting server on /tmp/detox.primary-4818
23:34:53.939 detox[4818] i starting TLS server false
23:34:53.939 detox[4818] i starting server as Unix || Windows Socket
23:34:53.944 detox[4818] i Detox server listening on localhost:56416...
23:34:53.945 detox[4818] i Serialized the session state at: /private/var/folders/wm/91840x650t10w1m7sq830mp80000gn/T/339aa5c7-a6ef-b3b2-6c74-71a67b6a4fec.detox.json
23:34:53.946 detox[4818] B jest --config e2e/jest.config.js
23:34:55.379 detox[4821] i Service path not specified, so defaulting to ipc.config.socketRoot + ipc.config.appspace + id
23:34:55.380 detox[4821] i requested connection to primary-4818 /tmp/detox.primary-4818
23:34:55.380 detox[4821] i Connecting client on Unix Socket : /tmp/detox.primary-4818
23:34:55.381 detox[4818] i ## socket connection to server detected ##
23:34:55.381 detox[4821] i retrying reset
23:34:55.382 detox[4821] i dispatching event to primary-4818 /tmp/detox.primary-4818 : registerContext , { id: 'secondary-4821' }
23:34:55.383 detox[4818] i received event of : registerContext { id: 'secondary-4821' }
23:34:55.383 detox[4818] i dispatching event to socket : registerContextDone { testResults: [], testSessionIndex: 0 }
23:34:55.383 detox[4821] i ## received events ##
23:34:55.384 detox[4821] i detected event registerContextDone { testResults: [], testSessionIndex: 0 }
23:34:55.435 detox[4821] B e2e/NativeModule.test.ts
23:34:55.444 detox[4821] B set up environment
23:34:55.445 detox[4818] i received event of : registerWorker { workerId: 'w1' }
23:34:55.445 detox[4818] i dispatching event to socket : registerWorkerDone { workersCount: 1 }
23:34:55.445 detox[4821] i dispatching event to primary-4818 /tmp/detox.primary-4818 : registerWorker , { workerId: 'w1' }
23:34:55.445 detox[4821] i ## received events ##
23:34:55.446 detox[4818] i broadcasting event to all known sockets listening to /tmp/detox.primary-4818 : sessionStateUpdate { workersCount: 1 }
23:34:55.446 detox[4821] i detected event registerWorkerDone { workersCount: 1 }
23:34:55.539 detox[4821] i ## received events ##
23:34:55.539 detox[4821] i detected event sessionStateUpdate { workersCount: 1 }
23:34:55.542 detox[4818] B connection :56416<->:56425
23:34:55.543 detox[4821] i opened web socket to: ws://localhost:56416
23:34:55.544 detox[4821] i send message
data: {"type":"login","params":{"sessionId":"f4aa1b39-7f49-6a1e-2016-8fceba85b11b","role":"tester"},"messageId":0}
23:34:55.545 detox[4818] i get
data: {"type":"login","params":{"sessionId":"f4aa1b39-7f49-6a1e-2016-8fceba85b11b","role":"tester"},"messageId":0}
23:34:55.545 detox[4818] i created session f4aa1b39-7f49-6a1e-2016-8fceba85b11b
23:34:55.545 detox[4818] i send
data: {
"type": "loginSuccess",
"params": {
"testerConnected": true,
"appConnected": false
},
"messageId": 0
}
23:34:55.545 detox[4818] i tester joined session f4aa1b39-7f49-6a1e-2016-8fceba85b11b
23:34:55.546 detox[4821] i get message
data: {"type":"loginSuccess","params":{"testerConnected":true,"appConnected":false},"messageId":0}
23:34:55.586 detox[4821] B allocate
args: ({"type":"android.emulator","device":{"avdName":"Pixel_3a_API_33_arm64-v8a"},"headless":true})
23:34:55.586 detox[4821] i "/Users/arvinh/Library/Android/sdk/emulator/emulator" -list-avds --verbose
23:34:55.660 detox[4821] i Pixel_3a_API_33_arm64-v8a
23:34:55.660 detox[4821] i "/Users/arvinh/Library/Android/sdk/emulator/emulator" -version -no-window
23:34:55.796 detox[4821] i INFO | Duplicate loglines will be removed, if you wish to see each indiviudal line launch with the -log-nofilter flag.
Android emulator version 31.3.13.0 (build_id 9189900) (CL:N/A)
Copyright (C) 2006-2017 The Android Open Source Project and many others.
This program is a derivative of the QEMU CPU emulator (www.qemu.org).
This software is licensed under the terms of the GNU General Public
License version 2, as published by the Free Software Foundation, and
may be copied, distributed, and modified under those terms.
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.
23:34:55.796 detox[4821] i Detected emulator binary version { major: 31, minor: 3, patch: 13, toString: [Function: toString] }
23:34:55.796 detox[4821] i Trying to allocate a device based on "Pixel_3a_API_33_arm64-v8a"
23:34:55.797 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" devices
23:34:55.809 detox[4821] i List of devices attached
emulator-5554 device
23:34:55.810 detox[4821] i port: 5554, host: localhost
23:34:55.814 detox[4821] i Found a matching & free device emulator-5554
23:34:55.814 detox[4821] i Settled on emulator-5554
23:34:55.814 detox[4821] B _launchEmulator
args: ("Pixel_3a_API_33_arm64-v8a", "emulator-5554", true, {"headless":true,"port":null})
23:34:55.814 detox[4821] B _awaitEmulatorBoot
args: ("emulator-5554")
23:34:55.815 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "getprop dev.bootcomplete"
23:34:55.847 detox[4821] i 1
23:34:55.847 detox[4821] E _awaitEmulatorBoot
23:34:55.847 detox[4821] B onBootDevice
args: ({"deviceId":"emulator-5554","type":"Pixel_3a_API_33_arm64-v8a","coldBoot":false})
23:34:55.847 detox[4821] E onBootDevice
23:34:55.847 detox[4821] E _launchEmulator
23:34:55.847 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "getprop ro.build.version.sdk"
23:34:55.871 detox[4821] i 33
23:34:55.872 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "settings put global animator_duration_scale 0"
23:34:55.897 detox[4821] i
23:34:55.897 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "settings put global window_animation_scale 0"
23:34:55.920 detox[4821] i
23:34:55.920 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "settings put global transition_animation_scale 0"
23:34:55.942 detox[4821] i
23:34:55.942 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "dumpsys power | grep \"^[ ]*m[UW].*=\""
23:34:56.007 detox[4821] i mWakefulness=Awake
mWakefulnessChanging=false
mWakeLockSummary=0x0
mWakeUpWhenPluggedOrUnpluggedConfig=false
mWakeUpWhenPluggedOrUnpluggedInTheaterModeConfig=false
mUserActivityTimeoutOverrideFromWindowManager=-1
mUserInactiveOverrideFromWindowManager=false
mUserId=0
mWakeLockSummary=0x0
mUserInteractionBackoffMillis=60000
23:34:56.007 detox[4821] E allocate
23:34:56.022 detox[4821] B installUtilBinaries
args: ()
23:34:56.022 detox[4821] E installUtilBinaries
23:34:56.023 detox[4821] B selectApp
args: ("default")
23:34:56.026 detox[4821] i "/Users/arvinh/Library/Android/sdk/build-tools/33.0.0/aapt" dump badging "/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/debug/app-debug.apk"
23:34:56.059 detox[4821] i package: name='com.awesomeproject' versionCode='1' versionName='1.0' platformBuildVersionName='12' platformBuildVersionCode='31' compileSdkVersion='31' compileSdkVersionCodename='12'
sdkVersion:'21'
targetSdkVersion:'31'
uses-permission: name='android.permission.SYSTEM_ALERT_WINDOW'
uses-permission: name='android.permission.INTERNET'
uses-permission: name='android.permission.ACCESS_WIFI_STATE'
uses-permission: name='android.permission.REQUEST_INSTALL_PACKAGES'
uses-permission: name='android.permission.WRITE_EXTERNAL_STORAGE'
application-label:'AwesomeProject'
application-label-af:'AwesomeProject'
application-label-am:'AwesomeProject'
application-label-ar:'AwesomeProject'
application-label-as:'AwesomeProject'
application-label-az:'AwesomeProject'
application-label-be:'AwesomeProject'
application-label-bg:'AwesomeProject'
application-label-bn:'AwesomeProject'
application-label-bs:'AwesomeProject'
application-label-ca:'AwesomeProject'
application-label-cs:'AwesomeProject'
application-label-da:'AwesomeProject'
application-label-de:'AwesomeProject'
application-label-el:'AwesomeProject'
application-label-en-AU:'AwesomeProject'
application-label-en-CA:'AwesomeProject'
application-label-en-GB:'AwesomeProject'
application-label-en-IN:'AwesomeProject'
application-label-en-XC:'AwesomeProject'
application-label-es:'AwesomeProject'
application-label-es-US:'AwesomeProject'
application-label-et:'AwesomeProject'
application-label-eu:'AwesomeProject'
application-label-fa:'AwesomeProject'
application-label-fi:'AwesomeProject'
application-label-fr:'AwesomeProject'
application-label-fr-CA:'AwesomeProject'
application-label-gl:'AwesomeProject'
application-label-gu:'AwesomeProject'
application-label-hi:'AwesomeProject'
application-label-hr:'AwesomeProject'
application-label-hu:'AwesomeProject'
application-label-hy:'AwesomeProject'
application-label-in:'AwesomeProject'
application-label-is:'AwesomeProject'
application-label-it:'AwesomeProject'
application-label-iw:'AwesomeProject'
application-label-ja:'AwesomeProject'
application-label-ka:'AwesomeProject'
application-label-kk:'AwesomeProject'
application-label-km:'AwesomeProject'
application-label-kn:'AwesomeProject'
application-label-ko:'AwesomeProject'
application-label-ky:'AwesomeProject'
application-label-lo:'AwesomeProject'
application-label-lt:'AwesomeProject'
application-label-lv:'AwesomeProject'
application-label-mk:'AwesomeProject'
application-label-ml:'AwesomeProject'
application-label-mn:'AwesomeProject'
application-label-mr:'AwesomeProject'
application-label-ms:'AwesomeProject'
application-label-my:'AwesomeProject'
application-label-nb:'AwesomeProject'
application-label-ne:'AwesomeProject'
application-label-nl:'AwesomeProject'
application-label-or:'AwesomeProject'
application-label-pa:'AwesomeProject'
application-label-pl:'AwesomeProject'
application-label-pt:'AwesomeProject'
application-label-pt-BR:'AwesomeProject'
application-label-pt-PT:'AwesomeProject'
application-label-ro:'AwesomeProject'
application-label-ru:'AwesomeProject'
application-label-si:'AwesomeProject'
application-label-sk:'AwesomeProject'
application-label-sl:'AwesomeProject'
application-label-sq:'AwesomeProject'
application-label-sr:'AwesomeProject'
application-label-sr-Latn:'AwesomeProject'
application-label-sv:'AwesomeProject'
application-label-sw:'AwesomeProject'
application-label-ta:'AwesomeProject'
application-label-te:'AwesomeProject'
application-label-th:'AwesomeProject'
application-label-tl:'AwesomeProject'
application-label-tr:'AwesomeProject'
application-label-uk:'AwesomeProject'
application-label-ur:'AwesomeProject'
application-label-uz:'AwesomeProject'
application-label-vi:'AwesomeProject'
application-label-zh-CN:'AwesomeProject'
application-label-zh-HK:'AwesomeProject'
application-label-zh-TW:'AwesomeProject'
application-label-zu:'AwesomeProject'
application-icon-160:'res/mipmap-mdpi-v4/ic_launcher.png'
application-icon-240:'res/mipmap-hdpi-v4/ic_launcher.png'
application-icon-320:'res/mipmap-xhdpi-v4/ic_launcher.png'
application-icon-480:'res/mipmap-xxhdpi-v4/ic_launcher.png'
application-icon-640:'res/mipmap-xxxhdpi-v4/ic_launcher.png'
application: label='AwesomeProject' icon='res/mipmap-mdpi-v4/ic_launcher.png'
application-debuggable
launchable-activity: name='com.awesomeproject.MainActivity' label='AwesomeProject' icon=''
uses-permission: name='android.permission.READ_EXTERNAL_STORAGE'
uses-implied-permission: name='android.permission.READ_EXTERNAL_STORAGE' reason='requested WRITE_EXTERNAL_STORAGE'
feature-group: label=''
uses-feature: name='android.hardware.faketouch'
uses-implied-feature: name='android.hardware.faketouch' reason='default feature for all apps'
uses-feature: name='android.hardware.wifi'
uses-implied-feature: name='android.hardware.wifi' reason='requested android.permission.ACCESS_WIFI_STATE permission'
main
other-activities
supports-screens: 'small' 'normal' 'large' 'xlarge'
supports-any-density: 'true'
locales: '--_--' 'af' 'am' 'ar' 'as' 'az' 'be' 'bg' 'bn' 'bs' 'ca' 'cs' 'da' 'de' 'el' 'en-AU' 'en-CA' 'en-GB' 'en-IN' 'en-XC' 'es' 'es-US' 'et' 'eu' 'fa' 'fi' 'fr' 'fr-CA' 'gl' 'gu' 'hi' 'hr' 'hu' 'hy' 'in' 'is' 'it' 'iw' 'ja' 'ka' 'kk' 'km' 'kn' 'ko' 'ky' 'lo' 'lt' 'lv' 'mk' 'ml' 'mn' 'mr' 'ms' 'my' 'nb' 'ne' 'nl' 'or' 'pa' 'pl' 'pt' 'pt-BR' 'pt-PT' 'ro' 'ru' 'si' 'sk' 'sl' 'sq' 'sr' 'sr-Latn' 'sv' 'sw' 'ta' 'te' 'th' 'tl' 'tr' 'uk' 'ur' 'uz' 'vi' 'zh-CN' 'zh-HK' 'zh-TW' 'zu'
densities: '160' '240' '320' '480' '640'
native-code: 'arm64-v8a' 'armeabi-v7a' 'x86' 'x86_64'
23:34:56.059 detox[4821] E selectApp
23:34:56.059 detox[4821] B uninstallApp
args: ()
23:34:56.059 detox[4821] B onBeforeUninstallApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:34:56.059 detox[4821] E onBeforeUninstallApp
23:34:56.059 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "pm list packages com.awesomeproject"
23:34:56.083 detox[4821] i package:com.awesomeproject
package:com.awesomeproject.test
23:34:56.083 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 uninstall com.awesomeproject
23:34:56.390 detox[4821] i Success
23:34:56.391 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "pm list packages com.awesomeproject.test"
23:34:56.481 detox[4821] i package:com.awesomeproject.test
23:34:56.481 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 uninstall com.awesomeproject.test
23:34:56.601 detox[4821] i Success
23:34:56.601 detox[4821] E uninstallApp
23:34:56.601 detox[4821] B selectApp
args: ("default")
23:34:56.602 detox[4821] B terminateApp
args: ()
23:34:56.603 detox[4821] B onBeforeTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:34:56.603 detox[4821] E onBeforeTerminateApp
23:34:56.603 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "am force-stop com.awesomeproject"
23:34:56.697 detox[4821] i
23:34:56.697 detox[4821] B onTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:34:56.698 detox[4821] E onTerminateApp
23:34:56.698 detox[4821] E terminateApp
23:34:56.698 detox[4821] E selectApp
23:34:56.698 detox[4821] B installApp
args: ()
23:34:56.699 detox[4821] i "/Users/arvinh/Library/Android/sdk/build-tools/33.0.0/aapt" dump xmlstrings "/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/debug/app-debug.apk" AndroidManifest.xml
23:34:56.710 detox[4821] i String pool of 62 unique UTF-16 non-sorted strings, 62 entries and 0 styles using 2972 bytes:
String #0: theme
String #1: label
String #2: icon
String #3: name
String #4: debuggable
String #5: exported
String #6: authorities
String #7: grantUriPermissions
String #8: launchMode
String #9: configChanges
String #10: value
String #11: resource
String #12: minSdkVersion
String #13: versionCode
String #14: versionName
String #15: windowSoftInputMode
String #16: targetSdkVersion
String #17: allowBackup
String #18: usesCleartextTraffic
String #19: networkSecurityConfig
String #20: roundIcon
String #21: compileSdkVersion
String #22: compileSdkVersionCodename
String #23: appComponentFactory
String #24: 1.0
String #25: 12
String #26: action
String #27: activity
String #28: android
String #29: android.intent.action.MAIN
String #30: android.intent.category.LAUNCHER
String #31: android.permission.ACCESS_WIFI_STATE
String #32: android.permission.INTERNET
String #33: android.permission.REQUEST_INSTALL_PACKAGES
String #34: android.permission.SYSTEM_ALERT_WINDOW
String #35: android.permission.WRITE_EXTERNAL_STORAGE
String #36: android.support.FILE_PROVIDER_PATHS
String #37: androidx.core.app.CoreComponentFactory
String #38: androidx.emoji2.text.EmojiCompatInitializer
String #39: androidx.lifecycle.ProcessLifecycleInitializer
String #40: androidx.startup
String #41: androidx.startup.InitializationProvider
String #42: application
String #43: category
String #44: cn.reactnative.modules.update.PushyFileProvider
String #45: com.awesomeproject
String #46: com.awesomeproject.MainActivity
String #47: com.awesomeproject.MainApplication
String #48: com.awesomeproject.androidx-startup
String #49: com.awesomeproject.pushy.fileprovider
String #50: com.facebook.react.devsupport.DevSettingsActivity
String #51: http://schemas.android.com/apk/res/android
String #52: intent-filter
String #53: manifest
String #54: meta-data
String #55: package
String #56: platformBuildVersionCode
String #57: platformBuildVersionName
String #58: provider
String #59: pushy_build_time
String #60: uses-permission
String #61: uses-sdk
23:34:56.711 detox[4821] i "/Users/arvinh/Library/Android/sdk/build-tools/33.0.0/aapt" dump xmlstrings "/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk" AndroidManifest.xml
23:34:56.722 detox[4821] i String pool of 41 unique UTF-16 non-sorted strings, 41 entries and 0 styles using 2052 bytes:
String #0: theme
String #1: label
String #2: name
String #3: debuggable
String #4: exported
String #5: targetPackage
String #6: handleProfiling
String #7: functionalTest
String #8: minSdkVersion
String #9: targetSdkVersion
String #10: compileSdkVersion
String #11: compileSdkVersionCodename
String #12: 12
String #13: Tests for com.awesomeproject
String #14: action
String #15: activity
String #16: android
String #17: android.intent.action.MAIN
String #18: android.permission.REORDER_TASKS
String #19: android.test.runner
String #20: androidx.test.core.app.InstrumentationActivityInvoker$BootstrapActivity
String #21: androidx.test.core.app.InstrumentationActivityInvoker$EmptyActivity
String #22: androidx.test.core.app.InstrumentationActivityInvoker$EmptyFloatingActivity
String #23: androidx.test.orchestrator
String #24: androidx.test.runner.AndroidJUnitRunner
String #25: androidx.test.services
String #26: application
String #27: com.awesomeproject
String #28: com.awesomeproject.test
String #29: com.google.android.apps.common.testing.services
String #30: http://schemas.android.com/apk/res/android
String #31: instrumentation
String #32: intent-filter
String #33: manifest
String #34: package
String #35: platformBuildVersionCode
String #36: platformBuildVersionName
String #37: queries
String #38: uses-library
String #39: uses-permission
String #40: uses-sdk
23:34:56.722 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "rm -fr /data/local/tmp/detox"
23:34:56.815 detox[4821] i
23:34:56.815 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "mkdir -p /data/local/tmp/detox"
23:34:56.889 detox[4821] i
23:34:56.890 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 push "/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/debug/app-debug.apk" "/data/local/tmp/detox/Application.apk"
23:34:57.224 detox[4821] i /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/debug/app-debug.apk: 1 file pushed, 0 skipped. 184.7 MB/s (57188071 bytes in 0.295s)
23:34:57.227 detox[4821] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell pm install -r -g -t /data/local/tmp/detox/Application.apk
23:34:57.978 detox[4821] i Success
23:34:57.980 detox[4821] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell pm install -r -g -t /data/local/tmp/detox/Application.apk exited with code #0
23:34:57.980 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 push "/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk" "/data/local/tmp/detox/Test.apk"
23:34:58.037 detox[4821] i /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/android/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk: 1 file pushed, 0 skipped. 428.1 MB/s (7834463 bytes in 0.017s)
23:34:58.037 detox[4821] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell pm install -r -g -t /data/local/tmp/detox/Test.apk
23:34:58.154 detox[4821] i Success
23:34:58.160 detox[4821] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell pm install -r -g -t /data/local/tmp/detox/Test.apk exited with code #0
23:34:58.161 detox[4821] B reverseTcpPort
args: (8081)
23:34:58.161 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 reverse tcp:8081 tcp:8081
23:34:58.177 detox[4821] i
23:34:58.177 detox[4821] E reverseTcpPort
23:34:58.177 detox[4821] E installApp
23:34:58.177 detox[4821] B selectApp
args: ("default")
23:34:58.177 detox[4821] B terminateApp
args: ()
23:34:58.177 detox[4821] B onBeforeTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:34:58.177 detox[4821] E onBeforeTerminateApp
23:34:58.177 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "am force-stop com.awesomeproject"
23:34:58.230 detox[4821] i
23:34:58.230 detox[4821] B onTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:34:58.231 detox[4821] E onTerminateApp
23:34:58.231 detox[4821] E terminateApp
23:34:58.231 detox[4821] E selectApp
23:34:58.231 detox[4821] E set up environment
23:34:58.852 detox[4821] i NativeModule.test.ts is assigned to emulator-5554 (Pixel_3a_API_33_arm64-v8a)
23:34:58.852 detox[4821] B run the tests
23:34:58.852 detox[4821] B onRunDescribeStart
args: ({"name":"ROOT_DESCRIBE_BLOCK"})
23:34:58.853 detox[4821] E onRunDescribeStart
23:34:58.853 detox[4821] B 测试Native模块的方法
23:34:58.853 detox[4821] B onRunDescribeStart
args: ({"name":"测试Native模块的方法"})
23:34:58.853 detox[4821] E onRunDescribeStart
23:34:58.853 detox[4821] B beforeAll
23:34:58.857 detox[4821] B launchApp
args: ()
23:34:58.857 detox[4821] B terminateApp
args: ("com.awesomeproject")
23:34:58.857 detox[4821] B onBeforeTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:34:58.857 detox[4821] E onBeforeTerminateApp
23:34:58.857 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "am force-stop com.awesomeproject"
23:34:58.890 detox[4821] i
23:34:58.890 detox[4821] B onTerminateApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject"})
23:34:58.890 detox[4821] E onTerminateApp
23:34:58.891 detox[4821] E terminateApp
23:34:58.891 detox[4821] B onBeforeLaunchApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject","launchArgs":{"detoxServer":"ws://localhost:56416","detoxSessionId":"f4aa1b39-7f49-6a1e-2016-8fceba85b11b"}})
23:34:58.891 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "date +\"%m-%d %T.000\""
23:34:58.911 detox[4821] i 12-09 14:42:22.000
23:34:58.911 detox[4821] E onBeforeLaunchApp
23:34:58.912 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 reverse tcp:56416 tcp:56416
23:34:58.924 detox[4821] i 56416
23:34:58.924 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "pm list instrumentation"
23:34:58.950 detox[4821] i instrumentation:com.awesomeproject.test/androidx.test.runner.AndroidJUnitRunner (target=com.awesomeproject)
instrumentation:com.testhotupdate.test/android.test.InstrumentationTestRunner (target=com.testhotupdate)
23:34:58.951 detox[4821] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell am instrument -w -r -e detoxServer ws://localhost:56416 -e detoxSessionId f4aa1b39-7f49-6a1e-2016-8fceba85b11b -e debug false com.awesomeproject.test/androidx.test.runner.AndroidJUnitRunner
23:34:59.453 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "ps | grep \"com\.awesomeproject$\""
23:34:59.530 detox[4821] i u0_a186 20479 325 14771216 169660 0 0 S com.awesomeproject
23:34:59.530 detox[4821] B onLaunchApp
args: ({"deviceId":"emulator-5554","bundleId":"com.awesomeproject","launchArgs":{"detoxServer":"ws://localhost:56416","detoxSessionId":"f4aa1b39-7f49-6a1e-2016-8fceba85b11b"},"pid":20479})
23:34:59.532 detox[4821] i starting ADBLogcatRecording
23:34:59.534 detox[4821] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell "logcat -T \"12-09 14:42:22.000\" --pid=20479 -f /sdcard/233455576_0.log"
23:34:59.534 detox[4821] E onLaunchApp
23:34:59.835 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell du /sdcard/233455576_0.log
23:34:59.865 detox[4821] i 4 /sdcard/233455576_0.log
23:34:59.877 detox[4821] i INSTRUMENTATION_STATUS: class=com.awesomeproject.DetoxTest
INSTRUMENTATION_STATUS: current=1
INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
INSTRUMENTATION_STATUS: numtests=1
INSTRUMENTATION_STATUS: stream=
com.awesomeproject.DetoxTest:
INSTRUMENTATION_STATUS: test=runDetoxTests
INSTRUMENTATION_STATUS_CODE: 1
23:35:00.349 detox[4818] B connection :56416<->:56526
23:35:00.353 detox[4818] i get
data: {"messageId":0,"type":"login","params":{"role":"app","sessionId":"f4aa1b39-7f49-6a1e-2016-8fceba85b11b"}}
23:35:00.353 detox[4818] i send
data: {
"messageId": 0,
"type": "loginSuccess",
"params": {
"testerConnected": true,
"appConnected": true
}
}
23:35:00.353 detox[4818] i app joined session f4aa1b39-7f49-6a1e-2016-8fceba85b11b
23:35:00.353 detox[4818] i send
data: {
"type": "appConnected"
}
23:35:00.354 detox[4821] i get message
data: {"type":"appConnected"}
23:35:00.355 detox[4818] i get
data: {"type":"isReady","params":{},"messageId":-1000}
23:35:00.355 detox[4818] i send
data: {
"type": "isReady",
"params": {},
"messageId": -1000
}
23:35:00.355 detox[4821] i send message
data: {"type":"isReady","params":{},"messageId":-1000}
23:35:10.355 detox[4821] i send message
data: {"type":"currentStatus","params":{},"messageId":1}
23:35:10.356 detox[4818] i get
data: {"type":"currentStatus","params":{},"messageId":1}
23:35:10.356 detox[4818] i send
data: {
"type": "currentStatus",
"params": {},
"messageId": 1
}
23:35:15.358 detox[4821] i Failed to execute the current status query.
23:36:58.856 detox[4821] B onHookFailure
args: ({"error":"Exceeded timeout of 120000 ms for a hook.\nAdd a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.","hook":"beforeAll"})
23:36:58.856 detox[4821] E onHookFailure
23:36:58.857 detox[4821] E beforeAll
error: 'Exceeded timeout of 120000 ms for a hook.\n' +
'Add a timeout value to this test to increase the timeout, if this is a long-running test. See https://jestjs.io/docs/api#testname-fn-timeout.'
23:36:58.858 detox[4821] B setLocalHashInfo
23:36:58.858 detox[4821] i 测试Native模块的方法: setLocalHashInfo
23:36:58.859 detox[4821] E setLocalHashInfo
23:36:58.859 detox[4821] i 测试Native模块的方法: setLocalHashInfo [FAIL]
23:36:58.867 detox[4821] B getLocalHashInfo
23:36:58.867 detox[4821] i 测试Native模块的方法: getLocalHashInfo
23:36:58.868 detox[4821] E getLocalHashInfo
23:36:58.868 detox[4821] i 测试Native模块的方法: getLocalHashInfo [FAIL]
23:36:58.868 detox[4821] B setUuid
23:36:58.868 detox[4821] i 测试Native模块的方法: setUuid
23:36:58.868 detox[4821] E setUuid
23:36:58.868 detox[4821] i 测试Native模块的方法: setUuid [FAIL]
23:36:58.869 detox[4821] B setBlockUpdate
23:36:58.869 detox[4821] i 测试Native模块的方法: setBlockUpdate
23:36:58.869 detox[4821] E setBlockUpdate
23:36:58.869 detox[4821] i 测试Native模块的方法: setBlockUpdate [FAIL]
23:36:58.869 detox[4821] B setNeedUpdate
23:36:58.869 detox[4821] i 测试Native模块的方法: setNeedUpdate
23:36:58.869 detox[4821] E setNeedUpdate
23:36:58.869 detox[4821] i 测试Native模块的方法: setNeedUpdate [FAIL]
23:36:58.870 detox[4821] B markSuccess
23:36:58.870 detox[4821] i 测试Native模块的方法: markSuccess
23:36:58.870 detox[4821] E markSuccess
23:36:58.870 detox[4821] i 测试Native模块的方法: markSuccess [FAIL]
23:36:58.871 detox[4821] B downloadPatchFromPpk
23:36:58.871 detox[4821] i 测试Native模块的方法: downloadPatchFromPpk
23:36:58.871 detox[4821] E downloadPatchFromPpk
23:36:58.871 detox[4821] i 测试Native模块的方法: downloadPatchFromPpk [FAIL]
23:36:58.871 detox[4821] B downloadPatchFromPackage
23:36:58.871 detox[4821] i 测试Native模块的方法: downloadPatchFromPackage
23:36:58.871 detox[4821] E downloadPatchFromPackage
23:36:58.871 detox[4821] i 测试Native模块的方法: downloadPatchFromPackage [FAIL]
23:36:58.872 detox[4821] B downloadFullUpdate
23:36:58.872 detox[4821] i 测试Native模块的方法: downloadFullUpdate
23:36:58.872 detox[4821] E downloadFullUpdate
23:36:58.872 detox[4821] i 测试Native模块的方法: downloadFullUpdate [FAIL]
23:36:58.872 detox[4821] B downloadAndInstallApk
23:36:58.872 detox[4821] i 测试Native模块的方法: downloadAndInstallApk
23:36:58.872 detox[4821] E downloadAndInstallApk
23:36:58.872 detox[4821] i 测试Native模块的方法: downloadAndInstallApk [FAIL]
23:36:58.873 detox[4821] B onRunDescribeFinish
args: ({"name":"测试Native模块的方法"})
23:36:58.873 detox[4821] E onRunDescribeFinish
23:36:58.873 detox[4821] E 测试Native模块的方法
23:36:58.873 detox[4821] B onRunDescribeFinish
args: ({"name":"ROOT_DESCRIBE_BLOCK"})
23:36:58.873 detox[4821] E onRunDescribeFinish
23:36:58.873 detox[4821] E run the tests
23:36:58.899 detox[4821] B tear down environment
23:36:58.900 detox[4821] B onBeforeCleanup
args: ()
23:36:58.902 detox[4821] i saving ADBLogcatRecording to: artifacts/android.emu.debug.2023-04-01 15-34-53Z/emulator-5554 2023-04-01 15-36-58Z.startup.log
23:36:58.902 detox[4821] i stopping ADBLogcatRecording
23:36:58.902 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "date +\"%m-%d %T.000\""
23:36:58.958 detox[4821] i 12-09 14:44:22.000
23:36:58.960 detox[4821] i sending SIGINT to: /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell logcat -T "12-09 14:42:22.000" --pid=20479 -f /sdcard/233455576_0.log
23:36:58.961 detox[4821] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell "logcat -T \"12-09 14:42:22.000\" --pid=20479 -f /sdcard/233455576_0.log" terminated with SIGINT
23:36:58.961 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 pull "/sdcard/233455576_0.log" "artifacts/android.emu.debug.2023-04-01 15-34-53Z/emulator-5554 2023-04-01 15-36-58Z.startup.log"
23:36:58.980 detox[4821] i /sdcard/233455576_0.log: 1 file pulled, 0 skipped. 20.7 MB/s (53248 bytes in 0.002s)
23:36:58.980 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 shell "rm \"/sdcard/233455576_0.log\""
23:36:59.018 detox[4821] i
23:36:59.019 detox[4821] i saving FileArtifact to: artifacts/android.emu.debug.2023-04-01 15-34-53Z/detox_pid_4821.json.log { append: true }
23:36:59.019 detox[4821] i saving FileArtifact to: artifacts/android.emu.debug.2023-04-01 15-34-53Z/detox_pid_4821.log { append: true }
23:36:59.019 detox[4821] E onBeforeCleanup
23:36:59.019 detox[4821] i The app has not responded to the network requests below:
(id = 1) currentStatus: {}
(id = -1000) isReady: {}
Unresponded network requests might result in timeout errors in Detox tests.
23:36:59.020 detox[4821] i send message
data: {"type":"cleanup","params":{"stopRunner":true},"messageId":-49642}
23:36:59.021 detox[4818] i get
data: {"type":"cleanup","params":{"stopRunner":true},"messageId":-49642}
23:36:59.022 detox[4818] i send
data: {
"type": "cleanup",
"params": {
"stopRunner": true
},
"messageId": -49642
}
23:37:04.022 detox[4821] i The pending request #-49642 ("cleanup") has been rejected due to the following error:
The tester has not received a response within 5000ms timeout to the message:
Cleanup {
type: 'cleanup',
params: [Object],
messageId: -49642
}
23:37:04.027 detox[4818] i tester exited session f4aa1b39-7f49-6a1e-2016-8fceba85b11b
23:37:04.027 detox[4818] i send
data: {
"type": "testerDisconnected",
"messageId": -1
}
23:37:04.028 detox[4818] E connection :56416<->:56425
23:37:04.028 detox[4821] i sending SIGINT to: /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell am instrument -w -r -e detoxServer ws://localhost:56416 -e detoxSessionId f4aa1b39-7f49-6a1e-2016-8fceba85b11b -e debug false com.awesomeproject.test/androidx.test.runner.AndroidJUnitRunner
23:37:04.030 detox[4821] i /Users/arvinh/Library/Android/sdk/platform-tools/adb -s emulator-5554 shell am instrument -w -r -e detoxServer ws://localhost:56416 -e detoxSessionId f4aa1b39-7f49-6a1e-2016-8fceba85b11b -e debug false com.awesomeproject.test/androidx.test.runner.AndroidJUnitRunner terminated with SIGINT
23:37:04.030 detox[4821] i An error occurred while waiting for the app to become ready. Waiting for disconnection...
error: Failed to run application on the device
HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.
23:37:04.030 detox[4821] i "/Users/arvinh/Library/Android/sdk/platform-tools/adb" -s emulator-5554 reverse --remove tcp:56416
23:37:04.034 detox[4821] B free
args: ({"adbName":"emulator-5554"}, {"shutdown":false})
23:37:04.036 detox[4821] E free
23:37:04.036 detox[4821] E tear down environment
23:37:04.036 detox[4821] E e2e/NativeModule.test.ts
23:37:04.041 detox[4821] i dispatching event to primary-4818 /tmp/detox.primary-4818 : reportTestResults , {
testResults: [
{
success: false,
testFilePath: '/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/e2e/NativeModule.test.ts',
testExecError: undefined,
isPermanentFailure: false
}
]
}
23:37:04.042 detox[4818] i received event of : reportTestResults {
testResults: [
{
success: false,
testFilePath: '/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/e2e/NativeModule.test.ts',
isPermanentFailure: false
}
]
}
23:37:04.042 detox[4818] i dispatching event to socket : reportTestResultsDone {
testResults: [
{
success: false,
testFilePath: '/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/e2e/NativeModule.test.ts',
isPermanentFailure: false
}
]
}
23:37:04.042 detox[4818] i broadcasting event to all known sockets listening to /tmp/detox.primary-4818 : sessionStateUpdate {
testResults: [
{
success: false,
testFilePath: '/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/e2e/NativeModule.test.ts',
isPermanentFailure: false
}
]
}
23:37:04.042 detox[4821] i ## received events ##
23:37:04.043 detox[4821] i detected event reportTestResultsDone {
testResults: [
{
success: false,
testFilePath: '/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/e2e/NativeModule.test.ts',
isPermanentFailure: false
}
]
}
23:37:04.045 detox[4818] i socket disconnected secondary-4821
23:37:04.045 detox[4821] i connection closed primary-4818 /tmp/detox.primary-4818 0 tries remaining of 0
23:37:04.045 detox[4821] i secondary-4821 exceeded connection rety amount of or stopRetrying flag set.
23:37:04.064 detox[4821] i
23:37:04.113 detox[4818] E Command failed with exit code = 1:
jest --config e2e/jest.config.js
23:37:04.114 detox[4818] i Detox server has been closed gracefully
23:37:04.115 detox[4818] i app exited session f4aa1b39-7f49-6a1e-2016-8fceba85b11b
23:37:04.115 detox[4818] E connection :56416<->:56526
23:37:04.115 detox[4818] E ../../node_modules/.bin/detox test --configuration android.emu.debug --headless --record-logs all

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,271 @@
--------- beginning of main
12-09 14:42:23.010 20479 20479 I .awesomeproject: Late-enabling -Xcheck:jni
12-09 14:42:23.052 20479 20479 D CompatibilityChangeReporter: Compat change id reported: 171979766; UID 10186; state: ENABLED
--------- beginning of system
12-09 14:42:23.057 20479 20479 W ActivityThread: Package uses different ABI(s) than its instrumentation: package[com.awesomeproject]: arm64-v8a, null instrumentation[com.awesomeproject.test]: null, null
12-09 14:42:23.058 20479 20479 W .awesomeproject: ClassLoaderContext classpath size mismatch. expected=0, found=1 (PCL[] | PCL[/system/framework/android.test.runner.jar*2256426886])
12-09 14:42:23.058 20479 20479 W .awesomeproject: ClassLoaderContext classpath size mismatch. expected=0, found=2 (PCL[] | PCL[/system/framework/android.test.runner.jar*2256426886:/system/framework/android.test.mock.jar*849501951])
12-09 14:42:23.058 20479 20479 W ziparchive: Unable to open '/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.dm': No such file or directory
12-09 14:42:23.058 20479 20479 W ziparchive: Unable to open '/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.dm': No such file or directory
12-09 14:42:23.118 20479 20479 W ziparchive: Unable to open '/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.dm': No such file or directory
12-09 14:42:23.118 20479 20479 W ziparchive: Unable to open '/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.dm': No such file or directory
12-09 14:42:23.190 20479 20479 V GraphicsEnvironment: ANGLE Developer option for 'com.awesomeproject' set to: 'default'
12-09 14:42:23.190 20479 20479 V GraphicsEnvironment: ANGLE GameManagerService for com.awesomeproject: false
12-09 14:42:23.190 20479 20479 V GraphicsEnvironment: Neither updatable production driver nor prerelease driver is supported.
12-09 14:42:23.191 20479 20479 D ApplicationLoaders: Returning zygote-cached class loader: /system/framework/android.test.base.jar
12-09 14:42:23.192 20479 20479 D ApplicationLoaders: Returning zygote-cached class loader: /system/framework/android.test.base.jar
12-09 14:42:23.192 20479 20479 W .awesomeproject: ClassLoaderContext shared library size mismatch. Expected=0, found=2 (PCL[] | PCL[]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]})
12-09 14:42:23.193 20479 20479 W .awesomeproject: ClassLoaderContext shared library size mismatch. Expected=0, found=3 (PCL[] | PCL[]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]#PCL[/system/framework/android.test.runner.jar*2256426886]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]}};PCL[/system/framework/android.test.runner.jar*2256426886:/system/framework/android.test.mock.jar*849501951:/system/framework/android.test.base.jar*1628045882:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk*3488107038:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk!classes2.dex*3802597924:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk!classes3.dex*1113348705:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk!classes4.dex*1609470516:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk*4280308006:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes2.dex*2341650508:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes3.dex*2242498629:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes4.dex*1939924932:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes5.dex*3428091317:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes6.dex*1896867339:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes7.dex*616740603])
12-09 14:42:23.193 20479 20479 W .awesomeproject: ClassLoaderContext classpath size mismatch. expected=0, found=1 (PCL[] | PCL[/system/framework/android.test.runner.jar*2256426886]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]#PCL[/system/framework/android.test.runner.jar*2256426886]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]}};PCL[/system/framework/android.test.runner.jar*2256426886:/system/framework/android.test.mock.jar*849501951:/system/framework/android.test.base.jar*1628045882:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk*3488107038:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk!classes2.dex*3802597924:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk!classes3.dex*1113348705:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk!classes4.dex*1609470516:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk*4280308006:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes2.dex*2341650508:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes3.dex*2242498629:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes4.dex*1939924932:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes5.dex*3428091317:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes6.dex*1896867339:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes7.dex*616740603])
12-09 14:42:23.194 20479 20479 W .awesomeproject: ClassLoaderContext classpath size mismatch. expected=0, found=2 (PCL[] | PCL[/system/framework/android.test.runner.jar*2256426886:/system/framework/android.test.mock.jar*849501951]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]#PCL[/system/framework/android.test.runner.jar*2256426886]{PCL[/system/framework/android.test.base.jar*1628045882]#PCL[/system/framework/android.test.mock.jar*849501951]}};PCL[/system/framework/android.test.runner.jar*2256426886:/system/framework/android.test.mock.jar*849501951:/system/framework/android.test.base.jar*1628045882:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk*3488107038:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk!classes2.dex*3802597924:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk!classes3.dex*1113348705:/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk!classes4.dex*1609470516:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk*4280308006:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes2.dex*2341650508:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes3.dex*2242498629:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes4.dex*1939924932:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes5.dex*3428091317:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes6.dex*1896867339:/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.apk!classes7.dex*616740603])
12-09 14:42:23.194 20479 20479 W ziparchive: Unable to open '/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.dm': No such file or directory
12-09 14:42:23.194 20479 20479 W ziparchive: Unable to open '/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.dm': No such file or directory
12-09 14:42:23.244 20479 20479 W ziparchive: Unable to open '/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.dm': No such file or directory
12-09 14:42:23.244 20479 20479 W ziparchive: Unable to open '/data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/base.dm': No such file or directory
12-09 14:42:23.315 20479 20479 D NetworkSecurityConfig: Using Network Security Config from resource network_security_config debugBuild: true
12-09 14:42:23.316 20479 20479 D NetworkSecurityConfig: Using Network Security Config from resource network_security_config debugBuild: true
12-09 14:42:23.320 20479 20479 I MonitoringInstr: Instrumentation started!
12-09 14:42:23.322 20479 20479 V TestEventClient: No service name argument was given (testDiscoveryService, testRunEventService or orchestratorService)
12-09 14:42:23.324 20479 20479 V fb-UnpackingSoSource: locked dso store /data/user/0/com.awesomeproject/lib-main
12-09 14:42:23.324 20479 20479 V fb-UnpackingSoSource: deps mismatch on deps store: regenerating
12-09 14:42:23.324 20479 20479 V fb-UnpackingSoSource: so store dirty: regenerating
12-09 14:42:23.334 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libc++_shared.so: deferring to libdir
12-09 14:42:23.335 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libevent-2.1.so: deferring to libdir
12-09 14:42:23.335 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libevent_core-2.1.so: deferring to libdir
12-09 14:42:23.335 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libevent_extra-2.1.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libfabricjni.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libfb.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libfbjni.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libflipper.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libfolly_runtime.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libglog.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libglog_init.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libimagepipeline.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libjsc.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libjscexecutor.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libjsi.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libjsijniprofiler.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libjsinspector.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/liblogger.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libmapbufferjni.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libnative-filters.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libnative-imagetranscoder.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_codegen_rncore.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_config.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_debug.so: deferring to libdir
12-09 14:42:23.336 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_nativemodule_core.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_animations.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_attributedstring.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_componentregistry.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_core.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_debug.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_graphics.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_imagemanager.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_leakchecker.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_mapbuffer.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_mounting.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_runtimescheduler.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_scheduler.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_telemetry.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_templateprocessor.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_textlayoutmanager.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_render_uimanager.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreact_utils.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreactnativeblob.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreactnativejni.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libreactperfloggerjni.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librnupdate.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_image.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_root.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_scrollview.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_text.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_textinput.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_unimplementedview.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/librrc_view.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libruntimeexecutor.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libturbomodulejsijni.so: deferring to libdir
12-09 14:42:23.337 20479 20479 D ApkSoSource: not allowing consideration of lib/arm64-v8a/libyoga.so: deferring to libdir
12-09 14:42:23.337 20479 20479 V fb-UnpackingSoSource: regenerating DSO store com.facebook.soloader.ApkSoSource
12-09 14:42:23.337 20479 20479 V fb-UnpackingSoSource: Finished regenerating DSO store com.facebook.soloader.ApkSoSource
12-09 14:42:23.337 20479 20479 V fb-UnpackingSoSource: starting syncer worker
12-09 14:42:23.340 20479 20479 V fb-UnpackingSoSource: releasing dso store lock for /data/user/0/com.awesomeproject/lib-main (from syncer thread)
12-09 14:42:23.340 20479 20479 V fb-UnpackingSoSource: not releasing dso store lock for /data/user/0/com.awesomeproject/lib-main (syncer thread started)
12-09 14:42:23.343 20479 20479 D SoLoader: libjscexecutor.so not found on /data/data/com.awesomeproject/lib-main
12-09 14:42:23.343 20479 20479 D SoLoader: libjscexecutor.so found on /data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/lib/arm64
12-09 14:42:23.343 20479 20479 D SoLoader: Not resolving dependencies for libjscexecutor.so
12-09 14:42:23.350 20479 20479 D JavaScriptCore.Version: 250230.2.1
12-09 14:42:23.375 20479 20501 D SoLoader: libfbjni.so not found on /data/data/com.awesomeproject/lib-main
12-09 14:42:23.376 20479 20501 D SoLoader: libfbjni.so found on /data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/lib/arm64
12-09 14:42:23.376 20479 20501 D SoLoader: Not resolving dependencies for libfbjni.so
12-09 14:42:23.376 20479 20501 D SoLoader: libflipper.so not found on /data/data/com.awesomeproject/lib-main
12-09 14:42:23.376 20479 20501 D SoLoader: libflipper.so found on /data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/lib/arm64
12-09 14:42:23.376 20479 20501 D SoLoader: Not resolving dependencies for libflipper.so
12-09 14:42:23.392 20479 20506 D TrafficStats: tagSocket(94) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:23.394 20479 20505 D TrafficStats: tagSocket(73) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:23.417 20479 20479 W .awesomeproject: Accessing hidden field Landroid/view/View;->mKeyedTags:Landroid/util/SparseArray; (unsupported, reflection, allowed)
12-09 14:42:23.419 20479 20479 W .awesomeproject: Accessing hidden field Landroid/view/View;->mListenerInfo:Landroid/view/View$ListenerInfo; (unsupported, reflection, allowed)
12-09 14:42:23.419 20479 20479 W .awesomeproject: Accessing hidden field Landroid/view/View$ListenerInfo;->mOnClickListener:Landroid/view/View$OnClickListener; (unsupported, reflection, allowed)
12-09 14:42:23.421 20479 20479 I flipper : flipper: FlipperClient::addPlugin Inspector
12-09 14:42:23.421 20479 20479 I flipper : flipper: FlipperClient::addPlugin React
12-09 14:42:23.421 20479 20479 I flipper : flipper: FlipperClient::addPlugin Databases
12-09 14:42:23.421 20479 20479 I flipper : flipper: FlipperClient::addPlugin Preferences
12-09 14:42:23.421 20479 20479 I flipper : flipper: FlipperClient::addPlugin CrashReporter
12-09 14:42:23.422 20479 20479 I flipper : flipper: FlipperClient::addPlugin Network
12-09 14:42:23.433 20479 20496 I UsageTrackerFacilitator: Usage tracking enabled
12-09 14:42:23.434 20479 20496 I TestRequestBuilder: Scanning classpath to find tests in paths [/data/app/~~R6aC-CFkvZ4rMQCulaSKZw==/com.awesomeproject.test-CZ6b6zb4B0IQtWld4WWUew==/base.apk]
12-09 14:42:23.435 20479 20496 W .awesomeproject: Opening an oat file without a class loader. Are you using the deprecated DexFile APIs?
12-09 14:42:23.526 20479 20500 W System.err: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
12-09 14:42:23.607 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/AccessibilityHierarchyCheckResult; annotation class 6432
12-09 14:42:23.607 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/AccessibilityHierarchyCheckResult; annotation class 6432
12-09 14:42:23.607 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/AccessibilityHierarchyCheckResult; annotation class 6432
12-09 14:42:23.607 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/AccessibilityHierarchyCheckResult; annotation class 6432
12-09 14:42:23.608 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/AccessibilityViewCheckResult; annotation class 6432
12-09 14:42:23.608 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/ClusteringUtils; annotation class 6432
12-09 14:42:23.608 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/Question; annotation class 6432
12-09 14:42:23.610 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/replacements/TextUtils; annotation class 6431
12-09 14:42:23.611 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:42:23.611 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:42:23.611 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:42:23.612 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:42:23.612 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElementAndroid; annotation class 6432
12-09 14:42:23.612 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElementAndroid; annotation class 6432
12-09 14:42:23.612 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElementAndroid; annotation class 6432
12-09 14:42:23.612 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElementAndroid; annotation class 6432
12-09 14:42:23.612 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:42:23.612 20479 20496 W .awesomeproject: Unable to resolve Lcom/google/android/apps/common/testing/accessibility/framework/uielement/ViewHierarchyElement; annotation class 6432
12-09 14:42:23.627 20479 20500 W System.err: SLF4J: Defaulting to no-operation (NOP) logger implementation
12-09 14:42:23.631 20479 20500 W System.err: SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
12-09 14:42:23.675 20479 20526 D TrafficStats: tagSocket(96) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:23.802 20479 20496 D TestExecutor: Adding listener androidx.test.internal.runner.listener.LogRunListener
12-09 14:42:23.803 20479 20496 D TestExecutor: Adding listener androidx.test.internal.runner.listener.InstrumentationResultPrinter
12-09 14:42:23.803 20479 20496 D TestExecutor: Adding listener androidx.test.internal.runner.listener.ActivityFinisherRunListener
12-09 14:42:23.803 20479 20496 I TestRunner: run started: 1 tests
12-09 14:42:23.804 20479 20496 I TestRunner: started: runDetoxTests(com.awesomeproject.DetoxTest)
12-09 14:42:23.808 20479 20496 D EventInjectionStrategy: Creating injection strategy with input manager.
12-09 14:42:23.808 20479 20496 W .awesomeproject: Accessing hidden method Landroid/hardware/input/InputManager;->getInstance()Landroid/hardware/input/InputManager; (unsupported, reflection, allowed)
12-09 14:42:23.808 20479 20496 W .awesomeproject: Accessing hidden method Landroid/hardware/input/InputManager;->injectInputEvent(Landroid/view/InputEvent;I)Z (unsupported, reflection, allowed)
12-09 14:42:23.808 20479 20496 W .awesomeproject: Accessing hidden field Landroid/hardware/input/InputManager;->INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH:I (unsupported, reflection, allowed)
12-09 14:42:23.810 20479 20496 W .awesomeproject: Accessing hidden field Ljava/lang/reflect/Field;->accessFlags:I (unsupported, reflection, allowed)
12-09 14:42:23.832 20479 20531 D libEGL : loaded /vendor/lib64/egl/libEGL_emulation.so
12-09 14:42:23.841 20479 20531 D libEGL : loaded /vendor/lib64/egl/libGLESv1_CM_emulation.so
12-09 14:42:23.881 20479 20479 D LifecycleMonitor: Lifecycle status change: com.awesomeproject.MainActivity@10bff7d in: PRE_ON_CREATE
12-09 14:42:23.905 20479 20479 W .awesomeproject: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (unsupported, reflection, allowed)
12-09 14:42:23.907 20479 20479 W .awesomeproject: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (unsupported, reflection, allowed)
12-09 14:42:23.908 20479 20479 D LifecycleMonitor: Lifecycle status change: com.awesomeproject.MainActivity@10bff7d in: CREATED
12-09 14:42:23.908 20479 20479 D LifecycleMonitor: Lifecycle status change: com.awesomeproject.MainActivity@10bff7d in: STARTED
12-09 14:42:23.910 20479 20531 D libEGL : loaded /vendor/lib64/egl/libGLESv2_emulation.so
12-09 14:42:23.911 20479 20479 D LifecycleMonitor: Lifecycle status change: com.awesomeproject.MainActivity@10bff7d in: RESUMED
12-09 14:42:23.919 20479 20479 W unknown:ReactNative: Packager connection already open, nooping.
12-09 14:42:23.931 20479 20534 D TrafficStats: tagSocket(102) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:23.972 20479 20530 D HostConnection: createUnique: call
12-09 14:42:23.974 20479 20530 D HostConnection: HostConnection::get() New Host Connection established 0xb4000077d3ba7910, tid 20530
12-09 14:42:23.992 20479 20530 D HostConnection: HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_native_sync_v2 ANDROID_EMU_native_sync_v3 ANDROID_EMU_native_sync_v4 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV_Cache ANDROID_EMU_vulkan_ignored_handles ANDROID_EMU_has_shared_slots_host_memory_allocator ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit ANDROID_EMU_vulkan_queue_submit_with_commands ANDROID_EMU_sync_buffer_data ANDROID_EMU_read_color_buffer_dma ANDROID_EMU_hwc_multi_configs GL_OES_EGL_image_external_essl3 GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_3_0
12-09 14:42:23.995 20479 20530 W OpenGLRenderer: Failed to choose config with EGL_SWAP_BEHAVIOR_PRESERVED, retrying without...
12-09 14:42:23.995 20479 20530 W OpenGLRenderer: Failed to initialize 101010-2 format, error = EGL_SUCCESS
12-09 14:42:24.005 20479 20530 D EGL_emulation: eglCreateContext: 0xb4000077d3ba6c50: maj 3 min 0 rcv 3
12-09 14:42:24.008 20479 20530 D EGL_emulation: eglMakeCurrent: 0xb4000077d3ba6c50: ver 3 0 (tinfo 0x79f25a4080) (first time)
12-09 14:42:24.020 20479 20530 I Gralloc4: mapper 4.x is not supported
12-09 14:42:24.023 20479 20530 D HostConnection: createUnique: call
12-09 14:42:24.023 20479 20530 D HostConnection: HostConnection::get() New Host Connection established 0xb4000077d3ba7a90, tid 20530
12-09 14:42:24.024 20479 20530 D goldfish-address-space: allocate: Ask for block of size 0x100
12-09 14:42:24.024 20479 20530 D goldfish-address-space: allocate: ioctl allocate returned offset 0x1efff8000 size 0x8000
12-09 14:42:24.024 20479 20530 W Gralloc4: allocator 4.x is not supported
12-09 14:42:24.028 20479 20530 D HostConnection: HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_native_sync_v2 ANDROID_EMU_native_sync_v3 ANDROID_EMU_native_sync_v4 ANDROID_EMU_dma_v1 ANDROID_EMU_direct_mem ANDROID_EMU_host_composition_v1 ANDROID_EMU_host_composition_v2 ANDROID_EMU_vulkan ANDROID_EMU_deferred_vulkan_commands ANDROID_EMU_vulkan_null_optional_strings ANDROID_EMU_vulkan_create_resources_with_requirements ANDROID_EMU_YUV_Cache ANDROID_EMU_vulkan_ignored_handles ANDROID_EMU_has_shared_slots_host_memory_allocator ANDROID_EMU_vulkan_free_memory_sync ANDROID_EMU_vulkan_shader_float16_int8 ANDROID_EMU_vulkan_async_queue_submit ANDROID_EMU_vulkan_queue_submit_with_commands ANDROID_EMU_sync_buffer_data ANDROID_EMU_read_color_buffer_dma ANDROID_EMU_hwc_multi_configs GL_OES_EGL_image_external_essl3 GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_gles_max_version_3_0
12-09 14:42:24.061 20479 20530 W Parcel : Expecting binder but got null!
12-09 14:42:24.076 20479 20479 D CompatibilityChangeReporter: Compat change id reported: 210923482; UID 10186; state: DISABLED
12-09 14:42:24.076 20479 20479 D CompatibilityChangeReporter: Compat change id reported: 37756858; UID 10186; state: ENABLED
12-09 14:42:24.110 20479 20534 W unknown:ReactNative: Could not parse DebugServerException from: {"originModulePath":"/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js","targetModuleName":"react-native-update","message":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m","errors":[{"description":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m"}],"name":"Error","stack":"Error: Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m\n at ModuleResolver.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:158:15)\n at DependencyGraph.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph.js:231:43)\n at Object.resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/lib/transformHelpers.js:129:24)\n at resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/DeltaBundler/traverseDependencies.js:396:33)\n at /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: org.json.JSONException: No value for filename
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at org.json.JSONObject.get(JSONObject.java:398)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at org.json.JSONObject.getString(JSONObject.java:559)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at com.facebook.react.common.DebugServerException.parse(DebugServerException.java:77)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processBundleResult(BundleDownloader.java:251)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$200(BundleDownloader.java:34)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$2.onChunkComplete(BundleDownloader.java:193)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.emitChunk(MultipartStreamReader.java:70)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.readAllParts(MultipartStreamReader.java:152)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processMultipartResponse(BundleDownloader.java:177)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$100(BundleDownloader.java:34)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$1.onResponse(BundleDownloader.java:147)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
12-09 14:42:24.115 20479 20534 W unknown:ReactNative: at java.lang.Thread.run(Thread.java:1012)
12-09 14:42:24.120 20479 20530 W Parcel : Expecting binder but got null!
12-09 14:42:24.142 20479 20534 E unknown:ReactNative: Unable to download JS bundle
12-09 14:42:24.142 20479 20534 E unknown:ReactNative: com.facebook.react.common.DebugServerException: The development server returned response error code: 500
12-09 14:42:24.142 20479 20534 E unknown:ReactNative:
12-09 14:42:24.142 20479 20534 E unknown:ReactNative: URL: http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.awesomeproject&modulesOnly=false&runModule=true
12-09 14:42:24.142 20479 20534 E unknown:ReactNative:
12-09 14:42:24.142 20479 20534 E unknown:ReactNative: Body:
12-09 14:42:24.144 20479 20534 E unknown:ReactNative: {"originModulePath":"/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js","targetModuleName":"react-native-update","message":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m","errors":[{"description":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m"}],"name":"Error","stack":"Error: Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m\n at ModuleResolver.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:158:15)\n at DependencyGraph.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph.js:231:43)\n at Object.resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/lib/transformHelpers.js:129:24)\n at resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/DeltaBundler/traverseDependencies.js:396:33)\n at /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/DeltaBundler/traverseDependencies
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processBundleResult(BundleDownloader.java:264)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$200(BundleDownloader.java:34)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$2.onChunkComplete(BundleDownloader.java:193)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.emitChunk(MultipartStreamReader.java:70)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.readAllParts(MultipartStreamReader.java:152)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processMultipartResponse(BundleDownloader.java:177)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$100(BundleDownloader.java:34)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$1.onResponse(BundleDownloader.java:147)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
12-09 14:42:24.146 20479 20534 E unknown:ReactNative: at java.lang.Thread.run(Thread.java:1012)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: Exception in native call
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: com.facebook.react.common.DebugServerException: The development server returned response error code: 500
12-09 14:42:24.156 20479 20479 E unknown:ReactNative:
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: URL: http://localhost:8081/index.bundle?platform=android&dev=true&minify=false&app=com.awesomeproject&modulesOnly=false&runModule=true
12-09 14:42:24.156 20479 20479 E unknown:ReactNative:
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: Body:
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: {"originModulePath":"/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js","targetModuleName":"react-native-update","message":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m","errors":[{"description":"Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m"}],"name":"Error","stack":"Error: Unable to resolve module react-native-update from /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/src/index.js: react-native-update could not be found within the project or in these directories:\n node_modules\n ../../node_modules\n ../../../../../node_modules\n\u001b[0m \u001b[90m 23 |\u001b[39m downloadAndInstallApk\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 24 |\u001b[39m cInfo\u001b[33m,\u001b[39m\u001b[0m\n\u001b[0m\u001b[31m\u001b[1m>\u001b[22m\u001b[39m\u001b[90m 25 |\u001b[39m } \u001b[36mfrom\u001b[39m \u001b[32m'react-native-update'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m |\u001b[39m \u001b[31m\u001b[1m^\u001b[22m\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 26 |\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 27 |\u001b[39m \u001b[36mimport\u001b[39m \u001b[33mTestConsole\u001b[39m \u001b[36mfrom\u001b[39m \u001b[32m'./TestConsole'\u001b[39m\u001b[33m;\u001b[39m\u001b[0m\n\u001b[0m \u001b[90m 28 |\u001b[39m\u001b[0m\n at ModuleResolver.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph/ModuleResolution.js:158:15)\n at DependencyGraph.resolveDependency (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/node-haste/DependencyGraph.js:231:43)\n at Object.resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/lib/transformHelpers.js:129:24)\n at resolve (/Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/DeltaBundler/traverseDependencies.js:396:33)\n at /Users/arvinh/Desktop/wooza/react-native-pushy/Example/testHotUpdate/node_modules/metro/src/DeltaBundler/traverseDependencies
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processBundleResult(BundleDownloader.java:264)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$200(BundleDownloader.java:34)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$2.onChunkComplete(BundleDownloader.java:193)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.emitChunk(MultipartStreamReader.java:70)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at com.facebook.react.devsupport.MultipartStreamReader.readAllParts(MultipartStreamReader.java:152)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.processMultipartResponse(BundleDownloader.java:177)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader.access$100(BundleDownloader.java:34)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at com.facebook.react.devsupport.BundleDownloader$1.onResponse(BundleDownloader.java:147)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
12-09 14:42:24.156 20479 20479 E unknown:ReactNative: at java.lang.Thread.run(Thread.java:1012)
12-09 14:42:24.158 20479 20479 D CompatibilityChangeReporter: Compat change id reported: 171228096; UID 10186; state: ENABLED
12-09 14:42:24.220 20479 20530 W Parcel : Expecting binder but got null!
12-09 14:42:24.256 20479 20496 I Detox : Detox server connection details: url=ws://localhost:56416, sessionId=f4aa1b39-7f49-6a1e-2016-8fceba85b11b
12-09 14:42:24.260 20479 20542 I DetoxDispatcher: Handling action '_init' (ID #0)...
12-09 14:42:24.261 20479 20542 I Detox : Connecting to server...
12-09 14:42:24.261 20479 20542 I DetoxWSClient: At connectToServer
12-09 14:42:24.272 20479 20544 D TrafficStats: tagSocket(146) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:24.278 20479 20544 D DetoxWSClient: At onOpen
12-09 14:42:24.278 20479 20544 I DetoxWSClient: Sending out action 'login' (ID #0)
12-09 14:42:24.281 20479 20544 I Detox : Connected to server!
12-09 14:42:24.286 20479 20544 D DetoxWSClient: Received action 'loginSuccess' (ID #0, params={"testerConnected":true,"appConnected":true})
12-09 14:42:24.287 20479 20544 D DetoxWSClient: Received action 'isReady' (ID #-1000, params={})
12-09 14:42:24.413 20479 20505 D SoLoader: libreactnativejni.so not found on /data/data/com.awesomeproject/lib-main
12-09 14:42:24.413 20479 20505 D SoLoader: libreactnativejni.so found on /data/app/~~nor3xECowNstcCaNgZMqcA==/com.awesomeproject-XMs4tnOIKVIebcwvA5vvUA==/lib/arm64
12-09 14:42:24.413 20479 20505 D SoLoader: Not resolving dependencies for libreactnativejni.so
12-09 14:42:25.689 20479 20548 D TrafficStats: tagSocket(150) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:25.821 20479 20530 D EGL_emulation: app_time_stats: avg=399.97ms min=4.14ms max=1335.74ms count=4
12-09 14:42:27.702 20479 20550 D TrafficStats: tagSocket(128) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:29.758 20479 20552 D TrafficStats: tagSocket(128) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:34.286 20479 20544 D DetoxWSClient: Received action 'currentStatus' (ID #1, params={})
12-09 14:42:34.287 20479 20543 I DetoxDispatcher: Handling action 'currentStatus' (ID #1)...
12-09 14:42:39.816 20479 20566 D TrafficStats: tagSocket(144) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:41.834 20479 20569 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:43.844 20479 20574 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:45.855 20479 20586 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:55.896 20479 20592 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:57.909 20479 20594 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:42:59.922 20479 20596 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:01.932 20479 20598 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:11.978 20479 20604 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:13.989 20479 20606 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:15.999 20479 20608 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:18.009 20479 20610 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:28.068 20479 20616 D TrafficStats: tagSocket(99) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:30.082 20479 20618 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:32.093 20479 20620 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:34.105 20479 20622 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:44.152 20479 20629 D TrafficStats: tagSocket(5) with statsTag=0xffffffff, statsUid=-1
12-09 14:43:46.159 20479 206

Binary file not shown.

View File

@ -1,5 +1,4 @@
import {by, device, element, expect} from 'detox';
import {by, device, element, expect, waitFor} from 'detox';
describe('测试Native模块的方法', () => {
beforeAll(async () => {
await device.launchApp();
@ -7,83 +6,118 @@ describe('测试Native模块的方法', () => {
it('setLocalHashInfo', async () => {
await element(by.id('testcase')).longPress();
await element(by.id('setLocalHashInfo')).tap();
await element(by.id('submit')).tap();
await expect(element(by.text('done'))).toBeVisible();
await element(by.text('OK')).tap();
await element(by.id('setLocalHashInfo')).longPress();
await element(by.id('submit')).longPress();
await expect(element(by.id('done'))).toBeVisible();
await element(by.id('done')).longPress();
await expect(element(by.id('done'))).toBeNotVisible();
});
it('getLocalHashInfo', async () => {
await element(by.id('getLocalHashInfo')).tap();
await element(by.id('submit')).tap();
await element(by.id('getLocalHashInfo')).longPress();
await element(by.id('submit')).longPress();
await expect(element(by.text('done'))).toBeVisible();
await element(by.text('OK')).tap();
await element(by.id('done')).longPress();
await expect(element(by.id('done'))).toBeNotVisible();
});
it('setUuid', async () => {
await element(by.id('setUuid')).tap();
await element(by.id('submit')).tap();
await element(by.id('setUuid')).longPress();
await element(by.id('submit')).longPress();
await expect(element(by.text('done'))).toBeVisible();
await element(by.text('OK')).tap();
await element(by.id('done')).longPress();
await expect(element(by.id('done'))).toBeNotVisible();
});
it('setBlockUpdate', async () => {
await element(by.id('setBlockUpdate')).tap();
await element(by.id('submit')).tap();
await element(by.id('setBlockUpdate')).longPress();
await element(by.id('submit')).longPress();
await expect(element(by.text('done'))).toBeVisible();
await element(by.text('OK')).tap();
await element(by.id('done')).longPress();
await expect(element(by.id('done'))).toBeNotVisible();
});
// it('reloadUpdate', async () => {
// await element(by.id('reloadUpdate')).tap();
// await element(by.id('submit')).tap();
// await expect(element(by.text('刚刚更新失败了,版本被回滚.'))).toBeVisible();
// await element(by.text('OK')).tap();
// });
if (device.getPlatform() === 'android') {
it('reloadUpdate', async () => {
await element(by.id('reloadUpdate')).longPress();
await element(by.id('submit')).longPress();
await waitFor(element(by.text('确认')))
.toBeVisible()
.withTimeout(10000);
await element(by.id('done')).longPress();
await expect(element(by.id('done'))).toBeNotVisible();
});
}
it('setNeedUpdate', async () => {
// await element(by.id('testcase')).longPress();
await element(by.id('setNeedUpdate')).tap();
await element(by.id('submit')).tap();
await element(by.id('setNeedUpdate')).longPress();
await element(by.id('submit')).longPress();
await expect(element(by.text('done'))).toBeVisible();
await element(by.text('OK')).tap();
await element(by.id('done')).longPress();
await expect(element(by.id('done'))).toBeNotVisible();
});
if (device.getPlatform() === 'android') {
it('markSuccess', async () => {
await element(by.id('markSuccess')).tap();
await element(by.id('submit')).tap();
await expect(element(by.text('done'))).toBeVisible();
await element(by.text('OK')).tap();
await element(by.id('markSuccess')).longPress();
await element(by.id('submit')).longPress();
await waitFor(element(by.text('确认')))
.toBeVisible()
.withTimeout(10000);
await element(by.id('done')).longPress();
});
}
it('downloadPatchFromPpk', async () => {
await element(by.id('downloadPatchFromPpk')).tap();
await element(by.id('submit')).tap();
await element(by.id('downloadPatchFromPpk')).longPress();
await element(by.id('submit')).longPress();
if (device.getPlatform() === 'ios') {
await expect(element(by.text('failed to open zip file'))).toBeVisible();
await element(by.text('OK')).tap();
} else {
await waitFor(element(by.text('确认')))
.toBeVisible()
.withTimeout(10000);
}
await element(by.id('done')).longPress();
await expect(element(by.id('done'))).toBeNotVisible();
});
it('downloadPatchFromPackage', async () => {
await element(by.id('downloadPatchFromPackage')).tap();
await element(by.id('submit')).tap();
await element(by.id('downloadPatchFromPackage')).longPress();
await element(by.id('submit')).longPress();
if (device.getPlatform() === 'ios') {
await expect(element(by.text('failed to open zip file'))).toBeVisible();
await element(by.text('OK')).tap();
} else {
await waitFor(element(by.text('确认')))
.toBeVisible()
.withTimeout(10000);
}
await element(by.id('done')).longPress();
await expect(element(by.id('done'))).toBeNotVisible();
});
it('downloadFullUpdate', async () => {
await element(by.id('downloadFullUpdate')).tap();
await element(by.id('submit')).tap();
await element(by.id('downloadFullUpdate')).longPress();
await element(by.id('submit')).longPress();
if (device.getPlatform() === 'ios') {
await expect(element(by.text('failed to open zip file'))).toBeVisible();
await element(by.text('OK')).tap();
} else {
await waitFor(element(by.text('确认')))
.toBeVisible()
.withTimeout(10000);
}
await element(by.id('done')).longPress();
await expect(element(by.id('done'))).toBeNotVisible();
});
if (device.getPlatform() === 'android') {
it('downloadAndInstallApk', async () => {
await element(by.id('testcase')).longPress();
await element(by.id('downloadAndInstallApk')).tap();
await element(by.id('submit')).tap();
await expect(element(by.text('failed to open zip file'))).toBeVisible();
await element(by.text('OK')).tap();
await element(by.id('downloadAndInstallApk')).longPress();
await element(by.id('submit')).longPress();
await waitFor(element(by.text('确认')))
.toBeVisible()
.withTimeout(10000);
await element(by.id('done')).longPress();
await expect(element(by.id('done'))).toBeNotVisible();
});
}
});

View File

@ -1,29 +0,0 @@
import { execSync } from 'child_process';
import { pathExists, ensureDir } from 'fs-extra';
import { resolveConfig } from 'detox/internals';
import { globalSetup } from 'detox/runners/jest';
export default async function customGlobalSetup() {
const config = await resolveConfig();
if (config.device.type === 'android.emulator') {
await downloadTestButlerAPK();
}
await globalSetup();
}
async function downloadTestButlerAPK() {
const version = '2.2.1';
const artifactUrl = `https://repo1.maven.org/maven2/com/linkedin/testbutler/test-butler-app/${version}/test-butler-app-${version}.apk`;
const filePath = `cache/test-butler-app.apk`;
await ensureDir('cache');
if (!(await pathExists(filePath))) {
console.log(`\nDownloading Test-Butler APK v${version}...`);
execSync(`curl -f -o ${filePath} ${artifactUrl}`);
}
}
module.exports = customGlobalSetup;

View File

@ -1,16 +1,16 @@
/** @type {import('jest').Config} */
/** @type {import('@jest/types').Config.InitialOptions} */
module.exports = {
maxWorkers: 1,
globalSetup: './globalSetup.ts',
globalTeardown: 'detox/runners/jest/globalTeardown',
testEnvironment: 'detox/runners/jest/testEnvironment',
setupFilesAfterEnv: ['./setup.ts'],
testRunner: 'jest-circus/runner',
rootDir: '..',
testMatch: ['<rootDir>/e2e/**/*.test.js'],
testTimeout: 120000,
maxWorkers: 1,
testMatch: ['**/*.test.ts'],
transform: {
'\\.tsx?$': 'ts-jest',
},
globalSetup: 'detox/runners/jest/globalSetup',
globalTeardown: 'detox/runners/jest/globalTeardown',
reporters: ['detox/runners/jest/reporter'],
testEnvironment: 'detox/runners/jest/testEnvironment',
verbose: true,
};

View File

@ -1,5 +0,0 @@
import { device } from 'detox';
beforeAll(async () => {
await device.launchApp();
});

View File

@ -7,12 +7,12 @@
objects = {
/* Begin PBXBuildFile section */
00E356F31AD99517003FC87E /* testHotupdateTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* testHotupdateTests.m */; };
0C80B921A6F3F58F76C31292 /* libPods-testHotupdate.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5DCACB8F33CDC322A6C60F78 /* libPods-testHotupdate.a */; };
00E356F31AD99517003FC87E /* AwesomeProjectTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* AwesomeProjectTests.m */; };
0C80B921A6F3F58F76C31292 /* libPods-AwesomeProject.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 5DCACB8F33CDC322A6C60F78 /* libPods-AwesomeProject.a */; };
13B07FBC1A68108700A75B9A /* AppDelegate.mm in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.mm */; };
13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; };
13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; };
7699B88040F8A987B510C191 /* libPods-testHotupdate-testHotupdateTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 19F6CBCC0A4E27FBF8BF4A61 /* libPods-testHotupdate-testHotupdateTests.a */; };
7699B88040F8A987B510C191 /* libPods-AwesomeProject-AwesomeProjectTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 19F6CBCC0A4E27FBF8BF4A61 /* libPods-AwesomeProject-AwesomeProjectTests.a */; };
81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; };
/* End PBXBuildFile section */
@ -22,27 +22,27 @@
containerPortal = 83CBB9F71A601CBA00E9B192 /* Project object */;
proxyType = 1;
remoteGlobalIDString = 13B07F861A680F5B00A75B9A;
remoteInfo = testHotupdate;
remoteInfo = AwesomeProject;
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
00E356EE1AD99517003FC87E /* testHotupdateTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = testHotupdateTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
00E356EE1AD99517003FC87E /* AwesomeProjectTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = AwesomeProjectTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
00E356F21AD99517003FC87E /* testHotupdateTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = testHotupdateTests.m; sourceTree = "<group>"; };
13B07F961A680F5B00A75B9A /* testHotupdate.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testHotupdate.app; sourceTree = BUILT_PRODUCTS_DIR; };
13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = testHotupdate/AppDelegate.h; sourceTree = "<group>"; };
13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = testHotupdate/AppDelegate.mm; sourceTree = "<group>"; };
13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = testHotupdate/Images.xcassets; sourceTree = "<group>"; };
13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = testHotupdate/Info.plist; sourceTree = "<group>"; };
13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = testHotupdate/main.m; sourceTree = "<group>"; };
19F6CBCC0A4E27FBF8BF4A61 /* libPods-testHotupdate-testHotupdateTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-testHotupdate-testHotupdateTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
3B4392A12AC88292D35C810B /* Pods-testHotupdate.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-testHotupdate.debug.xcconfig"; path = "Target Support Files/Pods-testHotupdate/Pods-testHotupdate.debug.xcconfig"; sourceTree = "<group>"; };
5709B34CF0A7D63546082F79 /* Pods-testHotupdate.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-testHotupdate.release.xcconfig"; path = "Target Support Files/Pods-testHotupdate/Pods-testHotupdate.release.xcconfig"; sourceTree = "<group>"; };
5B7EB9410499542E8C5724F5 /* Pods-testHotupdate-testHotupdateTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-testHotupdate-testHotupdateTests.debug.xcconfig"; path = "Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests.debug.xcconfig"; sourceTree = "<group>"; };
5DCACB8F33CDC322A6C60F78 /* libPods-testHotupdate.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-testHotupdate.a"; sourceTree = BUILT_PRODUCTS_DIR; };
81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = testHotupdate/LaunchScreen.storyboard; sourceTree = "<group>"; };
89C6BE57DB24E9ADA2F236DE /* Pods-testHotupdate-testHotupdateTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-testHotupdate-testHotupdateTests.release.xcconfig"; path = "Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests.release.xcconfig"; sourceTree = "<group>"; };
00E356F21AD99517003FC87E /* AwesomeProjectTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AwesomeProjectTests.m; sourceTree = "<group>"; };
13B07F961A680F5B00A75B9A /* AwesomeProject.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = AwesomeProject.app; sourceTree = BUILT_PRODUCTS_DIR; };
13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = AwesomeProject/AppDelegate.h; sourceTree = "<group>"; };
13B07FB01A68108700A75B9A /* AppDelegate.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = AppDelegate.mm; path = AwesomeProject/AppDelegate.mm; sourceTree = "<group>"; };
13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = AwesomeProject/Images.xcassets; sourceTree = "<group>"; };
13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = AwesomeProject/Info.plist; sourceTree = "<group>"; };
13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = AwesomeProject/main.m; sourceTree = "<group>"; };
19F6CBCC0A4E27FBF8BF4A61 /* libPods-AwesomeProject-AwesomeProjectTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-AwesomeProject-AwesomeProjectTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
3B4392A12AC88292D35C810B /* Pods-AwesomeProject.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AwesomeProject.debug.xcconfig"; path = "Target Support Files/Pods-AwesomeProject/Pods-AwesomeProject.debug.xcconfig"; sourceTree = "<group>"; };
5709B34CF0A7D63546082F79 /* Pods-AwesomeProject.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AwesomeProject.release.xcconfig"; path = "Target Support Files/Pods-AwesomeProject/Pods-AwesomeProject.release.xcconfig"; sourceTree = "<group>"; };
5B7EB9410499542E8C5724F5 /* Pods-AwesomeProject-AwesomeProjectTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AwesomeProject-AwesomeProjectTests.debug.xcconfig"; path = "Target Support Files/Pods-AwesomeProject-AwesomeProjectTests/Pods-AwesomeProject-AwesomeProjectTests.debug.xcconfig"; sourceTree = "<group>"; };
5DCACB8F33CDC322A6C60F78 /* libPods-AwesomeProject.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-AwesomeProject.a"; sourceTree = BUILT_PRODUCTS_DIR; };
81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = AwesomeProject/LaunchScreen.storyboard; sourceTree = "<group>"; };
89C6BE57DB24E9ADA2F236DE /* Pods-AwesomeProject-AwesomeProjectTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AwesomeProject-AwesomeProjectTests.release.xcconfig"; path = "Target Support Files/Pods-AwesomeProject-AwesomeProjectTests/Pods-AwesomeProject-AwesomeProjectTests.release.xcconfig"; sourceTree = "<group>"; };
ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; };
/* End PBXFileReference section */
@ -51,7 +51,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
7699B88040F8A987B510C191 /* libPods-testHotupdate-testHotupdateTests.a in Frameworks */,
7699B88040F8A987B510C191 /* libPods-AwesomeProject-AwesomeProjectTests.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -59,20 +59,20 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
0C80B921A6F3F58F76C31292 /* libPods-testHotupdate.a in Frameworks */,
0C80B921A6F3F58F76C31292 /* libPods-AwesomeProject.a in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
00E356EF1AD99517003FC87E /* testHotupdateTests */ = {
00E356EF1AD99517003FC87E /* AwesomeProjectTests */ = {
isa = PBXGroup;
children = (
00E356F21AD99517003FC87E /* testHotupdateTests.m */,
00E356F21AD99517003FC87E /* AwesomeProjectTests.m */,
00E356F01AD99517003FC87E /* Supporting Files */,
);
path = testHotupdateTests;
path = AwesomeProjectTests;
sourceTree = "<group>";
};
00E356F01AD99517003FC87E /* Supporting Files */ = {
@ -83,7 +83,7 @@
name = "Supporting Files";
sourceTree = "<group>";
};
13B07FAE1A68108700A75B9A /* testHotupdate */ = {
13B07FAE1A68108700A75B9A /* AwesomeProject */ = {
isa = PBXGroup;
children = (
13B07FAF1A68108700A75B9A /* AppDelegate.h */,
@ -93,15 +93,15 @@
81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */,
13B07FB71A68108700A75B9A /* main.m */,
);
name = testHotupdate;
name = AwesomeProject;
sourceTree = "<group>";
};
2D16E6871FA4F8E400B85C8A /* Frameworks */ = {
isa = PBXGroup;
children = (
ED297162215061F000B7C4FE /* JavaScriptCore.framework */,
5DCACB8F33CDC322A6C60F78 /* libPods-testHotupdate.a */,
19F6CBCC0A4E27FBF8BF4A61 /* libPods-testHotupdate-testHotupdateTests.a */,
5DCACB8F33CDC322A6C60F78 /* libPods-AwesomeProject.a */,
19F6CBCC0A4E27FBF8BF4A61 /* libPods-AwesomeProject-AwesomeProjectTests.a */,
);
name = Frameworks;
sourceTree = "<group>";
@ -116,9 +116,9 @@
83CBB9F61A601CBA00E9B192 = {
isa = PBXGroup;
children = (
13B07FAE1A68108700A75B9A /* testHotupdate */,
13B07FAE1A68108700A75B9A /* AwesomeProject */,
832341AE1AAA6A7D00B99B32 /* Libraries */,
00E356EF1AD99517003FC87E /* testHotupdateTests */,
00E356EF1AD99517003FC87E /* AwesomeProjectTests */,
83CBBA001A601CBA00E9B192 /* Products */,
2D16E6871FA4F8E400B85C8A /* Frameworks */,
BBD78D7AC51CEA395F1C20DB /* Pods */,
@ -131,8 +131,8 @@
83CBBA001A601CBA00E9B192 /* Products */ = {
isa = PBXGroup;
children = (
13B07F961A680F5B00A75B9A /* testHotupdate.app */,
00E356EE1AD99517003FC87E /* testHotupdateTests.xctest */,
13B07F961A680F5B00A75B9A /* AwesomeProject.app */,
00E356EE1AD99517003FC87E /* AwesomeProjectTests.xctest */,
);
name = Products;
sourceTree = "<group>";
@ -140,10 +140,10 @@
BBD78D7AC51CEA395F1C20DB /* Pods */ = {
isa = PBXGroup;
children = (
3B4392A12AC88292D35C810B /* Pods-testHotupdate.debug.xcconfig */,
5709B34CF0A7D63546082F79 /* Pods-testHotupdate.release.xcconfig */,
5B7EB9410499542E8C5724F5 /* Pods-testHotupdate-testHotupdateTests.debug.xcconfig */,
89C6BE57DB24E9ADA2F236DE /* Pods-testHotupdate-testHotupdateTests.release.xcconfig */,
3B4392A12AC88292D35C810B /* Pods-AwesomeProject.debug.xcconfig */,
5709B34CF0A7D63546082F79 /* Pods-AwesomeProject.release.xcconfig */,
5B7EB9410499542E8C5724F5 /* Pods-AwesomeProject-AwesomeProjectTests.debug.xcconfig */,
89C6BE57DB24E9ADA2F236DE /* Pods-AwesomeProject-AwesomeProjectTests.release.xcconfig */,
);
path = Pods;
sourceTree = "<group>";
@ -151,9 +151,9 @@
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
00E356ED1AD99517003FC87E /* testHotupdateTests */ = {
00E356ED1AD99517003FC87E /* AwesomeProjectTests */ = {
isa = PBXNativeTarget;
buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "testHotupdateTests" */;
buildConfigurationList = 00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "AwesomeProjectTests" */;
buildPhases = (
A55EABD7B0C7F3A422A6CC61 /* [CP] Check Pods Manifest.lock */,
00E356EA1AD99517003FC87E /* Sources */,
@ -167,14 +167,14 @@
dependencies = (
00E356F51AD99517003FC87E /* PBXTargetDependency */,
);
name = testHotupdateTests;
productName = testHotupdateTests;
productReference = 00E356EE1AD99517003FC87E /* testHotupdateTests.xctest */;
name = AwesomeProjectTests;
productName = AwesomeProjectTests;
productReference = 00E356EE1AD99517003FC87E /* AwesomeProjectTests.xctest */;
productType = "com.apple.product-type.bundle.unit-test";
};
13B07F861A680F5B00A75B9A /* testHotupdate */ = {
13B07F861A680F5B00A75B9A /* AwesomeProject */ = {
isa = PBXNativeTarget;
buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "testHotupdate" */;
buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "AwesomeProject" */;
buildPhases = (
C38B50BA6285516D6DCD4F65 /* [CP] Check Pods Manifest.lock */,
FD10A7F022414F080027D42C /* Start Packager */,
@ -189,9 +189,9 @@
);
dependencies = (
);
name = testHotupdate;
productName = testHotupdate;
productReference = 13B07F961A680F5B00A75B9A /* testHotupdate.app */;
name = AwesomeProject;
productName = AwesomeProject;
productReference = 13B07F961A680F5B00A75B9A /* AwesomeProject.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
@ -211,7 +211,7 @@
};
};
};
buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "testHotUpdate" */;
buildConfigurationList = 83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "AwesomeProject" */;
compatibilityVersion = "Xcode 12.0";
developmentRegion = en;
hasScannedForEncodings = 0;
@ -224,8 +224,8 @@
projectDirPath = "";
projectRoot = "";
targets = (
13B07F861A680F5B00A75B9A /* testHotupdate */,
00E356ED1AD99517003FC87E /* testHotupdateTests */,
13B07F861A680F5B00A75B9A /* AwesomeProject */,
00E356ED1AD99517003FC87E /* AwesomeProjectTests */,
);
};
/* End PBXProject section */
@ -272,15 +272,15 @@
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-testHotupdate/Pods-testHotupdate-frameworks-${CONFIGURATION}-input-files.xcfilelist",
"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject/Pods-AwesomeProject-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-testHotupdate/Pods-testHotupdate-frameworks-${CONFIGURATION}-output-files.xcfilelist",
"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject/Pods-AwesomeProject-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-testHotupdate/Pods-testHotupdate-frameworks.sh\"\n";
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject/Pods-AwesomeProject-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
A55EABD7B0C7F3A422A6CC61 /* [CP] Check Pods Manifest.lock */ = {
@ -298,7 +298,7 @@
outputFileListPaths = (
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-testHotupdate-testHotupdateTests-checkManifestLockResult.txt",
"$(DERIVED_FILE_DIR)/Pods-AwesomeProject-AwesomeProjectTests-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
@ -320,7 +320,7 @@
outputFileListPaths = (
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-testHotupdate-checkManifestLockResult.txt",
"$(DERIVED_FILE_DIR)/Pods-AwesomeProject-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
@ -333,15 +333,15 @@
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-frameworks-${CONFIGURATION}-input-files.xcfilelist",
"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject-AwesomeProjectTests/Pods-AwesomeProject-AwesomeProjectTests-frameworks-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-frameworks-${CONFIGURATION}-output-files.xcfilelist",
"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject-AwesomeProjectTests/Pods-AwesomeProject-AwesomeProjectTests-frameworks-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-frameworks.sh\"\n";
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject-AwesomeProjectTests/Pods-AwesomeProject-AwesomeProjectTests-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
E235C05ADACE081382539298 /* [CP] Copy Pods Resources */ = {
@ -350,15 +350,15 @@
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-testHotupdate/Pods-testHotupdate-resources-${CONFIGURATION}-input-files.xcfilelist",
"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject/Pods-AwesomeProject-resources-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Copy Pods Resources";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-testHotupdate/Pods-testHotupdate-resources-${CONFIGURATION}-output-files.xcfilelist",
"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject/Pods-AwesomeProject-resources-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-testHotupdate/Pods-testHotupdate-resources.sh\"\n";
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject/Pods-AwesomeProject-resources.sh\"\n";
showEnvVarsInLog = 0;
};
F6A41C54EA430FDDC6A6ED99 /* [CP] Copy Pods Resources */ = {
@ -367,15 +367,15 @@
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-resources-${CONFIGURATION}-input-files.xcfilelist",
"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject-AwesomeProjectTests/Pods-AwesomeProject-AwesomeProjectTests-resources-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Copy Pods Resources";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-resources-${CONFIGURATION}-output-files.xcfilelist",
"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject-AwesomeProjectTests/Pods-AwesomeProject-AwesomeProjectTests-resources-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-testHotupdate-testHotupdateTests/Pods-testHotupdate-testHotupdateTests-resources.sh\"\n";
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-AwesomeProject-AwesomeProjectTests/Pods-AwesomeProject-AwesomeProjectTests-resources.sh\"\n";
showEnvVarsInLog = 0;
};
FD10A7F022414F080027D42C /* Start Packager */ = {
@ -404,7 +404,7 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
00E356F31AD99517003FC87E /* testHotupdateTests.m in Sources */,
00E356F31AD99517003FC87E /* AwesomeProjectTests.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -422,7 +422,7 @@
/* Begin PBXTargetDependency section */
00E356F51AD99517003FC87E /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 13B07F861A680F5B00A75B9A /* testHotupdate */;
target = 13B07F861A680F5B00A75B9A /* AwesomeProject */;
targetProxy = 00E356F41AD99517003FC87E /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
@ -430,14 +430,14 @@
/* Begin XCBuildConfiguration section */
00E356F61AD99517003FC87E /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 5B7EB9410499542E8C5724F5 /* Pods-testHotupdate-testHotupdateTests.debug.xcconfig */;
baseConfigurationReference = 5B7EB9410499542E8C5724F5 /* Pods-AwesomeProject-AwesomeProjectTests.debug.xcconfig */;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
INFOPLIST_FILE = testHotupdateTests/Info.plist;
INFOPLIST_FILE = AwesomeProjectTests/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
@ -451,17 +451,17 @@
);
PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/testHotupdate.app/testHotupdate";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AwesomeProject.app/AwesomeProject";
};
name = Debug;
};
00E356F71AD99517003FC87E /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 89C6BE57DB24E9ADA2F236DE /* Pods-testHotupdate-testHotupdateTests.release.xcconfig */;
baseConfigurationReference = 89C6BE57DB24E9ADA2F236DE /* Pods-AwesomeProject-AwesomeProjectTests.release.xcconfig */;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
COPY_PHASE_STRIP = NO;
INFOPLIST_FILE = testHotupdateTests/Info.plist;
INFOPLIST_FILE = AwesomeProjectTests/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
@ -475,31 +475,30 @@
);
PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/testHotupdate.app/testHotupdate";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/AwesomeProject.app/AwesomeProject";
};
name = Release;
};
13B07F941A680F5B00A75B9A /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 3B4392A12AC88292D35C810B /* Pods-testHotupdate.debug.xcconfig */;
baseConfigurationReference = 3B4392A12AC88292D35C810B /* Pods-AwesomeProject.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CURRENT_PROJECT_VERSION = 1;
ENABLE_BITCODE = NO;
INFOPLIST_FILE = testHotupdate/Info.plist;
INFOPLIST_FILE = AwesomeProject/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
"-lc++",
);
PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = testHotupdate;
PRODUCT_NAME = AwesomeProject;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 5.0;
VERSIONING_SYSTEM = "apple-generic";
@ -508,24 +507,23 @@
};
13B07F951A680F5B00A75B9A /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 5709B34CF0A7D63546082F79 /* Pods-testHotupdate.release.xcconfig */;
baseConfigurationReference = 5709B34CF0A7D63546082F79 /* Pods-AwesomeProject.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CLANG_ENABLE_MODULES = YES;
CURRENT_PROJECT_VERSION = 1;
INFOPLIST_FILE = testHotupdate/Info.plist;
INFOPLIST_FILE = AwesomeProject/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 1.0;
OTHER_LDFLAGS = (
"$(inherited)",
"-ObjC",
"-lc++",
);
PRODUCT_BUNDLE_IDENTIFIER = "org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = testHotupdate;
PRODUCT_NAME = AwesomeProject;
SWIFT_VERSION = 5.0;
VERSIONING_SYSTEM = "apple-generic";
};
@ -564,7 +562,7 @@
COPY_PHASE_STRIP = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386;
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
@ -636,7 +634,7 @@
COPY_PHASE_STRIP = YES;
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = i386;
"EXCLUDED_ARCHS[sdk=iphonesimulator*]" = "";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
@ -671,7 +669,7 @@
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "testHotupdateTests" */ = {
00E357021AD99517003FC87E /* Build configuration list for PBXNativeTarget "AwesomeProjectTests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
00E356F61AD99517003FC87E /* Debug */,
@ -680,7 +678,7 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "testHotupdate" */ = {
13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "AwesomeProject" */ = {
isa = XCConfigurationList;
buildConfigurations = (
13B07F941A680F5B00A75B9A /* Debug */,
@ -689,7 +687,7 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "testHotUpdate" */ = {
83CBB9FA1A601CBA00E9B192 /* Build configuration list for PBXProject "AwesomeProject" */ = {
isa = XCConfigurationList;
buildConfigurations = (
83CBBA201A601CBA00E9B192 /* Debug */,

View File

@ -15,9 +15,9 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
BuildableName = "testHotupdate.app"
BlueprintName = "testHotupdate"
ReferencedContainer = "container:testHotupdate.xcodeproj">
BuildableName = "AwesomeProject.app"
BlueprintName = "AwesomeProject"
ReferencedContainer = "container:AwesomeProject.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
@ -33,9 +33,9 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "00E356ED1AD99517003FC87E"
BuildableName = "testHotupdateTests.xctest"
BlueprintName = "testHotupdateTests"
ReferencedContainer = "container:testHotupdate.xcodeproj">
BuildableName = "AwesomeProjectTests.xctest"
BlueprintName = "AwesomeProjectTests"
ReferencedContainer = "container:AwesomeProject.xcodeproj">
</BuildableReference>
</TestableReference>
</Testables>
@ -55,9 +55,9 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
BuildableName = "testHotupdate.app"
BlueprintName = "testHotupdate"
ReferencedContainer = "container:testHotupdate.xcodeproj">
BuildableName = "AwesomeProject.app"
BlueprintName = "AwesomeProject"
ReferencedContainer = "container:AwesomeProject.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
@ -72,9 +72,9 @@
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "13B07F861A680F5B00A75B9A"
BuildableName = "testHotupdate.app"
BlueprintName = "testHotupdate"
ReferencedContainer = "container:testHotupdate.xcodeproj">
BuildableName = "AwesomeProject.app"
BlueprintName = "AwesomeProject"
ReferencedContainer = "container:AwesomeProject.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>

View File

@ -2,12 +2,9 @@
<Workspace
version = "1.0">
<FileRef
location = "group:testHotupdate.xcodeproj">
location = "group:AwesomeProject.xcodeproj">
</FileRef>
<FileRef
location = "group:Pods/Pods.xcodeproj">
</FileRef>
<FileRef
location = "group:testHotUpdate.xcodeproj">
</FileRef>
</Workspace>

View File

@ -0,0 +1,8 @@
#import <React/RCTBridgeDelegate.h>
#import <UIKit/UIKit.h>
@interface AppDelegate : UIResponder <UIApplicationDelegate, RCTBridgeDelegate>
@property (nonatomic, strong) UIWindow *window;
@end

View File

@ -0,0 +1,133 @@
#import "AppDelegate.h"
#import <React/RCTBridge.h>
#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>
#import <React/RCTAppSetupUtils.h>
#if RCT_NEW_ARCH_ENABLED
#import <React/CoreModulesPlugins.h>
#import <React/RCTCxxBridgeDelegate.h>
#import <React/RCTFabricSurfaceHostingProxyRootView.h>
#import <React/RCTSurfacePresenter.h>
#import <React/RCTSurfacePresenterBridgeAdapter.h>
#import <ReactCommon/RCTTurboModuleManager.h>
#import <react/config/ReactNativeConfig.h>
static NSString *const kRNConcurrentRoot = @"concurrentRoot";
@interface AppDelegate () <RCTCxxBridgeDelegate, RCTTurboModuleManagerDelegate> {
RCTTurboModuleManager *_turboModuleManager;
RCTSurfacePresenterBridgeAdapter *_bridgeAdapter;
std::shared_ptr<const facebook::react::ReactNativeConfig> _reactNativeConfig;
facebook::react::ContextContainer::Shared _contextContainer;
}
@end
#endif
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
RCTAppSetupPrepareApp(application);
RCTBridge *bridge = [[RCTBridge alloc] initWithDelegate:self launchOptions:launchOptions];
#if RCT_NEW_ARCH_ENABLED
_contextContainer = std::make_shared<facebook::react::ContextContainer const>();
_reactNativeConfig = std::make_shared<facebook::react::EmptyReactNativeConfig const>();
_contextContainer->insert("ReactNativeConfig", _reactNativeConfig);
_bridgeAdapter = [[RCTSurfacePresenterBridgeAdapter alloc] initWithBridge:bridge contextContainer:_contextContainer];
bridge.surfacePresenter = _bridgeAdapter.surfacePresenter;
#endif
NSDictionary *initProps = [self prepareInitialProps];
UIView *rootView = RCTAppSetupDefaultRootView(bridge, @"AwesomeProject", initProps);
if (@available(iOS 13.0, *)) {
rootView.backgroundColor = [UIColor systemBackgroundColor];
} else {
rootView.backgroundColor = [UIColor whiteColor];
}
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
UIViewController *rootViewController = [UIViewController new];
rootViewController.view = rootView;
self.window.rootViewController = rootViewController;
[self.window makeKeyAndVisible];
return YES;
}
/// This method controls whether the `concurrentRoot`feature of React18 is turned on or off.
///
/// @see: https://reactjs.org/blog/2022/03/29/react-v18.html
/// @note: This requires to be rendering on Fabric (i.e. on the New Architecture).
/// @return: `true` if the `concurrentRoot` feture is enabled. Otherwise, it returns `false`.
- (BOOL)concurrentRootEnabled
{
// Switch this bool to turn on and off the concurrent root
return true;
}
- (NSDictionary *)prepareInitialProps
{
NSMutableDictionary *initProps = [NSMutableDictionary new];
#ifdef RCT_NEW_ARCH_ENABLED
initProps[kRNConcurrentRoot] = @([self concurrentRootEnabled]);
#endif
return initProps;
}
- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
{
#if DEBUG
return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"];
#else
return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
#endif
}
#if RCT_NEW_ARCH_ENABLED
#pragma mark - RCTCxxBridgeDelegate
- (std::unique_ptr<facebook::react::JSExecutorFactory>)jsExecutorFactoryForBridge:(RCTBridge *)bridge
{
_turboModuleManager = [[RCTTurboModuleManager alloc] initWithBridge:bridge
delegate:self
jsInvoker:bridge.jsCallInvoker];
return RCTAppSetupDefaultJsExecutorFactory(bridge, _turboModuleManager);
}
#pragma mark RCTTurboModuleManagerDelegate
- (Class)getModuleClassFromName:(const char *)name
{
return RCTCoreModulesClassProvider(name);
}
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:(const std::string &)name
jsInvoker:(std::shared_ptr<facebook::react::CallInvoker>)jsInvoker
{
return nullptr;
}
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:(const std::string &)name
initParams:
(const facebook::react::ObjCTurboModule::InitParams &)params
{
return nullptr;
}
- (id<RCTTurboModule>)getModuleInstanceFromClass:(Class)moduleClass
{
return RCTAppSetupDefaultModuleFromClass(moduleClass);
}
#endif
@end

View File

@ -5,7 +5,7 @@
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleDisplayName</key>
<string>testHotupdate</string>
<string>AwesomeProject</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
@ -17,11 +17,11 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>$(MARKETING_VERSION)</string>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>$(CURRENT_PROJECT_VERSION)</string>
<string>1</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>NSLocationWhenInUseUsageDescription</key>

View File

@ -16,7 +16,7 @@
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="testHotupdate" textAlignment="center" lineBreakMode="middleTruncation" baselineAdjustment="alignBaselines" minimumFontSize="18" translatesAutoresizingMaskIntoConstraints="NO" id="GJd-Yh-RWb">
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="AwesomeProject" textAlignment="center" lineBreakMode="middleTruncation" baselineAdjustment="alignBaselines" minimumFontSize="18" translatesAutoresizingMaskIntoConstraints="NO" id="GJd-Yh-RWb">
<rect key="frame" x="0.0" y="202" width="375" height="43"/>
<fontDescription key="fontDescription" type="boldSystem" pointSize="36"/>
<nil key="highlightedColor"/>

View File

@ -7,11 +7,11 @@
#define TIMEOUT_SECONDS 600
#define TEXT_TO_LOOK_FOR @"Welcome to React"
@interface testHotupdateTests : XCTestCase
@interface AwesomeProjectTests : XCTestCase
@end
@implementation testHotupdateTests
@implementation AwesomeProjectTests
- (BOOL)findSubviewInView:(UIView *)view matching:(BOOL (^)(UIView *view))test
{

View File

@ -1,27 +1,12 @@
require_relative '../node_modules/react-native/scripts/react_native_pods'
require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'
platform :ios, min_ios_version_supported
prepare_react_native_project!
platform :ios, '12.4'
install! 'cocoapods', :deterministic_uuids => false
# If you are using a `react-native-flipper` your iOS build will fail when `NO_FLIPPER=1` is set.
# because `react-native-flipper` depends on (FlipperKit,...) that will be excluded
#
# To fix this you can also exclude `react-native-flipper` using a `react-native.config.js`
# ```js
# module.exports = {
# dependencies: {
# ...(process.env.NO_FLIPPER ? { 'react-native-flipper': { platforms: { ios: null } } } : {}),
# ```
flipper_config = ENV['NO_FLIPPER'] == "1" ? FlipperConfiguration.disabled : FlipperConfiguration.enabled
production = ENV["PRODUCTION"] == "1"
linkage = ENV['USE_FRAMEWORKS']
if linkage != nil
Pod::UI.puts "Configuring Pod with #{linkage}ally linked Frameworks".green
use_frameworks! :linkage => linkage.to_sym
end
target 'testHotupdate' do
target 'AwesomeProject' do
config = use_native_modules!
# Flags change depending on the env values.
@ -29,32 +14,22 @@ target 'testHotupdate' do
use_react_native!(
:path => config[:reactNativePath],
# Hermes is now enabled by default. Disable by setting this flag to false.
# Upcoming versions of React Native may rely on get_default_flags(), but
# we make it explicit here to aid in the React Native upgrade process.
# to enable hermes on iOS, change `false` to `true` and then install pods
:production => production,
:hermes_enabled => flags[:hermes_enabled],
:fabric_enabled => flags[:fabric_enabled],
# Enables Flipper.
#
# Note that if you have use_frameworks! enabled, Flipper will not work and
# you should disable the next line.
:flipper_configuration => flipper_config,
:flipper_configuration => FlipperConfiguration.enabled,
# An absolute path to your application root.
:app_path => "#{Pod::Config.instance.installation_root}/.."
)
target 'testHotupdateTests' do
target 'AwesomeProjectTests' do
inherit! :complete
# Pods for testing
end
post_install do |installer|
react_native_post_install(
installer,
# Set `mac_catalyst_enabled` to `true` in order to apply patches
# necessary for Mac Catalyst builds
:mac_catalyst_enabled => false
)
react_native_post_install(installer)
__apply_Xcode_12_5_M1_post_install_workaround(installer)
end
end

View File

@ -2,14 +2,14 @@ PODS:
- boost (1.76.0)
- CocoaAsyncSocket (7.6.5)
- DoubleConversion (1.1.6)
- FBLazyVector (0.71.1)
- FBReactNativeSpec (0.71.1):
- RCT-Folly (= 2021.07.22.00)
- RCTRequired (= 0.71.1)
- RCTTypeSafety (= 0.71.1)
- React-Core (= 0.71.1)
- React-jsi (= 0.71.1)
- ReactCommon/turbomodule/core (= 0.71.1)
- FBLazyVector (0.69.8)
- FBReactNativeSpec (0.69.8):
- RCT-Folly (= 2021.06.28.00-v2)
- RCTRequired (= 0.69.8)
- RCTTypeSafety (= 0.69.8)
- React-Core (= 0.69.8)
- React-jsi (= 0.69.8)
- ReactCommon/turbomodule/core (= 0.69.8)
- Flipper (0.125.0):
- Flipper-Folly (~> 2.6)
- Flipper-RSocket (~> 1.4)
@ -73,229 +73,216 @@ PODS:
- FlipperKit/FlipperKitNetworkPlugin
- fmt (6.2.1)
- glog (0.3.5)
- hermes-engine (0.71.1):
- hermes-engine/Pre-built (= 0.71.1)
- hermes-engine/Pre-built (0.71.1)
- libevent (2.1.12)
- OpenSSL-Universal (1.1.1100)
- RCT-Folly (2021.07.22.00):
- RCT-Folly (2021.06.28.00-v2):
- boost
- DoubleConversion
- fmt (~> 6.2.1)
- glog
- RCT-Folly/Default (= 2021.07.22.00)
- RCT-Folly/Default (2021.07.22.00):
- RCT-Folly/Default (= 2021.06.28.00-v2)
- RCT-Folly/Default (2021.06.28.00-v2):
- boost
- DoubleConversion
- fmt (~> 6.2.1)
- glog
- RCT-Folly/Futures (2021.07.22.00):
- boost
- DoubleConversion
- fmt (~> 6.2.1)
- RCTRequired (0.69.8)
- RCTTypeSafety (0.69.8):
- FBLazyVector (= 0.69.8)
- RCTRequired (= 0.69.8)
- React-Core (= 0.69.8)
- React (0.69.8):
- React-Core (= 0.69.8)
- React-Core/DevSupport (= 0.69.8)
- React-Core/RCTWebSocket (= 0.69.8)
- React-RCTActionSheet (= 0.69.8)
- React-RCTAnimation (= 0.69.8)
- React-RCTBlob (= 0.69.8)
- React-RCTImage (= 0.69.8)
- React-RCTLinking (= 0.69.8)
- React-RCTNetwork (= 0.69.8)
- React-RCTSettings (= 0.69.8)
- React-RCTText (= 0.69.8)
- React-RCTVibration (= 0.69.8)
- React-bridging (0.69.8):
- RCT-Folly (= 2021.06.28.00-v2)
- React-jsi (= 0.69.8)
- React-callinvoker (0.69.8)
- React-Codegen (0.69.8):
- FBReactNativeSpec (= 0.69.8)
- RCT-Folly (= 2021.06.28.00-v2)
- RCTRequired (= 0.69.8)
- RCTTypeSafety (= 0.69.8)
- React-Core (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- ReactCommon/turbomodule/core (= 0.69.8)
- React-Core (0.69.8):
- glog
- libevent
- RCTRequired (0.71.1)
- RCTTypeSafety (0.71.1):
- FBLazyVector (= 0.71.1)
- RCTRequired (= 0.71.1)
- React-Core (= 0.71.1)
- React (0.71.1):
- React-Core (= 0.71.1)
- React-Core/DevSupport (= 0.71.1)
- React-Core/RCTWebSocket (= 0.71.1)
- React-RCTActionSheet (= 0.71.1)
- React-RCTAnimation (= 0.71.1)
- React-RCTBlob (= 0.71.1)
- React-RCTImage (= 0.71.1)
- React-RCTLinking (= 0.71.1)
- React-RCTNetwork (= 0.71.1)
- React-RCTSettings (= 0.71.1)
- React-RCTText (= 0.71.1)
- React-RCTVibration (= 0.71.1)
- React-callinvoker (0.71.1)
- React-Codegen (0.71.1):
- FBReactNativeSpec
- hermes-engine
- RCT-Folly
- RCTRequired
- RCTTypeSafety
- React-Core
- React-jsi
- React-jsiexecutor
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- React-Core (0.71.1):
- glog
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default (= 0.71.1)
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default (= 0.69.8)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/CoreModulesHeaders (0.71.1):
- React-Core/CoreModulesHeaders (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/Default (0.71.1):
- React-Core/Default (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- RCT-Folly (= 2021.06.28.00-v2)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/DevSupport (0.71.1):
- React-Core/DevSupport (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default (= 0.71.1)
- React-Core/RCTWebSocket (= 0.71.1)
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-jsinspector (= 0.71.1)
- React-perflogger (= 0.71.1)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default (= 0.69.8)
- React-Core/RCTWebSocket (= 0.69.8)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-jsinspector (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/RCTActionSheetHeaders (0.71.1):
- React-Core/RCTActionSheetHeaders (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/RCTAnimationHeaders (0.71.1):
- React-Core/RCTAnimationHeaders (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/RCTBlobHeaders (0.71.1):
- React-Core/RCTBlobHeaders (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/RCTImageHeaders (0.71.1):
- React-Core/RCTImageHeaders (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/RCTLinkingHeaders (0.71.1):
- React-Core/RCTLinkingHeaders (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/RCTNetworkHeaders (0.71.1):
- React-Core/RCTNetworkHeaders (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/RCTSettingsHeaders (0.71.1):
- React-Core/RCTSettingsHeaders (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/RCTTextHeaders (0.71.1):
- React-Core/RCTTextHeaders (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/RCTVibrationHeaders (0.71.1):
- React-Core/RCTVibrationHeaders (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-Core/RCTWebSocket (0.71.1):
- React-Core/RCTWebSocket (0.69.8):
- glog
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default (= 0.71.1)
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-perflogger (= 0.71.1)
- RCT-Folly (= 2021.06.28.00-v2)
- React-Core/Default (= 0.69.8)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsiexecutor (= 0.69.8)
- React-perflogger (= 0.69.8)
- Yoga
- React-CoreModules (0.71.1):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.1)
- React-Codegen (= 0.71.1)
- React-Core/CoreModulesHeaders (= 0.71.1)
- React-jsi (= 0.71.1)
- React-RCTImage (= 0.71.1)
- ReactCommon/turbomodule/core (= 0.71.1)
- React-cxxreact (0.71.1):
- React-CoreModules (0.69.8):
- RCT-Folly (= 2021.06.28.00-v2)
- RCTTypeSafety (= 0.69.8)
- React-Codegen (= 0.69.8)
- React-Core/CoreModulesHeaders (= 0.69.8)
- React-jsi (= 0.69.8)
- React-RCTImage (= 0.69.8)
- ReactCommon/turbomodule/core (= 0.69.8)
- React-cxxreact (0.69.8):
- boost (= 1.76.0)
- DoubleConversion
- glog
- RCT-Folly (= 2021.07.22.00)
- React-callinvoker (= 0.71.1)
- React-jsi (= 0.71.1)
- React-jsinspector (= 0.71.1)
- React-logger (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-runtimeexecutor (= 0.71.1)
- React-hermes (0.71.1):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly/Futures (= 2021.07.22.00)
- React-cxxreact (= 0.71.1)
- React-jsiexecutor (= 0.71.1)
- React-jsinspector (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-jsi (0.71.1):
- RCT-Folly (= 2021.06.28.00-v2)
- React-callinvoker (= 0.69.8)
- React-jsi (= 0.69.8)
- React-jsinspector (= 0.69.8)
- React-logger (= 0.69.8)
- React-perflogger (= 0.69.8)
- React-runtimeexecutor (= 0.69.8)
- React-jsi (0.69.8):
- boost (= 1.76.0)
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-jsiexecutor (0.71.1):
- RCT-Folly (= 2021.06.28.00-v2)
- React-jsi/Default (= 0.69.8)
- React-jsi/Default (0.69.8):
- boost (= 1.76.0)
- DoubleConversion
- glog
- RCT-Folly (= 2021.07.22.00)
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-perflogger (= 0.71.1)
- React-jsinspector (0.71.1)
- React-logger (0.71.1):
- RCT-Folly (= 2021.06.28.00-v2)
- React-jsiexecutor (0.69.8):
- DoubleConversion
- glog
- RCT-Folly (= 2021.06.28.00-v2)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-perflogger (= 0.69.8)
- React-jsinspector (0.69.8)
- React-logger (0.69.8):
- glog
- react-native-update (9.0.0):
- React
@ -311,87 +298,72 @@ PODS:
- React
- React-Core
- SSZipArchive
- React-perflogger (0.71.1)
- React-RCTActionSheet (0.71.1):
- React-Core/RCTActionSheetHeaders (= 0.71.1)
- React-RCTAnimation (0.71.1):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.1)
- React-Codegen (= 0.71.1)
- React-Core/RCTAnimationHeaders (= 0.71.1)
- React-jsi (= 0.71.1)
- ReactCommon/turbomodule/core (= 0.71.1)
- React-RCTAppDelegate (0.71.1):
- RCT-Folly
- RCTRequired
- RCTTypeSafety
- React-Core
- ReactCommon/turbomodule/core
- React-RCTBlob (0.71.1):
- RCT-Folly (= 2021.07.22.00)
- React-Codegen (= 0.71.1)
- React-Core/RCTBlobHeaders (= 0.71.1)
- React-Core/RCTWebSocket (= 0.71.1)
- React-jsi (= 0.71.1)
- React-RCTNetwork (= 0.71.1)
- ReactCommon/turbomodule/core (= 0.71.1)
- React-RCTImage (0.71.1):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.1)
- React-Codegen (= 0.71.1)
- React-Core/RCTImageHeaders (= 0.71.1)
- React-jsi (= 0.71.1)
- React-RCTNetwork (= 0.71.1)
- ReactCommon/turbomodule/core (= 0.71.1)
- React-RCTLinking (0.71.1):
- React-Codegen (= 0.71.1)
- React-Core/RCTLinkingHeaders (= 0.71.1)
- React-jsi (= 0.71.1)
- ReactCommon/turbomodule/core (= 0.71.1)
- React-RCTNetwork (0.71.1):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.1)
- React-Codegen (= 0.71.1)
- React-Core/RCTNetworkHeaders (= 0.71.1)
- React-jsi (= 0.71.1)
- ReactCommon/turbomodule/core (= 0.71.1)
- React-RCTSettings (0.71.1):
- RCT-Folly (= 2021.07.22.00)
- RCTTypeSafety (= 0.71.1)
- React-Codegen (= 0.71.1)
- React-Core/RCTSettingsHeaders (= 0.71.1)
- React-jsi (= 0.71.1)
- ReactCommon/turbomodule/core (= 0.71.1)
- React-RCTText (0.71.1):
- React-Core/RCTTextHeaders (= 0.71.1)
- React-RCTVibration (0.71.1):
- RCT-Folly (= 2021.07.22.00)
- React-Codegen (= 0.71.1)
- React-Core/RCTVibrationHeaders (= 0.71.1)
- React-jsi (= 0.71.1)
- ReactCommon/turbomodule/core (= 0.71.1)
- React-runtimeexecutor (0.71.1):
- React-jsi (= 0.71.1)
- ReactCommon/turbomodule/bridging (0.71.1):
- React-perflogger (0.69.8)
- React-RCTActionSheet (0.69.8):
- React-Core/RCTActionSheetHeaders (= 0.69.8)
- React-RCTAnimation (0.69.8):
- RCT-Folly (= 2021.06.28.00-v2)
- RCTTypeSafety (= 0.69.8)
- React-Codegen (= 0.69.8)
- React-Core/RCTAnimationHeaders (= 0.69.8)
- React-jsi (= 0.69.8)
- ReactCommon/turbomodule/core (= 0.69.8)
- React-RCTBlob (0.69.8):
- RCT-Folly (= 2021.06.28.00-v2)
- React-Codegen (= 0.69.8)
- React-Core/RCTBlobHeaders (= 0.69.8)
- React-Core/RCTWebSocket (= 0.69.8)
- React-jsi (= 0.69.8)
- React-RCTNetwork (= 0.69.8)
- ReactCommon/turbomodule/core (= 0.69.8)
- React-RCTImage (0.69.8):
- RCT-Folly (= 2021.06.28.00-v2)
- RCTTypeSafety (= 0.69.8)
- React-Codegen (= 0.69.8)
- React-Core/RCTImageHeaders (= 0.69.8)
- React-jsi (= 0.69.8)
- React-RCTNetwork (= 0.69.8)
- ReactCommon/turbomodule/core (= 0.69.8)
- React-RCTLinking (0.69.8):
- React-Codegen (= 0.69.8)
- React-Core/RCTLinkingHeaders (= 0.69.8)
- React-jsi (= 0.69.8)
- ReactCommon/turbomodule/core (= 0.69.8)
- React-RCTNetwork (0.69.8):
- RCT-Folly (= 2021.06.28.00-v2)
- RCTTypeSafety (= 0.69.8)
- React-Codegen (= 0.69.8)
- React-Core/RCTNetworkHeaders (= 0.69.8)
- React-jsi (= 0.69.8)
- ReactCommon/turbomodule/core (= 0.69.8)
- React-RCTSettings (0.69.8):
- RCT-Folly (= 2021.06.28.00-v2)
- RCTTypeSafety (= 0.69.8)
- React-Codegen (= 0.69.8)
- React-Core/RCTSettingsHeaders (= 0.69.8)
- React-jsi (= 0.69.8)
- ReactCommon/turbomodule/core (= 0.69.8)
- React-RCTText (0.69.8):
- React-Core/RCTTextHeaders (= 0.69.8)
- React-RCTVibration (0.69.8):
- RCT-Folly (= 2021.06.28.00-v2)
- React-Codegen (= 0.69.8)
- React-Core/RCTVibrationHeaders (= 0.69.8)
- React-jsi (= 0.69.8)
- ReactCommon/turbomodule/core (= 0.69.8)
- React-runtimeexecutor (0.69.8):
- React-jsi (= 0.69.8)
- ReactCommon/turbomodule/core (0.69.8):
- DoubleConversion
- glog
- RCT-Folly (= 2021.07.22.00)
- React-callinvoker (= 0.71.1)
- React-Core (= 0.71.1)
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-logger (= 0.71.1)
- React-perflogger (= 0.71.1)
- ReactCommon/turbomodule/core (0.71.1):
- DoubleConversion
- glog
- RCT-Folly (= 2021.07.22.00)
- React-callinvoker (= 0.71.1)
- React-Core (= 0.71.1)
- React-cxxreact (= 0.71.1)
- React-jsi (= 0.71.1)
- React-logger (= 0.71.1)
- React-perflogger (= 0.71.1)
- RCT-Folly (= 2021.06.28.00-v2)
- React-bridging (= 0.69.8)
- React-callinvoker (= 0.69.8)
- React-Core (= 0.69.8)
- React-cxxreact (= 0.69.8)
- React-jsi (= 0.69.8)
- React-logger (= 0.69.8)
- React-perflogger (= 0.69.8)
- SocketRocket (0.6.0)
- SSZipArchive (2.4.3)
- Yoga (1.14.0)
@ -425,13 +397,12 @@ DEPENDENCIES:
- FlipperKit/FlipperKitUserDefaultsPlugin (= 0.125.0)
- FlipperKit/SKIOSNetworkPlugin (= 0.125.0)
- glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`)
- hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`)
- libevent (~> 2.1.12)
- OpenSSL-Universal (= 1.1.1100)
- RCT-Folly (from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`)
- RCTRequired (from `../node_modules/react-native/Libraries/RCTRequired`)
- RCTTypeSafety (from `../node_modules/react-native/Libraries/TypeSafety`)
- React (from `../node_modules/react-native/`)
- React-bridging (from `../node_modules/react-native/ReactCommon`)
- React-callinvoker (from `../node_modules/react-native/ReactCommon/callinvoker`)
- React-Codegen (from `build/generated/ios`)
- React-Core (from `../node_modules/react-native/`)
@ -439,7 +410,6 @@ DEPENDENCIES:
- React-Core/RCTWebSocket (from `../node_modules/react-native/`)
- React-CoreModules (from `../node_modules/react-native/React/CoreModules`)
- React-cxxreact (from `../node_modules/react-native/ReactCommon/cxxreact`)
- React-hermes (from `../node_modules/react-native/ReactCommon/hermes`)
- React-jsi (from `../node_modules/react-native/ReactCommon/jsi`)
- React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`)
- React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`)
@ -448,7 +418,6 @@ DEPENDENCIES:
- React-perflogger (from `../node_modules/react-native/ReactCommon/reactperflogger`)
- React-RCTActionSheet (from `../node_modules/react-native/Libraries/ActionSheetIOS`)
- React-RCTAnimation (from `../node_modules/react-native/Libraries/NativeAnimation`)
- React-RCTAppDelegate (from `../node_modules/react-native/Libraries/AppDelegate`)
- React-RCTBlob (from `../node_modules/react-native/Libraries/Blob`)
- React-RCTImage (from `../node_modules/react-native/Libraries/Image`)
- React-RCTLinking (from `../node_modules/react-native/Libraries/LinkingIOS`)
@ -490,8 +459,6 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/React/FBReactNativeSpec"
glog:
:podspec: "../node_modules/react-native/third-party-podspecs/glog.podspec"
hermes-engine:
:podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec"
RCT-Folly:
:podspec: "../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec"
RCTRequired:
@ -500,6 +467,8 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/Libraries/TypeSafety"
React:
:path: "../node_modules/react-native/"
React-bridging:
:path: "../node_modules/react-native/ReactCommon"
React-callinvoker:
:path: "../node_modules/react-native/ReactCommon/callinvoker"
React-Codegen:
@ -510,8 +479,6 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/React/CoreModules"
React-cxxreact:
:path: "../node_modules/react-native/ReactCommon/cxxreact"
React-hermes:
:path: "../node_modules/react-native/ReactCommon/hermes"
React-jsi:
:path: "../node_modules/react-native/ReactCommon/jsi"
React-jsiexecutor:
@ -528,8 +495,6 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/Libraries/ActionSheetIOS"
React-RCTAnimation:
:path: "../node_modules/react-native/Libraries/NativeAnimation"
React-RCTAppDelegate:
:path: "../node_modules/react-native/Libraries/AppDelegate"
React-RCTBlob:
:path: "../node_modules/react-native/Libraries/Blob"
React-RCTImage:
@ -552,11 +517,11 @@ EXTERNAL SOURCES:
:path: "../node_modules/react-native/ReactCommon/yoga"
SPEC CHECKSUMS:
boost: 57d2868c099736d80fcd648bf211b4431e51a558
boost: a7c83b31436843459a1961bfd74b96033dc77234
CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
FBLazyVector: ad72713385db5289b19f1ead07e8e4aa26dcb01d
FBReactNativeSpec: df2602c11e33d310433496e28a48b4b2be652a61
FBLazyVector: c7b6997d41fffaaaf4d18c82bc93885df731e2d0
FBReactNativeSpec: b1217c558a3ae84c2057d9c2ddce88af21379a68
Flipper: 26fc4b7382499f1281eb8cb921e5c3ad6de91fe0
Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c
Flipper-DoubleConversion: 2dc99b02f658daf147069aad9dbd29d8feb06d30
@ -567,43 +532,41 @@ SPEC CHECKSUMS:
Flipper-RSocket: d9d9ade67cbecf6ac10730304bf5607266dd2541
FlipperKit: cbdee19bdd4e7f05472a66ce290f1b729ba3cb86
fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
hermes-engine: 922ccd744f50d9bfde09e9677bf0f3b562ea5fb9
glog: 3d02b25ca00c2d456734d0bcff864cbc62f6ae1a
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c
RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1
RCTRequired: fd4d923b964658aa0c4091a32c8b2004c6d9e3a6
RCTTypeSafety: c276d85975bde3d8448907235c70bf0da257adfd
React: e481a67971af1ce9639c9f746b753dd0e84ca108
React-callinvoker: 1051c04a94fa9d243786b86380606bad701a3b31
React-Codegen: 14b1e716d361d5ad95e0ce1a338f3fa0733a98b5
React-Core: 698fc3baecb80d511d987475a16d036cec6d287f
React-CoreModules: 59245305f41ff0adfeac334acc0594dea4585a7c
React-cxxreact: 49accd2954b0f532805dbcd1918fa6962f32f247
React-hermes: d068733294581a085e95b6024e8d951b005e26d3
React-jsi: 122b9bce14f4c6c7cb58f28f87912cfe091885fa
React-jsiexecutor: 60cf272aababc5212410e4249d17cea14fc36caa
React-jsinspector: ff56004b0c974b688a6548c156d5830ad751ae07
React-logger: 60a0b5f8bed667ecf9e24fecca1f30d125de6d75
RCT-Folly: b9d9fe1fc70114b751c076104e52f3b1b5e5a95a
RCTRequired: 344fd6fb3c669da87e91294be7ee0199bf35c701
RCTTypeSafety: ca608cc1d3a81229632bc0c1136b698b9337c1d8
React: 1d76bae8d73113b202224075f0b0bd546996b328
React-bridging: 2eb62dc8ba31194d285705cb62e24a15753aeaec
React-callinvoker: f3cfb045a0fb185445542555d88b6acf385cbedc
React-Codegen: 808e2d4d4201583ac89fb40d6862aaa26cb88999
React-Core: 82c5392ab182252ce4ffbc16794e0e38b32ea9a1
React-CoreModules: 4e891a6c0a59b01ca8406e041c7e49ab12e51d48
React-cxxreact: 0dc4ba3d97839bd36d422592ddb0bdfa9940a990
React-jsi: dcd936ff5e580dba0d8644ac9ee4ca47bb166df1
React-jsiexecutor: 2cf8ea3753afb81dfcc386613dbbb0b5d155fb34
React-jsinspector: 0eda09e9cf22bbb5dbb1d23143b03a31acf37d67
React-logger: 5997ab008583826c10ffe4e1ff990363e975639d
react-native-update: 2b5ef06bfeaa668614c8deb7ec4d20dcf56f9278
React-perflogger: ec8eef2a8f03ecfa6361c2c5fb9197ef4a29cc85
React-RCTActionSheet: a0c023b86cf4c862fa9c4eb0f6f91fbe878fb2de
React-RCTAnimation: 168d53718c74153947c0109f55900faa64d79439
React-RCTAppDelegate: a8efbab128b34aa07a9491c85a41401210b1bec5
React-RCTBlob: 9bcbfc893bfda9f6b2eb016329d38c0f6366d31a
React-RCTImage: 3fcd4570b4b0f1ac2f4b4b6308dba33ce66c5b50
React-RCTLinking: 1edb8e1bb3fc39bf9e13c63d6aaaa3f0c3d18683
React-RCTNetwork: 500a79e0e0f67678077df727fabba87a55c043e1
React-RCTSettings: cc4414eb84ad756d619076c3999fecbf12896d6f
React-RCTText: 2a34261f3da6e34f47a62154def657546ebfa5e1
React-RCTVibration: 49d531ec8498e0afa2c9b22c2205784372e3d4f3
React-runtimeexecutor: 311feb67600774723fe10eb8801d3138cae9ad67
ReactCommon: 03be76588338a27a88d103b35c3c44a3fd43d136
React-perflogger: ad1416a715d86b32f456e5d0aed99c3b52f1de37
React-RCTActionSheet: cbf7c6a953982562418ee72a1084ff7b9447b558
React-RCTAnimation: 33df3e25824dd7313edec28dded2745542f9352b
React-RCTBlob: 2434411df0d2d0e6567445a995f6678e2cc1d8e3
React-RCTImage: 0b912ab4255ea5ec903d06c77f5a23cea9e9c988
React-RCTLinking: eb239c24f4f5fe79c57a2fedf45f34f40481dda3
React-RCTNetwork: db173a6c35c1212909944920a5aa03eb8b7b9cf4
React-RCTSettings: 687fa7538972467d80cd7729b6f86598e1369813
React-RCTText: 605ef414f8e72bd111945d3612cd0518de612b24
React-RCTVibration: 5462287ee85304ba1a00474665ab292e63a41663
React-runtimeexecutor: 9df680f18497367bcf5c15b6b6406c0f2dfa2b6a
ReactCommon: c10f046f3ef8561e7c8e7e9b9dae2ecc9ffc48ef
SocketRocket: fccef3f9c5cedea1353a9ef6ada904fde10d6608
SSZipArchive: fe6a26b2a54d5a0890f2567b5cc6de5caa600aef
Yoga: 921eb014669cf9c718ada68b08d362517d564e0c
Yoga: d3820731e0ca3a4933f061ad29defaf7726e3251
YogaKit: f782866e155069a2cca2517aafea43200b01fd5a
PODFILE CHECKSUM: 3a4760d7ec3a6ffc7497e8723f29129170c8dc0d
PODFILE CHECKSUM: 618d17df10f335f1d113daac849a7997894646b2
COCOAPODS: 1.11.3

Binary file not shown.

Before

Width:  |  Height:  |  Size: 696 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -1,6 +0,0 @@
#import <RCTAppDelegate.h>
#import <UIKit/UIKit.h>
@interface AppDelegate : RCTAppDelegate
@end

View File

@ -1,38 +0,0 @@
#import "AppDelegate.h"
#import <React/RCTBundleURLProvider.h>
#import "RCTPushy.h"
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.moduleName = @"testHotupdate";
// You can add your custom initial props in the dictionary below.
// They will be passed down to the ViewController used by React Native.
self.initialProps = @{};
return [super application:application didFinishLaunchingWithOptions:launchOptions];
}
- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
{
#if DEBUG
return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"];
#else
// 非DEBUG情况下替换为热更新bundle
return [RCTPushy bundleURL];
#endif
}
/// This method controls whether the `concurrentRoot`feature of React18 is turned on or off.
///
/// @see: https://reactjs.org/blog/2022/03/29/react-v18.html
/// @note: This requires to be rendering on Fabric (i.e. on the New Architecture).
/// @return: `true` if the `concurrentRoot` feature is enabled. Otherwise, it returns `false`.
- (BOOL)concurrentRootEnabled
{
return true;
}
@end

View File

@ -1,5 +1,5 @@
{
"name": "testhotupdate",
"name": "testHotUpdate",
"version": "0.0.1",
"private": true,
"scripts": {
@ -7,35 +7,27 @@
"ios": "react-native run-ios",
"start": "react-native start",
"test": "jest",
"lint": "eslint .",
"apk": "(cd android && ./gradlew aR)"
"test:e2e": "detox test --configuration android.emu.debug",
"lint": "eslint ."
},
"dependencies": {
"react": "18.2.0",
"react-native": "0.71.1",
"patch-package": "^6.5.1",
"react": "18.0.0",
"react-native": "0.69.8",
"react-native-update": "link:../.."
},
"devDependencies": {
"@babel/core": "^7.20.0",
"@babel/preset-env": "^7.20.0",
"@babel/runtime": "^7.20.0",
"@react-native-community/eslint-config": "^3.0.0",
"@tsconfig/react-native": "^2.0.2",
"@types/jest": "^29.2.1",
"@types/react": "^18.0.24",
"@types/react-test-renderer": "^18.0.0",
"babel-jest": "^29.2.1",
"@babel/core": "^7.21.0",
"@babel/runtime": "^7.21.0",
"@react-native-community/eslint-config": "^3.2.0",
"babel-jest": "^29.5.0",
"detox": "^20.5.0",
"eslint": "^8.19.0",
"fs-extra": "^11.1.0",
"jest": "^29.2.1",
"metro-react-native-babel-preset": "0.73.7",
"prettier": "^2.4.1",
"eslint": "^8.36.0",
"jest": "^29.5.0",
"metro-react-native-babel-preset": "^0.76.0",
"prettier": "^2.8.4",
"react-test-renderer": "18.2.0",
"ts-jest": "^29.0.5",
"typescript": "^4.9.5",
"nyc": "^15.0.1",
"pod-install": "^0.1.37"
"ts-jest": "^29.0.5"
},
"jest": {
"preset": "react-native"

View File

@ -0,0 +1,13 @@
diff --git a/node_modules/react-native/scripts/react_native_pods.rb b/node_modules/react-native/scripts/react_native_pods.rb
index e7c59ad..1461d45 100644
--- a/node_modules/react-native/scripts/react_native_pods.rb
+++ b/node_modules/react-native/scripts/react_native_pods.rb
@@ -420,7 +420,7 @@ def get_react_codegen_spec(options={})
'source' => { :git => '' },
'header_mappings_dir' => './',
'platforms' => {
- 'ios' => '11.0',
+ 'ios' => '12.0',
},
'source_files' => "**/*.{h,mm,cpp}",
'pod_target_xcconfig' => { "HEADER_SEARCH_PATHS" =>

View File

@ -1,10 +0,0 @@
#!/usr/bin/env bash
trap 'kill $RN_PID' EXIT
PLATFORM=$1
kill -9 $(lsof -i :8081 | awk '{print $2}' | tail -n +2) & npm start &
RN_PID=$!
sleep 2 && curl>/dev/null http://localhost:8081/index.bundle
wait $RN_PID

View File

@ -3,14 +3,12 @@
import {useCallback, useMemo, useState} from 'react';
import {
ActivityIndicator,
Alert,
Modal,
TextInput,
Button,
StyleSheet,
SafeAreaView,
Text,
ScrollView,
View,
TouchableOpacity,
} from 'react-native';
@ -19,11 +17,31 @@ import {PushyModule} from 'react-native-update';
const Hash = '9D5CE6EBA420717BE7E7D308B11F8207681B066C951D68F3994D19828F342474';
const UUID = '00000000-0000-0000-0000-000000000000';
const DownloadUrl =
'http://cos.pgyer.com/697913e94d7441f20c686e2b0996a1aa.apk?sign=363b035b7ef52c199c268abfacee3712&t=1678603669&response-content-disposition=attachment%3Bfilename%3DtestHotupdate_1.0.apk';
'http://cos.pgyer.com/697913e94d7441f20c686e2b0996a1aa.apk?sign=7a8f11b1df82cba45c8ac30b1acec88c&t=1680404102&response-content-disposition=attachment%3Bfilename%3DtestHotupdate_1.0.apk';
const CustomDialog = ({title, visible, onConfirm}) => {
if (!visible) {
return null;
}
return (
<View style={styles.overlay}>
<View style={styles.dialog}>
<Text style={styles.title}>{title}</Text>
<TouchableOpacity testID='done' style={styles.button} onLongPress={onConfirm}>
<Text style={styles.buttonText}>确认</Text>
</TouchableOpacity>
</View>
</View>
);
};
export default function TestConsole({visible}) {
const [text, setText] = useState('');
const [running, setRunning] = useState(false);
const [options, setOptions] = useState();
const [alertVisible, setAlertVisible] = useState(false);
const [alertMsg, setAlertMsg] = useState('');
const NativeTestMethod = useMemo(() => {
return [
{
@ -71,6 +89,7 @@ export default function TestConsole({visible}) {
name: 'markSuccess',
invoke: () => {
setText('markSuccess');
setOptions(undefined);
},
},
{
@ -111,11 +130,12 @@ export default function TestConsole({visible}) {
<TouchableOpacity
key={i}
testID={NativeTestMethod[i].name}
onPress={() => {
onLongPress={() => {
NativeTestMethod[i].invoke();
}}
style={{width: 10, height: 10}}
/>,
>
<Text>{NativeTestMethod[i].name}</Text>
</TouchableOpacity>,
);
}
return <View>{views}</View>;
@ -143,10 +163,11 @@ export default function TestConsole({visible}) {
onChangeText={setText}
/>
{running && <ActivityIndicator />}
<Button
title="执行"
<TouchableOpacity
style={{backgroundColor:'rgb(0,140,237)', justifyContent: 'center',
alignItems: 'center',paddingTop:10,paddingBottom:10,marginBottom:5}}
testID="submit"
onPress={async () => {
onLongPress={async () => {
setRunning(true);
try {
const inputs = text.split('\n');
@ -167,19 +188,65 @@ export default function TestConsole({visible}) {
}
await PushyModule[methodName](...params);
}
Alert.alert('done');
setAlertVisible(true);
setAlertMsg('done');
} catch (e) {
Alert.alert(e.message);
setAlertVisible(true);
setAlertMsg(e.message);
}
setRunning(false);
}}
/>
<ScrollView style={{marginTop: 15}}>
>
<Text style={{color:'white'}}>执行</Text>
</TouchableOpacity>
<Button title="重置" onPress={() => setText('')} />
{renderTestView()}
</ScrollView>
<CustomDialog
title={alertMsg}
visible={alertVisible}
onConfirm={()=>{setAlertVisible(false)}}
/>
</SafeAreaView>
</Modal>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
},
overlay: {
position: 'absolute',
top: 0,
left: 0,
right: 0,
bottom: 0,
backgroundColor: 'rgba(0, 0, 0, 0.5)',
justifyContent: 'center',
alignItems: 'center',
},
dialog: {
backgroundColor: 'white',
borderRadius: 10,
padding: 20,
width: '80%',
alignItems: 'center',
},
title: {
fontSize: 18,
fontWeight: 'bold',
marginBottom: 20,
},
button: {
backgroundColor: '#2196F3',
borderRadius: 5,
paddingVertical: 10,
paddingHorizontal: 20,
},
buttonText: {
color: 'white',
fontWeight: 'bold',
},
});

File diff suppressed because it is too large Load Diff

View File

@ -169,7 +169,7 @@ public class UpdateModule extends ReactContextBaseJavaModule {
}
@ReactMethod
public void reloadUpdate(ReadableMap options) {
public void reloadUpdate(ReadableMap options, final Promise promise) {
final String hash = options.getString("hash");
UiThreadUtil.runOnUiThread(new Runnable() {
@ -191,6 +191,7 @@ public class UpdateModule extends ReactContextBaseJavaModule {
loadField.setAccessible(true);
loadField.set(instanceManager, loader);
} catch (Throwable err) {
promise.reject(err);
Field jsBundleField = instanceManager.getClass().getDeclaredField("mJSBundleFile");
jsBundleField.setAccessible(true);
jsBundleField.set(instanceManager, UpdateContext.getBundleUrl(application));
@ -198,11 +199,14 @@ public class UpdateModule extends ReactContextBaseJavaModule {
try {
instanceManager.recreateReactContextInBackground();
promise.resolve(null);
} catch (Throwable err) {
activity.recreate();
promise.reject(err);
}
} catch (Throwable err) {
promise.reject(err);
Log.e("pushy", "switchVersion failed", err);
}
}

View File

@ -1 +1 @@
1680264885
1680410620