@@ -10,20 +10,42 @@ afterEach(): It’s a hook to run after each it() or describe();
10
10
const { assert } = require ( 'chai' ) ;
11
11
const chai = require ( 'chai' ) ;
12
12
const expect = chai . expect ;
13
- const sinon = require ( 'sinon' ) ;
14
-
15
- const parse = require ( './../../schema-parser' ) ;
13
+ const fs = require ( 'fs' ) ;
16
14
15
+ let parse ;
16
+ const schemaGlobal = JSON . parse ( fs . readFileSync ( 'test/unit/schema-global.json' ) . toString ( ) ) ;
17
17
describe ( 'schema-parser' , ( ) => {
18
+ beforeEach ( ( ) => {
19
+ parse = require ( './../../schema-parser' ) ;
20
+ } ) ;
21
+
18
22
describe ( '#parseEvent()' , ( ) => {
19
23
it ( 'Deve ser uma function' , ( ) => {
20
24
assert . isFunction ( parse . parseEvent ) ;
21
25
} ) ;
26
+ it ( 'Deve transformar uma regra de validação em um evento da camada de dados' , ( ) => {
27
+ let result = parse . parseEvent ( schemaGlobal . array . items [ 0 ] ) ;
28
+
29
+ expect ( result ) . to . be . an ( 'Object' ) . that . not . null ;
30
+ expect ( result ) . to . haveOwnProperty ( 'event' ) ;
31
+ expect ( result . event ) . to . be . equal ( 'update' ) ;
32
+ expect ( result . aplicacao . ambiente ) . to . be . equal ( 'producao' ) ;
33
+ } ) ;
22
34
} ) ;
23
35
24
36
describe ( '#parseToDataLayer()' , ( ) => {
25
37
it ( 'Deve ser uma function' , ( ) => {
26
38
assert . isFunction ( parse . parseToDataLayer ) ;
27
39
} ) ;
40
+ it ( 'Deve transformar o schema de validação código de modelo da camada de dados' , ( ) => {
41
+ let result = [ ] ;
42
+ result = result . concat ( parse . parseToDataLayer ( schemaGlobal . array . items ) ) ;
43
+
44
+ expect ( result ) . to . be . an ( 'array' ) . that . not . empty ;
45
+ expect ( result ) . to . be . an ( 'array' ) . that . have . lengthOf ( 4 ) ;
46
+ expect ( result [ 0 ] . event ) . to . be . equal ( 'update' ) ;
47
+ expect ( result [ 3 ] . usuario . idUsuario ) . to . be . equal ( 'N/A' ) ;
48
+ expect ( result [ 0 ] . aplicacao ) . instanceOf ( Object ) ;
49
+ } ) ;
28
50
} ) ;
29
51
} ) ;
0 commit comments