run_loop 0.1.0.pre1 → 0.1.0.pre2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
 - data/lib/run_loop/core.rb +12 -1
 - data/lib/run_loop/version.rb +1 -1
 - data/scripts/calabash_script_uia.js +2923 -2889
 - data/scripts/run_loop.js +48 -1
 - metadata +2 -2
 
    
        data/scripts/run_loop.js
    CHANGED
    
    | 
         @@ -246,15 +246,62 @@ UIATarget.onAlert = function (alert) { 
     | 
|
| 
       246 
246 
     | 
    
         
             
                return true;
         
     | 
| 
       247 
247 
     | 
    
         
             
            };
         
     | 
| 
       248 
248 
     | 
    
         | 
| 
      
 249 
     | 
    
         
            +
            /*
         
     | 
| 
      
 250 
     | 
    
         
            +
             (defn sanitize
         
     | 
| 
      
 251 
     | 
    
         
            +
             "Removes elements not serializable to preferences"
         
     | 
| 
      
 252 
     | 
    
         
            +
             [x]
         
     | 
| 
      
 253 
     | 
    
         
            +
             
     | 
| 
      
 254 
     | 
    
         
            +
             (cond
         
     | 
| 
      
 255 
     | 
    
         
            +
             (nil? x) ":nil"
         
     | 
| 
      
 256 
     | 
    
         
            +
             (string? x) x
         
     | 
| 
      
 257 
     | 
    
         
            +
             (keyword? x) (name x)
         
     | 
| 
      
 258 
     | 
    
         
            +
             (map? x) (into {}
         
     | 
| 
      
 259 
     | 
    
         
            +
             (map (fn [[k v]]
         
     | 
| 
      
 260 
     | 
    
         
            +
             [k (sanitize v)])
         
     | 
| 
      
 261 
     | 
    
         
            +
             x))
         
     | 
| 
      
 262 
     | 
    
         
            +
             (coll? x) (map sanitize x)
         
     | 
| 
      
 263 
     | 
    
         
            +
             (instance? js/UIAElement x) (.toString x)
         
     | 
| 
      
 264 
     | 
    
         
            +
             :else x))
         
     | 
| 
      
 265 
     | 
    
         
            +
             
     | 
| 
      
 266 
     | 
    
         
            +
             */
         
     | 
| 
       249 
267 
     | 
    
         | 
| 
       250 
268 
     | 
    
         
             
            var target = null,
         
     | 
| 
       251 
269 
     | 
    
         
             
                preferences = null,
         
     | 
| 
       252 
270 
     | 
    
         
             
                __calabashRequest = "__calabashRequest",
         
     | 
| 
       253 
271 
     | 
    
         
             
                __calabashResponse = "__calabashResponse",
         
     | 
| 
      
 272 
     | 
    
         
            +
                _sanitize = function(val) {
         
     | 
| 
      
 273 
     | 
    
         
            +
                    if (typeof val === 'undefined' || val === null || val instanceof UIAElementNil) {
         
     | 
| 
      
 274 
     | 
    
         
            +
                        return ":nil";
         
     | 
| 
      
 275 
     | 
    
         
            +
                    }
         
     | 
| 
      
 276 
     | 
    
         
            +
                    if (typeof val === 'string' || val instanceof String) {
         
     | 
| 
      
 277 
     | 
    
         
            +
                        return val;
         
     | 
| 
      
 278 
     | 
    
         
            +
                    }
         
     | 
| 
      
 279 
     | 
    
         
            +
                    var arrVal = null, i, N;
         
     | 
| 
      
 280 
     | 
    
         
            +
                    if (val instanceof Array || val instanceof UIAElementArray) {
         
     | 
| 
      
 281 
     | 
    
         
            +
                        arrVal = [];
         
     | 
| 
      
 282 
     | 
    
         
            +
                        for (i=0,N=val.length;i<N;i++) {
         
     | 
| 
      
 283 
     | 
    
         
            +
                            arrVal[i] = _sanitize(val[i]);
         
     | 
| 
      
 284 
     | 
    
         
            +
                        }
         
     | 
| 
      
 285 
     | 
    
         
            +
                        return arrVal;
         
     | 
| 
      
 286 
     | 
    
         
            +
                    }
         
     | 
| 
      
 287 
     | 
    
         
            +
                    if (val instanceof UIAElement) {
         
     | 
| 
      
 288 
     | 
    
         
            +
                        return val.toString();
         
     | 
| 
      
 289 
     | 
    
         
            +
                    }
         
     | 
| 
      
 290 
     | 
    
         
            +
                    var objVal = null, p;
         
     | 
| 
      
 291 
     | 
    
         
            +
                    if (typeof val == 'object') {
         
     | 
| 
      
 292 
     | 
    
         
            +
                        objVal = {};
         
     | 
| 
      
 293 
     | 
    
         
            +
                        for (p in val) {
         
     | 
| 
      
 294 
     | 
    
         
            +
                            objVal[p] = _sanitize(val[p]);
         
     | 
| 
      
 295 
     | 
    
         
            +
                        }
         
     | 
| 
      
 296 
     | 
    
         
            +
                        return objVal;
         
     | 
| 
      
 297 
     | 
    
         
            +
                    }
         
     | 
| 
      
 298 
     | 
    
         
            +
                    return val;
         
     | 
| 
      
 299 
     | 
    
         
            +
                },
         
     | 
| 
       254 
300 
     | 
    
         
             
                _response = function(response) {
         
     | 
| 
       255 
     | 
    
         
            -
                    target.frontMostApp().setPreferencesValueForKey(response, __calabashResponse);
         
     | 
| 
      
 301 
     | 
    
         
            +
                    target.frontMostApp().setPreferencesValueForKey(_sanitize(response), __calabashResponse);
         
     | 
| 
       256 
302 
     | 
    
         
             
                },
         
     | 
| 
       257 
303 
     | 
    
         
             
                _success = function(result,index) {
         
     | 
| 
      
 304 
     | 
    
         
            +
             
     | 
| 
       258 
305 
     | 
    
         
             
                    _response({"status":'success', "value":result, "index": index});
         
     | 
| 
       259 
306 
     | 
    
         | 
| 
       260 
307 
     | 
    
         
             
                },
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: run_loop
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.1.0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.1.0.pre2
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Karl Krukow
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2013-11- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2013-11-25 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: thor
         
     |