calabash-android 0.0.15 → 0.0.16

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,7 @@
1
+ 0.0.16:
2
+ Clears text when calling set_text in a webview.
3
+ Added set_text helper method to support.
4
+
1
5
  0.0.15:
2
6
  Prefixes screenshots with feature name
3
7
 
@@ -120,6 +120,8 @@ Presses the image button by index.
120
120
  Then /^I press view with id "([^\"]*)"$/
121
121
 
122
122
  Looks for a view with the provided id. If it is found and visible tries to click it.
123
+ Note that use the short name and not the fully quantified name. That means if your id
124
+ is 'com.foo.R.id.bar_label' you would use 'I press view with id "bar_label"'.
123
125
 
124
126
  Then /^I press "([^\"]*)"$/ do |identifier|
125
127
  Will look for a view in the following order:
@@ -165,6 +167,8 @@ Waits for a particular screen (Android Activity) to appear.
165
167
 
166
168
  Then /^I wait for the view with id "([^\"]*)" to appear$/ do |text|
167
169
  Waits for a view view that id to appear.
170
+ Note that use the short name and not the fully quantified name. That means if your id
171
+ is 'com.foo.R.id.bar_label' you would use 'I press view with id "bar_label"'.
168
172
 
169
173
  Then /^I wait upto (\d+) seconds for the "([^\"]*)" screen to appear$/
170
174
  Waits for a particular screen (Android Activity) to appear with a timeout.
@@ -78,7 +78,7 @@ module Operations
78
78
  end
79
79
 
80
80
  def query(uiquery, *args)
81
- raise "Currently only queries are only supported for webviews" unless uiquery.start_with? "webView"
81
+ raise "Currently queries are only supported for webviews" unless uiquery.start_with? "webView"
82
82
 
83
83
  uiquery.slice!(0, "webView".length)
84
84
  if uiquery =~ /(css|xpath):\s*(.*)/
@@ -169,7 +169,15 @@ module Operations
169
169
 
170
170
 
171
171
  def set_text(uiquery, txt)
172
- ni
172
+ raise "Currently queries are only supported for webviews" unless uiquery.start_with? "webView"
173
+
174
+ uiquery.slice!(0, "webView".length)
175
+ if uiquery =~ /(css|xpath):\s*(.*)/
176
+ r = performAction("set_text", $1, $2, txt)
177
+ JSON.parse(r["message"])
178
+ else
179
+ raise "Invalid query #{uiquery}"
180
+ end
173
181
  end
174
182
 
175
183
 
@@ -1,6 +1,6 @@
1
1
  module Calabash
2
2
  module Android
3
- VERSION = "0.0.15"
4
- FRAMEWORK_VERSION = "0.0.15"
3
+ VERSION = "0.0.16"
4
+ FRAMEWORK_VERSION = "0.0.16"
5
5
  end
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: calabash-android
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.15
4
+ version: 0.0.16
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-06-06 00:00:00.000000000 Z
12
+ date: 2012-06-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: cucumber
@@ -120,7 +120,6 @@ files:
120
120
  - test-server/build.xml
121
121
  - test-server/instrumentation-backend/.classpath
122
122
  - test-server/instrumentation-backend/.project
123
- - test-server/instrumentation-backend/.settings/org.eclipse.jdt.core.prefs
124
123
  - test-server/instrumentation-backend/AndroidManifest.xml
125
124
  - test-server/instrumentation-backend/assets/foo.bar
126
125
  - test-server/instrumentation-backend/gen/com/lesspainful/simpleui/test/R.java
@@ -393,8 +392,6 @@ files:
393
392
  - test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/UntypedObjectDeserializer.java
394
393
  - test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/deser/std/package-info.java
395
394
  - test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/exc/UnrecognizedPropertyException.java
396
- - test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ext/CoreXMLDeserializers.java
397
- - test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ext/CoreXMLSerializers.java
398
395
  - test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ext/DOMDeserializer.java
399
396
  - test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ext/OptionalHandlerFactory.java
400
397
  - test-server/instrumentation-backend/src/sh/calaba/org/codehaus/jackson/map/ext/package-info.java
@@ -1,12 +0,0 @@
1
- #Mon Mar 19 14:45:07 BRT 2012
2
- eclipse.preferences.version=1
3
- org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
4
- org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
5
- org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
6
- org.eclipse.jdt.core.compiler.compliance=1.6
7
- org.eclipse.jdt.core.compiler.debug.lineNumber=generate
8
- org.eclipse.jdt.core.compiler.debug.localVariable=generate
9
- org.eclipse.jdt.core.compiler.debug.sourceFile=generate
10
- org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
11
- org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
12
- org.eclipse.jdt.core.compiler.source=1.6
@@ -1,114 +0,0 @@
1
- package sh.calaba.org.codehaus.jackson.map.ext;
2
-
3
- import java.io.IOException;
4
- import java.util.*;
5
-
6
- import javax.xml.datatype.DatatypeConfigurationException;
7
- import javax.xml.datatype.DatatypeFactory;
8
- import javax.xml.datatype.Duration;
9
- import javax.xml.datatype.XMLGregorianCalendar;
10
- import javax.xml.namespace.QName;
11
-
12
- import sh.calaba.org.codehaus.jackson.JsonParser;
13
- import sh.calaba.org.codehaus.jackson.JsonProcessingException;
14
- import sh.calaba.org.codehaus.jackson.map.DeserializationContext;
15
- import sh.calaba.org.codehaus.jackson.map.deser.std.FromStringDeserializer;
16
- import sh.calaba.org.codehaus.jackson.map.deser.std.StdDeserializer;
17
- import sh.calaba.org.codehaus.jackson.map.deser.std.StdScalarDeserializer;
18
- import sh.calaba.org.codehaus.jackson.map.util.Provider;
19
-
20
- /**
21
- * Container deserializers that handle "core" XML types: ones included in standard
22
- * JDK 1.5. Types are directly needed by JAXB, and are thus supported within core
23
- * mapper package, not in "xc" package.
24
- *
25
- * @since 1.3
26
- */
27
- public class CoreXMLDeserializers
28
- implements Provider<StdDeserializer<?>>
29
- {
30
- /**
31
- * Data type factories are thread-safe after instantiation (and
32
- * configuration, if any); and since instantion (esp. implementation
33
- * introspection) can be expensive we better reuse the instance.
34
- */
35
- final static DatatypeFactory _dataTypeFactory;
36
- static {
37
- try {
38
- _dataTypeFactory = DatatypeFactory.newInstance();
39
- } catch (DatatypeConfigurationException e) {
40
- throw new RuntimeException(e);
41
- }
42
- }
43
-
44
- /*
45
- /**********************************************************
46
- /* Provider implementation
47
- /**********************************************************
48
- */
49
-
50
- /**
51
- * Method called by {@link sh.calaba.org.codehaus.jackson.map.deser.BasicDeserializerFactory}
52
- * to register deserializers this class provides.
53
- */
54
- @Override
55
- public Collection<StdDeserializer<?>> provide()
56
- {
57
- return Arrays.asList(new StdDeserializer<?>[] {
58
- new DurationDeserializer()
59
- ,new GregorianCalendarDeserializer()
60
- ,new QNameDeserializer()
61
- });
62
- }
63
-
64
- /*
65
- /**********************************************************
66
- /* Concrete deserializers
67
- /**********************************************************
68
- */
69
-
70
- public static class DurationDeserializer
71
- extends FromStringDeserializer<Duration>
72
- {
73
- public DurationDeserializer() { super(Duration.class); }
74
-
75
- @Override
76
- protected Duration _deserialize(String value, DeserializationContext ctxt)
77
- throws IllegalArgumentException
78
- {
79
- return _dataTypeFactory.newDuration(value);
80
- }
81
- }
82
-
83
- public static class GregorianCalendarDeserializer
84
- extends StdScalarDeserializer<XMLGregorianCalendar>
85
- {
86
- public GregorianCalendarDeserializer() { super(XMLGregorianCalendar.class); }
87
-
88
- @Override
89
- public XMLGregorianCalendar deserialize(JsonParser jp, DeserializationContext ctxt)
90
- throws IOException, JsonProcessingException
91
- {
92
- Date d = _parseDate(jp, ctxt);
93
- if (d == null) {
94
- return null;
95
- }
96
- GregorianCalendar calendar = new GregorianCalendar();
97
- calendar.setTime(d);
98
- return _dataTypeFactory.newXMLGregorianCalendar(calendar);
99
- }
100
- }
101
-
102
- public static class QNameDeserializer
103
- extends FromStringDeserializer<QName>
104
- {
105
- public QNameDeserializer() { super(QName.class); }
106
-
107
- @Override
108
- protected QName _deserialize(String value, DeserializationContext ctxt)
109
- throws IllegalArgumentException
110
- {
111
- return QName.valueOf(value);
112
- }
113
- }
114
- }
@@ -1,72 +0,0 @@
1
- package sh.calaba.org.codehaus.jackson.map.ext;
2
-
3
- import java.io.IOException;
4
- import java.lang.reflect.Type;
5
- import java.util.Collection;
6
- import java.util.HashMap;
7
- import java.util.Map;
8
-
9
- import javax.xml.datatype.Duration;
10
- import javax.xml.datatype.XMLGregorianCalendar;
11
- import javax.xml.namespace.QName;
12
-
13
- import sh.calaba.org.codehaus.jackson.JsonGenerationException;
14
- import sh.calaba.org.codehaus.jackson.JsonGenerator;
15
- import sh.calaba.org.codehaus.jackson.JsonNode;
16
- import sh.calaba.org.codehaus.jackson.map.JsonMappingException;
17
- import sh.calaba.org.codehaus.jackson.map.JsonSerializer;
18
- import sh.calaba.org.codehaus.jackson.map.SerializerProvider;
19
- import sh.calaba.org.codehaus.jackson.map.ser.std.CalendarSerializer;
20
- import sh.calaba.org.codehaus.jackson.map.ser.std.SerializerBase;
21
- import sh.calaba.org.codehaus.jackson.map.ser.std.ToStringSerializer;
22
- import sh.calaba.org.codehaus.jackson.map.util.Provider;
23
-
24
- /**
25
- * Provider for serializers of XML types that are part of full JDK 1.5, but
26
- * that some alleged 1.5 platforms are missing (Android, GAE).
27
- * And for this reason these are added using more dynamic mechanism.
28
- *<p>
29
- * Note: since many of classes defined are abstract, caller must take
30
- * care not to just use straight equivalency check but rather consider
31
- * subclassing as well.
32
- *
33
- * @since 1.4
34
- */
35
- public class CoreXMLSerializers
36
- implements Provider<Map.Entry<Class<?>,JsonSerializer<?>>>
37
- {
38
- final static HashMap<Class<?>,JsonSerializer<?>> _serializers = new HashMap<Class<?>,JsonSerializer<?>>();
39
- /**
40
- * We will construct instances statically, during class loading, to try to
41
- * make things fail-fast, i.e. to catch problems as soon as possible.
42
- */
43
- static {
44
- ToStringSerializer tss = ToStringSerializer.instance;
45
- _serializers.put(Duration.class, tss);
46
- _serializers.put(XMLGregorianCalendar.class, new XMLGregorianCalendarSerializer());
47
- _serializers.put(QName.class, tss);
48
- }
49
-
50
- @Override
51
- public Collection<Map.Entry<Class<?>,JsonSerializer<?>>> provide() {
52
- return _serializers.entrySet();
53
- }
54
-
55
- public static class XMLGregorianCalendarSerializer extends SerializerBase<XMLGregorianCalendar>
56
- {
57
- public XMLGregorianCalendarSerializer() {
58
- super(XMLGregorianCalendar.class);
59
- }
60
-
61
- @Override
62
- public void serialize(XMLGregorianCalendar value, JsonGenerator jgen, SerializerProvider provider)
63
- throws IOException, JsonGenerationException {
64
- CalendarSerializer.instance.serialize(value.toGregorianCalendar(), jgen, provider);
65
- }
66
-
67
- @Override
68
- public JsonNode getSchema(SerializerProvider provider, Type typeHint) throws JsonMappingException {
69
- return CalendarSerializer.instance.getSchema(provider, typeHint);
70
- }
71
- }
72
- }