diff --git a/tests/react-test-app/index.android.js b/tests/react-test-app/index.android.js index e5a52d27..de9dfd47 100644 --- a/tests/react-test-app/index.android.js +++ b/tests/react-test-app/index.android.js @@ -1,10 +1,12 @@ -/** - * Sample React Native App - * https://github.com/facebook/react-native +/* Copyright 2015 Realm Inc - All Rights Reserved + * Proprietary and Confidential */ 'use strict'; var React = require('react-native'); +var Realm = require('realm'); +var RealmTests = require('realm-tests'); + var { AppRegistry, StyleSheet, @@ -12,41 +14,73 @@ var { View, } = React; +function runTests() { + let testNames = RealmTests.getTestNames(); + + for (let suiteName in testNames) { + let testSuite = RealmTests[suiteName]; + + console.log('Starting ' + suiteName); + + for (let testName of testNames[suiteName]) { + if (testSuite.beforeEach) { + testSuite.beforeEach(); + } + + try { + testSuite[testName](); + console.log('+ ' + testName); + } + catch (e) { + console.log('- ' + testName); + console.warn(e); + } + finally { + if (testSuite.afterEach) { + testSuite.afterEach(); + } + } + } + } +} + var ReactTests = React.createClass({ - render: function() { - return ( - - - Welcome to React Native! - - - To get started, edit index.android.js - - - Shake or press menu button for dev menu - - - ); - } + render() { + return ( + + + Tap to Run Tests + + + Press Cmd+R to reload,{'\n'} + Cmd+D or shake for dev menu + + + ); + } }); var styles = StyleSheet.create({ - container: { - flex: 1, - justifyContent: 'center', - alignItems: 'center', - backgroundColor: '#F5FCFF', - }, - welcome: { - fontSize: 20, - textAlign: 'center', - margin: 10, - }, - instructions: { - textAlign: 'center', - color: '#333333', - marginBottom: 5, - }, + container: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + backgroundColor: '#F5FCFF', + }, + button: { + borderColor: '#cccccc', + borderRadius: 4, + borderWidth: 1, + fontSize: 20, + textAlign: 'center', + margin: 20, + padding: 10, + }, + instructions: { + textAlign: 'center', + color: '#333333', + marginBottom: 5, + }, }); AppRegistry.registerComponent('ReactTests', () => ReactTests);