Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2015
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. declare var describe, after, before, it, require, global;
  2. import DbContext    = require("../../src/core/database/dbContext");
  3. import HttpRequest  = require("../../src/core/httpRequest");
  4. import Router       = require("../../src/core/router");
  5. import SignInBusiness = require("../../src/business/signInBusiness");
  6. import UserBusiness = require("../../src/business/userBusiness");
  7.  
  8. var Assert = require("assert");
  9.  
  10. describe("UserResource", () => {
  11.    
  12.     var route: string = "/user/:email";
  13.     var resources: Object = { "resources/userResource": route };
  14.     var host: string = "0.0.0.0";
  15.     var port: string = "8080";
  16.     var address: string = "http://"+host+":"+port+"/user";
  17.     var testMail: string = (new Date()).toISOString()+"@email.com";
  18.     if(global.database===undefined) global.database = new DbContext();
  19.    
  20.     var router: Router = new Router();
  21.     router.registerResources(resources);
  22.     var http: HttpRequest = new HttpRequest();
  23.     var authToken: string;
  24.    
  25.     before(()=>{
  26.         var data: any = { name: "Test", email: testMail, password: "4489236", disabled: true, helper: true, disability: 9002, disabilityLevel: 3 };
  27.         (new UserBusiness()).create(data);
  28.         authToken = (new SignInBusiness()).retrieve({ email: data.email, password: data.password }).auth_token;
  29.         router.start(host, port);
  30.     });
  31.    
  32.     it("should fail if not signed in", (done) => {
  33.         var current: string;
  34.         var expected: string = 'error';
  35.         try{
  36.             var output: any = http.get(address+"/"+testMail).body;
  37.             output = JSON.parse(output);
  38.             current = output.type;
  39.         } catch(e) {
  40.             current = e;
  41.         } finally {
  42.             Assert.equal(current, expected);
  43.             done();
  44.         }
  45.     });
  46.    
  47.     it("should return a user by sending a HTTP request to "+route, (done) => {
  48.         var current: string;
  49.         var expected: string = 'success';
  50.         try{
  51.             var output: any = http.options({ url: address+"/"+testMail,
  52.                 headers: { "Authorization" : authToken }
  53.             }).body;
  54.             output = JSON.parse(output);
  55.             current = output.type;
  56.         } catch(e) {
  57.             current = e;
  58.         } finally {
  59.             Assert.equal(current, expected);
  60.             done();
  61.         }
  62.     });
  63.    
  64.     it("should get an error message by sending a HTTP request with an invalid id to "+route, (done) => {
  65.         var current: string;
  66.         var expected: string = 'error';
  67.         try{
  68.             var output: any = http.options({ url: address+"/wrong@email.com",
  69.                 headers: { "Authorization" : authToken }
  70.             }).body;
  71.             output = JSON.parse(output);
  72.             current = output.type;
  73.         } catch(e) {
  74.             current = e;
  75.         } finally {
  76.             Assert.equal(current, expected);
  77.             done();
  78.         }
  79.     });
  80. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement