const request = require('supertest');

const app = require('../src/server');

module.exports = {
    createCookieString: function(cookie) {
        if(cookie) {
            return "oAuth2ClientShell="
                // https://github.com/expressjs/express/issues/2815
                + encodeURIComponent("j:" + JSON.stringify(cookie));
            }
        return "oAuth2ClientShell=";
    },
    getCsrfTokens: function(cb) {
        request(app)
            .get('/')
            .expect('set-cookie', /_csrf=.*?[;,]/)
            .expect(/name="_csrf" value="(.*?)"/)
            .end(function(err, res) {
                if (err) return done(err);

                const cookieCsrf = /_csrf=(.*?);/.exec(res.headers['set-cookie'])[1];
                const formCsrf = /name="_csrf" value="(.*?)"/.exec(res.text)[1];
                cb(cookieCsrf, formCsrf);
        });
    }
};

@@ -79,31 +79,16 @@
 %0D%0A%0D%0A
-module.exports = %7B%0D%0A   
+function
  cre
@@ -102,26 +102,16 @@
 ieString
-: function
 (cookie)
@@ -118,20 +118,16 @@
  %7B%0D%0A    
-   
- 
 if(cooki
@@ -136,28 +136,24 @@
  %7B%0D%0A        
-  
-  
 return %22oAut
@@ -169,20 +169,16 @@
 hell=%22%0D%0A
-    
         
@@ -246,20 +246,16 @@
         
- 
-   
 + encode
@@ -296,28 +296,24 @@
 (cookie));%0D%0A
-    
         %7D%0D%0A 
@@ -311,20 +311,16 @@
      %7D%0D%0A
-    
     retu
@@ -349,19 +349,21 @@
 %22;%0D%0A
-    %7D,%0D%0A   
+%7D%0D%0A%0D%0Afunction
  get
@@ -376,18 +376,8 @@
 kens
-: function
 (cb)
@@ -384,20 +384,16 @@
  %7B%0D%0A    
-   
- 
 request(
@@ -406,20 +406,16 @@
         
-    
 .get('/'
@@ -417,36 +417,32 @@
 t('/')%0D%0A        
-  
-  
 .expect('set-coo
@@ -469,28 +469,24 @@
 /)%0D%0A        
-    
 .expect(/nam
@@ -520,20 +520,16 @@
         
- 
-   
 .end(fun
@@ -543,28 +543,24 @@
 rr, res) %7B%0D%0A
-    
             
@@ -597,28 +597,24 @@
             
-    
 const cookie
@@ -668,28 +668,24 @@
 kie'%5D)%5B1%5D;%0D%0A
-    
             
@@ -762,20 +762,16 @@
         
-    
 cb(cooki
@@ -797,22 +797,115 @@
     
-    %7D);%0D%0A    %7D
+%7D);%0D%0A%7D%0D%0A%0D%0Amodule.exports = %7B%0D%0A    createCookieString: createCookieString,%0D%0A    getCsrfTokens: getCsrfTokens
 %0D%0A%7D;

test - refactoring utils file. (#52)