'use strict'; import assert = require("assert"); import conv = require('../src/converter'); import { ProfileService } from '../src/serviceAuthentication/profile.service'; import { Http, Headers, RequestOptions, Connection, ConnectionBackend } from '@angular/http'; import { myConnection, mockConnectionBackend } from '../../plc/test/mockClasses/mockHttp'; require('jsdom-global')(); //separation line in output to distinct modules describe('=================================================================================', () =>{ it('\b', (done)=>{ done(); }); }); describe('common', () => { describe('\b/converter.ts ', () => { let binVal = '01011001'; let longBinVal = '101100100101'; let longerBinVal = '1100101100100101'; let decVal = 42; let decUniVal = 1234; let highDecUniVal = 875765786587; let highDecVal = 15221; let hexVal = 'CD2F92AD'; let checkToUniHexVal = 'CDF658EA'; let smallHexVal = 'A2D'; let checkToAscHexVal = '7E3F26'; let ascVal = '?S-@'; let rVal = 177; let gVal = 62; let bVal = 123; let binRGBVal = '101101000111011110000101'; let hexRGBVal = 'D92FAC'; let uniVal = 'ÄÖÜ'; //test out of range exceptions for ascii conversion it('out of range: *2asc', () => { assert.throws(()=>{ conv.Converter.dec2asc(128); }, 'dec2asc'); assert.throws(()=>{ conv.Converter.hex2asc('80'); }, 'hex2asc single char'); assert.throws(()=>{ conv.Converter.hex2asc('315A4FF0'); }, 'hex2asc multiple chars'); assert.throws(()=>{ conv.Converter.bin2asc('10000000'); }, 'bin2asc'); assert.throws(()=>{ conv.Converter.dec2ascStr(34660); }, 'dec2ascStr two chars'); assert.throws(()=>{ conv.Converter.asc2hex(uniVal); }, 'asc2hex non-ASCII chars'); }); //from dec it('dec2*', () => { assert.deepStrictEqual(conv.Converter.dec2hex(decVal), '2A', 'dec2hex'); assert.deepStrictEqual(conv.Converter.dec2bin(decVal), '101010', 'dec2bin'); assert.deepStrictEqual(conv.Converter.dec2asc(decVal), '\*', 'dec2asc'); assert.deepStrictEqual(conv.Converter.dec2ascStr(highDecVal), ';u', 'dec2ascStr'); assert.deepStrictEqual(conv.Converter.dec2uni(decUniVal), 'Ӓ', 'dec2uni');//cyrillic 'Ӓ', not latin 'Ä'! assert.deepStrictEqual(conv.Converter.dec2uniStr(highDecUniVal), 'ËçµgÛ', 'dec2uniStr'); }); //from hex it('hex2*', () => { assert.deepStrictEqual(conv.Converter.hex2dec(hexVal), 3442447021, 'hex2dec'); assert.deepStrictEqual(conv.Converter.hex2bin(smallHexVal), '101000101101', 'hex2bin'); assert.deepStrictEqual(conv.Converter.hex2asc(checkToAscHexVal), '~?&', 'hex2asc'); assert.deepStrictEqual(conv.Converter.hex2uni(smallHexVal), 'ਭ', 'hex2uni'); assert.deepStrictEqual(conv.Converter.hex2uniStr(checkToUniHexVal), 'ÍöXê', 'hex2uniStr'); }); //from bin it('bin2*', () => { assert.deepStrictEqual(conv.Converter.bin2dec(binVal), 89, 'bin2dec'); assert.deepStrictEqual(conv.Converter.bin2hex(binVal), '59', 'bin2hex'); assert.deepStrictEqual(conv.Converter.bin2asc(binVal), 'Y', 'bin2asc'); assert.deepStrictEqual(conv.Converter.bin2uni(longBinVal), 'ଥ', 'bin2uni');//0xB25 assert.deepStrictEqual(conv.Converter.bin2uniStr(longerBinVal), 'Ë%', 'bin2uniStr'); }); //from asc it('asc2*', () => { assert.deepStrictEqual(conv.Converter.asc2hex(ascVal), '3F532D40', 'asc2hex'); assert.deepStrictEqual(conv.Converter.asc2dec(ascVal), 1062415680, 'asc2dec'); assert.deepStrictEqual(conv.Converter.asc2bin(ascVal), '111111010100110010110101000000', 'asc2bin'); }); //from RGB it('RGB2*', () =>{ assert.deepStrictEqual(conv.Converter.RGB2Bin(rVal, gVal, bVal), '101100010011111001111011', 'RGB2Bin'); assert.deepStrictEqual(conv.Converter.RGB2Hex(rVal, gVal, bVal), 'B13E7B', 'RGB2Hex'); }); //to RGB it('*2RGB', () => { assert.deepStrictEqual(conv.Converter.bin2RGB(binRGBVal), [180, 119, 133], 'bin2RGB'); assert.deepStrictEqual(conv.Converter.hex2RGB(hexRGBVal), [217, 47, 172], 'hex2RGB'); }); }); describe('\b/auth', () => { describe('\b/profile.service.ts ', () => { let myPS :ProfileService; it('create profile service', () => { // myPS = new ProfileService(new Http(new mockConnectionBackend(), new RequestOptions()), null); }); }); }); describe('#default ', () => { it('no more tests implemented', () => { assert.equal(1,1,"Please implement more tests!"); }); }); });