mirror of
https://github.com/typeorm/typeorm.git
synced 2025-12-08 21:26:23 +00:00
fixes #499
This commit is contained in:
parent
0cdd4a7033
commit
bea212ecab
@ -260,6 +260,9 @@ export class MysqlDriver implements Driver {
|
||||
case ColumnTypes.DATETIME:
|
||||
return DataTransformationUtils.normalizeHydratedDate(value, columnMetadata.localTimezone === true);
|
||||
|
||||
case ColumnTypes.DATE:
|
||||
return DataTransformationUtils.mixedDateToDateString(value);
|
||||
|
||||
case ColumnTypes.TIME:
|
||||
return DataTransformationUtils.mixedTimeToString(value);
|
||||
|
||||
|
||||
@ -273,6 +273,9 @@ export class OracleDriver implements Driver {
|
||||
case ColumnTypes.DATETIME:
|
||||
return DataTransformationUtils.normalizeHydratedDate(value, columnMetadata.localTimezone === true);
|
||||
|
||||
case ColumnTypes.DATE:
|
||||
return DataTransformationUtils.mixedDateToDateString(value);
|
||||
|
||||
case ColumnTypes.TIME:
|
||||
return DataTransformationUtils.mixedTimeToString(value);
|
||||
|
||||
|
||||
@ -255,6 +255,9 @@ export class PostgresDriver implements Driver {
|
||||
case ColumnTypes.DATETIME:
|
||||
return DataTransformationUtils.normalizeHydratedDate(value, columnMetadata.localTimezone === true);
|
||||
|
||||
case ColumnTypes.DATE:
|
||||
return DataTransformationUtils.mixedDateToDateString(value);
|
||||
|
||||
case ColumnTypes.TIME:
|
||||
return DataTransformationUtils.mixedTimeToString(value);
|
||||
|
||||
|
||||
@ -184,6 +184,9 @@ export class SqliteDriver implements Driver {
|
||||
case ColumnTypes.DATETIME:
|
||||
return DataTransformationUtils.normalizeHydratedDate(value, columnMetadata.localTimezone === true);
|
||||
|
||||
case ColumnTypes.DATE:
|
||||
return DataTransformationUtils.mixedDateToDateString(value);
|
||||
|
||||
case ColumnTypes.TIME:
|
||||
return DataTransformationUtils.mixedTimeToString(value);
|
||||
|
||||
|
||||
@ -259,6 +259,9 @@ export class SqlServerDriver implements Driver {
|
||||
case ColumnTypes.DATETIME:
|
||||
return DataTransformationUtils.normalizeHydratedDate(value, columnMetadata.localTimezone === true);
|
||||
|
||||
case ColumnTypes.DATE:
|
||||
return DataTransformationUtils.mixedDateToDateString(value);
|
||||
|
||||
case ColumnTypes.TIME:
|
||||
return DataTransformationUtils.mixedTimeToString(value);
|
||||
|
||||
|
||||
@ -224,6 +224,9 @@ export class WebsqlDriver implements Driver {
|
||||
case ColumnTypes.DATETIME:
|
||||
return DataTransformationUtils.normalizeHydratedDate(value, columnMetadata.localTimezone === true);
|
||||
|
||||
case ColumnTypes.DATE:
|
||||
return DataTransformationUtils.mixedDateToDateString(value);
|
||||
|
||||
case ColumnTypes.TIME:
|
||||
return DataTransformationUtils.mixedTimeToString(value);
|
||||
|
||||
|
||||
17
test/github-issues/499/entity/Post.ts
Normal file
17
test/github-issues/499/entity/Post.ts
Normal file
@ -0,0 +1,17 @@
|
||||
import {Entity} from "../../../../src/decorator/entity/Entity";
|
||||
import {PrimaryGeneratedColumn} from "../../../../src/decorator/columns/PrimaryGeneratedColumn";
|
||||
import {Column} from "../../../../src/decorator/columns/Column";
|
||||
|
||||
@Entity()
|
||||
export class Post {
|
||||
|
||||
@PrimaryGeneratedColumn()
|
||||
id: number;
|
||||
|
||||
@Column()
|
||||
title: string;
|
||||
|
||||
@Column("date")
|
||||
date: string;
|
||||
|
||||
}
|
||||
30
test/github-issues/499/issue-499.ts
Normal file
30
test/github-issues/499/issue-499.ts
Normal file
@ -0,0 +1,30 @@
|
||||
import "reflect-metadata";
|
||||
import {createTestingConnections, closeTestingConnections, reloadTestingDatabases} from "../../utils/test-utils";
|
||||
import {Connection} from "../../../src/connection/Connection";
|
||||
import {Post} from "./entity/Post";
|
||||
import {expect} from "chai";
|
||||
|
||||
describe("github issues > #499 postgres DATE hydrated as DATETIME object", () => {
|
||||
|
||||
let connections: Connection[];
|
||||
before(async () => connections = await createTestingConnections({
|
||||
entities: [__dirname + "/entity/*{.js,.ts}"],
|
||||
schemaCreate: true,
|
||||
dropSchemaOnConnection: true,
|
||||
}));
|
||||
beforeEach(() => reloadTestingDatabases(connections));
|
||||
after(() => closeTestingConnections(connections));
|
||||
|
||||
it("should return date in a string format", () => Promise.all(connections.map(async connection => {
|
||||
|
||||
const post = new Post();
|
||||
post.title = "Hello Post #1";
|
||||
post.date = "2017-01-25";
|
||||
await connection.manager.save(post);
|
||||
|
||||
const loadedPost = await connection.manager.findOne(Post, { where: { title: "Hello Post #1" } });
|
||||
expect(loadedPost!).not.to.be.empty;
|
||||
loadedPost!.date.should.be.equal("2017-01-25");
|
||||
})));
|
||||
|
||||
});
|
||||
Loading…
x
Reference in New Issue
Block a user