Skip to content

Commit 2228e86

Browse files
committed
classes test
1 parent 295df3b commit 2228e86

16 files changed

+191
-3
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[![npm version](https://badge.fury.io/js/ionic-database-builder.svg/?a=1)](https://www.npmjs.com/package/ionic-database-builder)
1+
[![npm version](https://badge.fury.io/js/ionic-database-builder.svg/)](https://www.npmjs.com/package/ionic-database-builder)
22
[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/fernandocode/ionic-database-builder/issues)
33

44
# ionic-database-builder

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,11 +51,12 @@
5151
"zone.js": "0.8.26"
5252
},
5353
"devDependencies": {
54+
"@angular/cli": "^1.7.4",
5455
"@angular/compiler": "5.0.0",
5556
"@angular/compiler-cli": "5.0.0",
5657
"ng-packagr": "2.4.2",
5758
"tsickle": "0.27.5",
58-
"typescript": "2.6.1"
59+
"typescript": "2.8.1"
5960
},
6061
"tsconfig": "./tsconfig.json"
6162
}

src/defaults/mappers-table-simple.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ export class MappersTableSimple extends MappersTableBase {
2020
...defaultsMapper: Array<new () => any>
2121
): MappersTableSimple {
2222
defaultsMapper.forEach(mapper => {
23-
this.add(mapper, readOnly, keyColumn);
23+
this.add(mapper, readOnly, keyColumn, settings);
2424
});
2525
return this;
2626
}

src/test/mapper.spec.ts

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
// import { Classificacao } from "./models/classificacao";
2+
// import { SubRegiao } from "./models/sub-regiao";
3+
// import { Cidade } from "./models/cidade";
4+
// import { Cliente } from "./models/cliente";
5+
// import { MappersTableSimple } from "..";
6+
// import { DatabaseHelper, Insert } from "database-builder";
7+
// import { TestClazz } from "./models/test-clazz";
8+
// import { TestClazzRef } from "./models/test-clazz-ref";
9+
// import { Uf } from "./models/uf";
10+
// import { Regiao } from "./models/regiao";
11+
// import { expect } from "chai";
12+
13+
// describe("Mapper", () => {
14+
15+
// const mapper = new MappersTableSimple(new DatabaseHelper(), {
16+
// references: false,
17+
// referencesId: true,
18+
// referencesIdRecursive: false,
19+
// referencesIdColumn: "id"
20+
// })
21+
// .mapper(
22+
// false,
23+
// void 0,
24+
// void 0,
25+
// TestClazz,
26+
// TestClazzRef,
27+
// Cliente,
28+
// Cidade,
29+
// Uf,
30+
// SubRegiao,
31+
// Regiao,
32+
// Classificacao
33+
// );
34+
35+
// const clienteToSave = {
36+
// id: 1,
37+
// razaoSocial: "Razão",
38+
// apelido: "Apelido",
39+
// cidade: {
40+
// id: 2,
41+
// nome: "Cidade",
42+
// uf: {
43+
// id: "SC",
44+
// nome: "Santa Catarina"
45+
// } as Uf,
46+
// subRegiao: {
47+
// id: 4,
48+
// nome: "Sub Região",
49+
// regiao: {
50+
// id: 5,
51+
// nome: "Região"
52+
// } as Regiao
53+
// } as SubRegiao,
54+
// } as Cidade,
55+
// classificacao: {
56+
// id: 3,
57+
// descricao: "Top"
58+
// } as Classificacao,
59+
// desativo: false
60+
// } as Cliente;
61+
62+
// it("Test mapper insert", () => {
63+
// const result = new Insert(Cliente, clienteToSave, mapper.getMapper(Cliente)).compile();
64+
// expect(result.params.toString()).to.equal([1, "Razão", "Apelido", false, 2, 3].toString());
65+
// expect(result.query).to.equal("INSERT INTO Cliente (id, razaoSocial, apelido, desativo, cidade_id, classificacao_id) VALUES (?, ?, ?, ?, ?, ?)");
66+
// });
67+
68+
// });

src/test/models/base-key.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
export class BaseKey implements IBaseKey {
2+
public key: number = 0;
3+
}
4+
5+
// tslint:disable-next-line:interface-name
6+
export interface IBaseKey {
7+
key: number;
8+
}

src/test/models/base-model.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import { BaseKey } from "./base-key";
2+
3+
export class BaseModel<TKey> extends BaseKey {
4+
constructor(public id: TKey) {
5+
super();
6+
}
7+
}

src/test/models/cidade.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import { BaseModel } from "./base-model";
2+
import { SubRegiao } from "./sub-regiao";
3+
import { Uf } from "./uf";
4+
5+
export class Cidade extends BaseModel<number> {
6+
7+
public nome: string = "";
8+
public uf: Uf = new Uf();
9+
public subRegiao: SubRegiao = new SubRegiao();
10+
11+
constructor(instance?: Cidade) {
12+
super(instance ? instance.id : -1);
13+
if (instance) {
14+
Object.assign(this, instance);
15+
}
16+
}
17+
}

src/test/models/classificacao.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import { BaseModel } from "./base-model";
2+
3+
export class Classificacao extends BaseModel<number> {
4+
5+
public descricao: string = "";
6+
7+
constructor() {
8+
super(-1);
9+
}
10+
}

src/test/models/cliente.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import { Classificacao } from "./classificacao";
2+
import { BaseModel } from "./base-model";
3+
import { Cidade } from "./cidade";
4+
5+
export class Cliente extends BaseModel<number> {
6+
7+
public razaoSocial: string = "";
8+
public apelido: string = "";
9+
public cidade: Cidade = new Cidade();
10+
public classificacao: Classificacao = new Classificacao();
11+
public desativo: boolean = false;
12+
13+
constructor() {
14+
super(0);
15+
}
16+
}

src/test/models/model-test.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import { ReferencesModelTest } from "./reference-model-test";
2+
3+
export class ModelTest {
4+
public id: number;
5+
public name: string;
6+
public description: string;
7+
public date: Date;
8+
public isValid: boolean;
9+
public reference: ReferencesModelTest;
10+
}

0 commit comments

Comments
 (0)