Alloy includes a simple jake app-runner script that you can use to test the sample apps (the test apps included with Alloy). You must run the jake app:run command from your Alloy repo directory. It requires one additional argument -- dir -- which points to the app's folder within test/apps.
In general form:
# general form
jake app:run dir=folder/appname
# for example
jake app:run dir=ui/tableviewYou can pass any command-line argument supported by the ti build command (see the docs) with these caveats:
- Do not include the single or double-dashes specified by the
ti buildcommand docs. - You must separate the argument and values with an equals sign, not a space.
- The
porplatformargument defaults toiphonefor OS X users andandroidfor Windows or Linux users. So, you can omit that argument if the default is suitable. - If the
ti buildoption expects no value (such as its--tallflag), you must specify atruevalue when using it with thejakecommand. - You can use either the
sdkortiversionargument to specify the CLI version to use with the build command. See note below.
Starting with SDK 3.4.0 and Xcode 6, you must target a desired simulator by its UUID.
# to get a list of UUIDs
ti info -t ios
# then build to a specific one
# this UUID corresponds to an iPad2 sim on my system
jake app:run dir=basics/simple C=A3B8061E-3F77-45B3-A697-509C46213B5FAs with iOS simulators, you can target specific Android emulators; you do so by device name.
# to get a list of device names
ti info -t android
# then build to a specific one
# make sure to use quotes if the name has spaces
jake app:run dir=basics/simple platform=android C="Google Galaxy Nexus - 4.3 - API 18 - 720x1280"In your repo clone, you will find many test apps that correspond to Alloy Jira tickets. We use these when functionally testing Alloy changes. Because we run them so often, there's a shortcut syntax:
# for the Jira apps, the dir= part is optional
jake app:run dir=ALOY-1000The sdk argument to ti build specifies the version of the CLI that will be used to parse the tiapp.xml file. It does not override the sdk-version value specified in the tiapp.xml.
However, for the Alloy testing apps only, that argument will specify the sdk-version. That's because those testing apps do not have an <sdk-version> tag in their tiapp.xml file (see projects/HarnessTemplate/tiapp.xml).
For the Alloy test apps, the SDK version used to build your apps is determined by either the command-line argument you supply to the jake command or the value you have set with the ti sdk select command.