{"changed":true,"filter":false,"title":"ObjectId.spec.ts","tooltip":"/test/unit/document/ObjectId.spec.ts","value":"import \"mocha\";\nimport { expect } from \"chai\";\n\nimport { TestHelper } from \"../../helper/index\";\nimport { ObjectId } from \"../../../src/document/index\";\n\nTestHelper.initLogger();\n\ndescribe(\"ObjectId\", function() {\n    describe(\"#Constructor\", function() {\n        it(\"should have the dependencies ready\", function() {\n            TestHelper.assertDependencies([ObjectId]);\n        });\n        \n        it(\"should be able to create a new ObjectId()\", function() {\n            var id = new ObjectId();\n            \n            expect(id).to.exist;\n            \n            expect(id.toString()).to.be.equal(id.toJSON());\n            \n            expect(id.getTimestamp().getTime() / 1000).to.be.equal(id.generationTime);\n        });\n        \n        it(\"should be able to create a new ObjectId(Number)\", function() {\n            var now = Date.now();\n            \n            var id = new ObjectId(now);\n            \n            expect(id).to.exist;\n            \n            expect(id.toString()).to.be.equal(id.toJSON());\n            \n            expect(id.getTimestamp().getTime() / 1000).to.be.equal(id.generationTime);\n        });\n        \n        it(\"should be able to create a new ObjectId(Hex String)\", function() {\n            var hex = \"5044555b65bedb5e56000002\";\n            \n            var id = new ObjectId(hex);\n            \n            expect(id).to.exist;\n            \n            expect(id.toString()).to.be.equal(id.toJSON());\n            \n            expect(id.equals(hex)).to.be.truly;\n            \n            expect(id.getTimestamp().getTime() / 1000).to.be.equal(id.generationTime);\n        });\n        \n        it(\"should be able to create a new ObjectId from a cached hexstring\", function() {\n            var hex = \"5044555b65bedb5e56000002\";\n            \n            ObjectId.cacheHexString = hex;\n            \n            var id = new ObjectId();\n            \n            expect(id).to.exist;\n            \n            expect(id.toString()).to.be.equal(id.toJSON());\n            \n            expect(id.equals(hex)).to.be.truly;\n            \n            expect(id.getTimestamp().getTime() / 1000).to.be.equal(id.generationTime);\n        });\n        \n        it(\"should be able to create a new ObjectId from a date time\", function() {\n            var now = Date.now();\n            \n            var id = ObjectId.createFromTime(now);\n            \n            expect(id).to.exist;\n            \n            expect(id.toString()).to.be.equal(id.toJSON());\n            \n            expect(id.getTimestamp().getTime() / 1000).to.be.equal(id.generationTime);\n        });\n    });\n    \n    describe(\"Methods\", function() {\n        it(\"should be able to set the generationTime\", function() {\n            var id = new ObjectId();\n            \n            expect(id).to.exist;\n            \n            expect(id.toString()).to.be.equal(id.toJSON());\n            \n            expect(id.getTimestamp().getTime() / 1000).to.be.equal(id.generationTime);\n            \n            var date = new Date(\"2016-05-27\");\n            \n            id.generationTime = date.getTime();\n            \n            expect(id.getTimestamp().getTime() / 1000).to.be.equal(id.generationTime);\n        });\n        \n        it(\"should create a new primary key (alias for a new instance)\", function() {\n            var id = ObjectId.createPk();\n            \n            expect(id).to.exist;\n            \n            expect(id.toString()).to.be.equal(id.toJSON());\n            \n            expect(id.getTimestamp().getTime() / 1000).to.be.equal(id.generationTime);\n        });\n    });\n});","undoManager":{"mark":-2,"position":2,"stack":[[{"start":{"row":49,"column":0},"end":{"row":53,"column":14},"action":"remove","lines":["<<<<<<< HEAD","        ","=======","        /*",">>>>>>> v2.0.0"],"id":2},{"start":{"row":49,"column":0},"end":{"row":49,"column":10},"action":"insert","lines":["        /*"]}],[{"start":{"row":65,"column":0},"end":{"row":69,"column":14},"action":"remove","lines":["<<<<<<< HEAD","        ","=======","        */",">>>>>>> v2.0.0"],"id":3},{"start":{"row":65,"column":0},"end":{"row":65,"column":10},"action":"insert","lines":["        */"]}],[{"start":{"row":49,"column":8},"end":{"row":49,"column":10},"action":"remove","lines":["/*"],"id":4,"ignore":true},{"start":{"row":65,"column":8},"end":{"row":65,"column":10},"action":"remove","lines":["*/"]}]]},"ace":{"folds":[],"scrolltop":1215,"scrollleft":0,"selection":{"start":{"row":89,"column":46},"end":{"row":89,"column":46},"isBackwards":false},"options":{"guessTabSize":true,"useWrapMode":false,"wrapToView":true},"firstLineState":{"row":80,"state":"start","mode":"ace/mode/typescript"}},"timestamp":1509662869026}