Skip to content

Commit c25edc2

Browse files
author
Nicolas Gramlich
committed
Initial code for GLES2 branch.
1 parent a2e341b commit c25edc2

File tree

11 files changed

+304
-0
lines changed

11 files changed

+304
-0
lines changed

.classpath

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<classpath>
3+
<classpathentry kind="src" path="src"/>
4+
<classpathentry kind="src" path="gen"/>
5+
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
6+
<classpathentry kind="lib" path="lib/robotium-solo-3.0-beta-1.jar" sourcepath="/Users/ngramlich/Workspace/gdk/Robotium/robotium-solo/src"/>
7+
<classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
8+
<classpathentry combineaccessrules="false" kind="src" path="/AndEngine"/>
9+
<classpathentry combineaccessrules="false" kind="src" path="/AndEngineRobotiumExtension"/>
10+
<classpathentry combineaccessrules="false" kind="src" path="/AndEngineRobotiumExtensionExample"/>
11+
<classpathentry kind="output" path="bin/classes"/>
12+
</classpath>

.project

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<projectDescription>
3+
<name>AndEngineRobotiumExtensionExampleTest</name>
4+
<comment></comment>
5+
<projects>
6+
<project>AndroidCalculator</project>
7+
</projects>
8+
<buildSpec>
9+
<buildCommand>
10+
<name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>
11+
<arguments>
12+
</arguments>
13+
</buildCommand>
14+
<buildCommand>
15+
<name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>
16+
<arguments>
17+
</arguments>
18+
</buildCommand>
19+
<buildCommand>
20+
<name>org.eclipse.jdt.core.javabuilder</name>
21+
<arguments>
22+
</arguments>
23+
</buildCommand>
24+
<buildCommand>
25+
<name>com.android.ide.eclipse.adt.ApkBuilder</name>
26+
<arguments>
27+
</arguments>
28+
</buildCommand>
29+
</buildSpec>
30+
<natures>
31+
<nature>com.android.ide.eclipse.adt.AndroidNature</nature>
32+
<nature>org.eclipse.jdt.core.javanature</nature>
33+
</natures>
34+
</projectDescription>

AndroidManifest.xml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3+
package="org.andengine.extension.robotium.example.test"
4+
android:versionCode="1"
5+
android:versionName="1.0">
6+
7+
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
8+
9+
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="8"/>
10+
11+
<application android:debuggable="true">
12+
<uses-library android:name="android.test.runner"/>
13+
</application>
14+
15+
<instrumentation android:targetPackage="org.andengine.extension.robotium.example" android:name="android.test.InstrumentationTestRunner"/>
16+
</manifest>

ant.properties

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# This file is used to override default values used by the Ant build system.
2+
#
3+
# This file must be checked in Version Control Systems, as it is
4+
# integral to the build system of your project.
5+
6+
# This file is only used by the Ant script.
7+
8+
# You can use this to override default values such as
9+
# 'source.dir' for the location of your java source folder and
10+
# 'out.dir' for the location of your output folder.
11+
12+
# You can also use it define how the release builds are signed by declaring
13+
# the following properties:
14+
# 'key.store' for the location of your keystore and
15+
# 'key.alias' for the name of the key to use.
16+
# The password will be asked during the build when you use the 'release' target.
17+
18+
tested.project.dir=../AndEngineRobotiumExtensionExample

build.xml

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project name="AndEngineRobotiumExtensionExampleTest" default="help">
3+
4+
<!-- The local.properties file is created and updated by the 'android' tool.
5+
It contains the path to the SDK. It should *NOT* be checked into
6+
Version Control Systems. -->
7+
<property file="local.properties" />
8+
9+
<!-- The ant.properties file can be created by you. It is only edited by the
10+
'android' tool to add properties to it.
11+
This is the place to change some Ant specific build properties.
12+
Here are some properties you may want to change/update:
13+
14+
source.dir
15+
The name of the source directory. Default is 'src'.
16+
out.dir
17+
The name of the output directory. Default is 'bin'.
18+
19+
For other overridable properties, look at the beginning of the rules
20+
files in the SDK, at tools/ant/build.xml
21+
22+
Properties related to the SDK location or the project target should
23+
be updated using the 'android' tool with the 'update' action.
24+
25+
This file is an integral part of the build system for your
26+
application and should be checked into Version Control Systems.
27+
28+
-->
29+
<property file="ant.properties" />
30+
31+
<!-- The project.properties file is created and updated by the 'android'
32+
tool, as well as ADT.
33+
34+
This contains project specific properties such as project target, and library
35+
dependencies. Lower level build properties are stored in ant.properties
36+
(or in .classpath for Eclipse projects).
37+
38+
This file is an integral part of the build system for your
39+
application and should be checked into Version Control Systems. -->
40+
<loadproperties srcFile="project.properties" />
41+
42+
<!-- quick check on sdk.dir -->
43+
<fail
44+
message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var"
45+
unless="sdk.dir"
46+
/>
47+
48+
49+
<!-- extension targets. Uncomment the ones where you want to do custom work
50+
in between standard targets -->
51+
<!--
52+
<target name="-pre-build">
53+
</target>
54+
<target name="-pre-compile">
55+
</target>
56+
57+
/* This is typically used for code obfuscation.
58+
Compiled code location: ${out.classes.absolute.dir}
59+
If this is not done in place, override ${out.dex.input.absolute.dir} */
60+
<target name="-post-compile">
61+
</target>
62+
-->
63+
64+
<!-- Import the actual build file.
65+
66+
To customize existing targets, there are two options:
67+
- Customize only one target:
68+
- copy/paste the target into this file, *before* the
69+
<import> task.
70+
- customize it to your needs.
71+
- Customize the whole content of build.xml
72+
- copy/paste the content of the rules files (minus the top node)
73+
into this file, replacing the <import> task.
74+
- customize to your needs.
75+
76+
***********************
77+
****** IMPORTANT ******
78+
***********************
79+
In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
80+
in order to avoid having your file be overridden by tools such as "android update project"
81+
-->
82+
<!-- version-tag: 1 -->
83+
<import file="${sdk.dir}/tools/ant/build.xml" />
84+
85+
</project>

lib/andengine.jar

842 KB
Binary file not shown.

lib/andenginerobotiumextension.jar

4.54 KB
Binary file not shown.

lib/robotium-solo-3.0-beta-1.jar

47.8 KB
Binary file not shown.

proguard.cfg

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
-optimizationpasses 5
2+
-dontusemixedcaseclassnames
3+
-dontskipnonpubliclibraryclasses
4+
-dontpreverify
5+
-verbose
6+
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
7+
8+
-keep public class * extends android.app.Activity
9+
-keep public class * extends android.app.Application
10+
-keep public class * extends android.app.Service
11+
-keep public class * extends android.content.BroadcastReceiver
12+
-keep public class * extends android.content.ContentProvider
13+
-keep public class * extends android.app.backup.BackupAgentHelper
14+
-keep public class * extends android.preference.Preference
15+
-keep public class com.android.vending.licensing.ILicensingService
16+
17+
-keepclasseswithmembernames class * {
18+
native <methods>;
19+
}
20+
21+
-keepclasseswithmembers class * {
22+
public <init>(android.content.Context, android.util.AttributeSet);
23+
}
24+
25+
-keepclasseswithmembers class * {
26+
public <init>(android.content.Context, android.util.AttributeSet, int);
27+
}
28+
29+
-keepclassmembers class * extends android.app.Activity {
30+
public void *(android.view.View);
31+
}
32+
33+
-keepclassmembers enum * {
34+
public static **[] values();
35+
public static ** valueOf(java.lang.String);
36+
}
37+
38+
-keep class * implements android.os.Parcelable {
39+
public static final android.os.Parcelable$Creator *;
40+
}

project.properties

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# This file is automatically generated by Android Tools.
2+
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
3+
#
4+
# This file must be checked in Version Control Systems.
5+
#
6+
# To customize properties used by the Ant build system use,
7+
# "ant.properties", and override values to adapt the script to your
8+
# project structure.
9+
10+
# Project target.
11+
target=android-8
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
package org.andengine.extension.robotium.example.test;
2+
3+
import junit.framework.Assert;
4+
5+
import org.andengine.entity.sprite.Sprite;
6+
import org.andengine.extension.robotium.AndEngineSolo;
7+
import org.andengine.extension.robotium.example.AndEngineRobotiumExtensionExample;
8+
import org.andengine.extension.robotium.example.RobotiumDebugTags;
9+
10+
import android.test.ActivityInstrumentationTestCase2;
11+
12+
13+
/**
14+
* (c) Zynga 2012
15+
*
16+
* @author Nicolas Gramlich <[email protected]>
17+
* @since 15:08:53 - 14.02.2012
18+
*/
19+
public class AndEngineRobotiumExtensionExampleTest extends ActivityInstrumentationTestCase2<AndEngineRobotiumExtensionExample> implements RobotiumDebugTags {
20+
// ===========================================================
21+
// Constants
22+
// ===========================================================
23+
24+
// ===========================================================
25+
// Fields
26+
// ===========================================================
27+
28+
private AndEngineSolo mAndEngineSolo;
29+
30+
// ===========================================================
31+
// Constructors
32+
// ===========================================================
33+
34+
public AndEngineRobotiumExtensionExampleTest() {
35+
super("org.andengine.extension.robotium.example", AndEngineRobotiumExtensionExample.class);
36+
}
37+
38+
@Override
39+
protected void setUp() throws Exception {
40+
super.setUp();
41+
42+
this.mAndEngineSolo = new AndEngineSolo(this.getInstrumentation(), this.getActivity());
43+
}
44+
45+
@Override
46+
protected void tearDown() throws Exception {
47+
this.mAndEngineSolo.finishOpenedActivities();
48+
49+
super.tearDown();
50+
}
51+
52+
// ===========================================================
53+
// Getter & Setter
54+
// ===========================================================
55+
56+
// ===========================================================
57+
// Methods for/from SuperClass/Interfaces
58+
// ===========================================================
59+
60+
// ===========================================================
61+
// Methods
62+
// ===========================================================
63+
64+
public void testDisplayBlackBox() {
65+
/* Enter 10 in first edittext. */
66+
this.mAndEngineSolo.enterText(0, "10");
67+
68+
/* Enter 20 in first edittext. */
69+
this.mAndEngineSolo.enterText(1, "20");
70+
71+
/* Click on Multiply button. */
72+
this.mAndEngineSolo.clickOnButton("Multiply");
73+
74+
/* Verify result is 200. */
75+
Assert.assertTrue(this.mAndEngineSolo.searchText("200"));
76+
77+
/* AndEngine specific tests. */
78+
this.mAndEngineSolo.clickOnEntity(Sprite.class, RobotiumDebugTags.ROBOTIUM_TAG_BOX);
79+
80+
this.mAndEngineSolo.sleep(100);
81+
82+
Assert.assertFalse(this.mAndEngineSolo.isEntityVisible(Sprite.class, RobotiumDebugTags.ROBOTIUM_TAG_BOX));
83+
}
84+
85+
// ===========================================================
86+
// Inner and Anonymous Classes
87+
// ===========================================================
88+
}

0 commit comments

Comments
 (0)