tests/soup.js
[gitlive] / tests / soup.js
index 9999255..40ed81d 100644 (file)
@@ -1,51 +1,34 @@
 #!/usr/bin/env seed
 
 Soup = imports.gi.Soup;
+Netrc = imports['../Netrc.js'].Netrc;
+
 GLib = imports.gi.GLib;
 
 var session = new Soup.SessionSync();
 File  = imports['../File.js'].File;
 
-var netrc = File.read(GLib.get_home_dir() + "/.netrc");
-var authdata = {};
-netrc.split("\n").forEach(function(nl) {
-    var line = {};
-    var k = false
-     
-    nl.replace(/\s+$/,'').replace(/^\s+/,'').split(/\s+/).forEach(function(kv) {
-      
-        if (!k) {
-            k = kv;
-            return
-        }
-        line[k] = kv
-        k = false;
-   });
-       
-   authdata[line.machine] = line;
-    
-});
  
 // Soup.URI is a struct.
-var uri = new Soup.URI.c_new("http://www.roojs.com/admin.php/Events");
+var uri = new Soup.URI.c_new("http://www.roojs.com/admin.php/Roo/Events");
 //var uri = new Soup.URI.c_new("http://www.roojs.com/head.php");
 
 var msg = new Soup.Message({method:"POST", uri:uri});
 //var msg = new Soup.Message({method:"GET", uri:uri});
 
 // post..
-buftxt =  "remarks=test"
-var buf = new Soup.Buffer.c_new(buftxt, buftxt.length);
-msg.request_body.append_buffer(buf);
+buftxt =  "remarks=test";
+msg.set_request('application/x-www-form-urlencoded', Soup.MemoryUse.COPY, buftxt, buftxt.length)
 
 
 var auth = new Soup.Auth.c_new(Soup.AuthBasic.type, msg, "Basic realm=\"Test\"");
-print(auth);
-print(auth.authenticate);
-var authvals = authdata['git.roojs.com'];
+var authvals = Netrc.forHost('git.roojs.com');
+
 auth.authenticate(authvals.login ,authvals.password);
 var authmsg = auth.get_authorization(msg);
-print(authmsg);
+//print(authmsg);
 msg.request_headers.append('Authorization', authmsg)
 
 //request.headers_append...
@@ -57,3 +40,92 @@ var status = session.send_message(msg);
 print(status);
 
 print(msg.response_body.data);
+
+
+function XMLHttpRequest() {
+    
+    
+}
+
+XObject.extend(XMLHttpRequest,{ 
+    // event handlers
+    //onreadystatechange;
+    //onloadstart;
+    //onprogress;
+    //onabort;
+    //onerror;
+    //onload;
+    //ontimeout;
+    //onloadend;
+    
+    timeout : 0,
+    withCredentials : false,
+    
+    // states
+    UNSENT : 0,
+    OPENED : 1,
+    HEADERS_RECEIVED : 2,
+    LOADING : 3,
+    DONE : 4,
+    
+    // readonly..
+    readyState : 0,
+    upload: null,
+    
+    
+    _message : false,
+    
+    // request
+    open : function ( method,  url, async, user, password)
+    {
+        async = async || false;
+        user = user || false;
+        password = password || false;
+        
+        
+        var uri = new Soup.URI.c_new(url);
+        this._message = new Soup.Message({method: method, uri:uri});
+        
+
+        
+    },
+    
+    setRequestHeader : function ( header,  value)
+    {
+        _this.message.request_headers.append(headers, value)
+
+    },
+    overrideMimeType : function ( mime)
+    {
+        
+    },
+    send  : function(data)
+    {
+        this._message.set_request('application/x-www-form-urlencoded', Soup.MemoryUse.COPY, data, data.length)
+
+    },
+    abort : function()
+    {
+        
+    },
+    
+    // response (all readonly...)
+    status : false,
+    statusText : false,
+    //readonly attribute any response
+    responseText : false,
+    responseXML : false,
+    responseType : false, 
+    
+    // response - read
+    getResponseHeader : function(  header)
+    {
+        
+    },
+    getAllResponseHeaders : function ()
+    {
+        
+    }
+   
+    
+});