react-native-firebase/bridge
Salakar 4fd2e74cb2 [tests][config] add platform conditional for setDefaultsFromResource (android expects a double) 2018-04-09 20:53:06 +01:00
..
android [bridge] misc 2018-04-03 05:20:20 +01:00
e2e [tests][config] add platform conditional for setDefaultsFromResource (android expects a double) 2018-04-09 20:53:06 +01:00
helpers [tests] replace console.log so we can skip deprecation warnings during testing 2018-04-09 20:11:49 +01:00
ios [bridge] misc version updates 2018-03-29 23:15:03 +01:00
.babelrc [tests] fix coverage 2018-04-09 11:11:42 +01:00
.buckconfig rename new tests directory and add to npmignore 2018-03-28 16:43:51 +01:00
.editorconfig rename new tests directory and add to npmignore 2018-03-28 16:43:51 +01:00
.eslintrc rename new tests directory and add to npmignore 2018-03-28 16:43:51 +01:00
.flowconfig rename new tests directory and add to npmignore 2018-03-28 16:43:51 +01:00
.gitignore rename new tests directory and add to npmignore 2018-03-28 16:43:51 +01:00
.watchmanconfig rename new tests directory and add to npmignore 2018-03-28 16:43:51 +01:00
README.md rename new tests directory and add to npmignore 2018-03-28 16:43:51 +01:00
app.js [bridge] import RNF from project directory directly via module alias + metro config 2018-03-30 17:09:32 +01:00
index.android.js rename new tests directory and add to npmignore 2018-03-28 16:43:51 +01:00
index.js rename new tests directory and add to npmignore 2018-03-28 16:43:51 +01:00
package-lock.json [tests] added admin sdk + jsonwebtoken 2018-04-09 17:27:23 +01:00
package.json [tests] exclude utils/emitter from coverage 2018-04-09 19:02:38 +01:00
rn-cli.config.js [bridge] import RNF from project directory directly via module alias + metro config 2018-03-30 17:09:32 +01:00

README.md

React Native Firebase - Testing Project

Requirements

  • Make sure you have Xcode installed (tested with Xcode 8.1-8.2).
  • make sure you have node installed (brew install node, node 7.6.0 and up is required.
  • Make sure you have react-native dependencies installed:
    • react-native-cli is installed (npm install -g react-native-cli)
    • watchman is installed (brew install watchman)
    • appleSimUtils
    • detox-cli npm install -g detox-cli

Step 1: Npm install

  • Run npm install.

To test Release build of your app

Step 2: Build

  • Build the demo project
detox build --configuration ios.sim.release

Step 3: Test

  • Run tests on the demo project
detox test --configuration ios.sim.release

This action will open a new simulator and run the tests on it.

To test Debug build of your app

Step 2: Build

  • Build the demo project
detox build --configuration ios.sim.debug

Step 3: Test

  • start react-native packager
npm run start
  • Run tests on the demo project
detox test --configuration ios.sim.debug

This action will open a new simulator and run the tests on it.

TODO - Troubleshooting

Gradle issues... https://stackoverflow.com/questions/46917365/error-could-not-initialize-class-com-android-sdklib-repository-androidsdkhandle?rq=1

mac: export JAVA_HOME="/Applications/Android Studio.app/Contents/jre/jdk/Contents/Home" windows "C://Program Files/Java/jdk_1.x_"

android sdk root export ANDROID_SDK_ROOT="/Users/mike/Library/Android/sdk"

Add platform-tools to your path

echo 'export ANDROID_HOME=/Users/$USER/Library/Android/sdk' >> ~/.bash_profile echo 'export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools' >> ~/.bash_profile

Name: TestingAVD

CPU/ABI: null (null)

Path: /Users/mike/.android/avd/Actually_THIS_one.avd

Error: Failed to parse properties from /Users/mike/.android/avd/Actually_THIS_one.avd/config.ini

Running specific tests

Add a --grep to e2e/mocha.opts file, e.g. --grep auth for all tests that have auth in the file path or tests descriptions.

Running Node debugger

Add --inspect to e2e/mocha.opts file

To open node debugger tools on chrome navigate to chrome://inspect/#devices and click the Open dedicated DevTools for Node link.

Add the default connection of localhost:9229 if you haven't already - then the debugger will automatically connect everytime you start tests with inspect flag.

Mocha options

See https://mochajs.org/#usage