11/*
2- * Copyright (c) 2008-2014 MongoDB, Inc.
2+ * Copyright 2008-2016 MongoDB, Inc.
33 *
44 * Licensed under the Apache License, Version 2.0 (the "License");
55 * you may not use this file except in compliance with the License.
@@ -21,6 +21,7 @@ import org.bson.types.BSONTimestamp
2121import org.bson.types.Binary
2222import org.bson.types.Code
2323import org.bson.types.CodeWScope
24+ import org.bson.types.Decimal128
2425import org.bson.types.MaxKey
2526import org.bson.types.MinKey
2627import org.bson.types.ObjectId
@@ -90,6 +91,7 @@ class BasicBSONDecoderSpecification extends Specification {
9091 [' i4' : Long . MAX_VALUE ] | [17 , 0 , 0 , 0 , 18 , 105 , 52 , 0 , -1 , -1 , -1 , -1 , -1 , -1 , -1 , 127 , 0 ]
9192 [' k1' : new MinKey ()] | [9 , 0 , 0 , 0 , -1 , 107 , 49 , 0 , 0 ]
9293 [' k2' : new MaxKey ()] | [9 , 0 , 0 , 0 , 127 , 107 , 50 , 0 , 0 ]
94+ [' f' : Decimal128 . parse(' 0E-6176' )] | [24 , 0 , 0 , 0 , 19 , 102 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ]
9395
9496 type = BsonType . findByValue(bytes[4 ])
9597 }
@@ -120,22 +122,23 @@ class BasicBSONDecoderSpecification extends Specification {
120122 1 * callback. objectDone()
121123
122124 where :
123- method | args || bytes
124- ' gotDouble' | [' d1' , -1.01d ] || [17 , 0 , 0 , 0 , 1 , 100 , 49 , 0 , 41 , 92 , -113 , -62 , -11 , 40 , -16 , -65 , 0 ]
125- ' gotString' | [' s2' , ' danke' ] || [19 , 0 , 0 , 0 , 2 , 115 , 50 , 0 , 6 , 0 , 0 , 0 , 100 , 97 , 110 , 107 , 101 , 0 , 0 ]
126- ' gotBinary' | [' b2' , 0 , [102 , 111 , 111 ] as byte []] || [17 , 0 , 0 , 0 , 5 , 98 , 50 , 0 , 3 , 0 , 0 , 0 , 0 , 102 , 111 , 111 , 0 ]
127- ' gotObjectId' | [' _id' , new ObjectId (' 50d3332018c6a1d8d1662b61' )] || [22 , 0 , 0 , 0 , 7 , 95 , 105 , 100 , 0 , 80 , -45 , 51 , 32 , 24 , -58 , -95 , -40 , -47 , 102 , 43 , 97 , 0 ]
128- ' gotBoolean' | [' b1' , true ] || [10 , 0 , 0 , 0 , 8 , 98 , 49 , 0 , 1 , 0 ]
129- ' gotDate' | [' d' , 582163200 ] || [16 , 0 , 0 , 0 , 9 , 100 , 0 , 0 , 27 , -77 , 34 , 0 , 0 , 0 , 0 , 0 ]
130- ' gotNull' | [' n' ] || [8 , 0 , 0 , 0 , 10 , 110 , 0 , 0 ]
131- ' gotRegex' | [' r' , ' [a]*' , ' i' ] || [15 , 0 , 0 , 0 , 11 , 114 , 0 , 91 , 97 , 93 , 42 , 0 , 105 , 0 , 0 ]
132- ' gotCode' | [' js1' , ' var i = 0' ] || [24 , 0 , 0 , 0 , 13 , 106 , 115 , 49 , 0 , 10 , 0 , 0 , 0 , 118 , 97 , 114 , 32 , 105 , 32 , 61 , 32 , 48 , 0 , 0 ]
133- ' gotSymbol' | [' s' , ' c' ] || [14 , 0 , 0 , 0 , 14 , 115 , 0 , 2 , 0 , 0 , 0 , 99 , 0 , 0 ]
134- ' gotInt' | [' i1' , -12 ] || [13 , 0 , 0 , 0 , 16 , 105 , 49 , 0 , -12 , -1 , -1 , -1 , 0 ]
135- ' gotLong' | [' i4' , Long . MAX_VALUE ] || [17 , 0 , 0 , 0 , 18 , 105 , 52 , 0 , -1 , -1 , -1 , -1 , -1 , -1 , -1 , 127 , 0 ]
136- ' gotTimestamp' | [' t' , 123999401 , 44332 ] || [16 , 0 , 0 , 0 , 17 , 116 , 0 , 44 , -83 , 0 , 0 , -87 , 20 , 100 , 7 , 0 ]
137- ' gotMinKey' | [' k1' ] || [9 , 0 , 0 , 0 , -1 , 107 , 49 , 0 , 0 ]
138- ' gotMaxKey' | [' k2' ] || [9 , 0 , 0 , 0 , 127 , 107 , 50 , 0 , 0 ]
125+ method | args || bytes
126+ ' gotDouble' | [' d1' , -1.01d ] || [17 , 0 , 0 , 0 , 1 , 100 , 49 , 0 , 41 , 92 , -113 , -62 , -11 , 40 , -16 , -65 , 0 ]
127+ ' gotString' | [' s2' , ' danke' ] || [19 , 0 , 0 , 0 , 2 , 115 , 50 , 0 , 6 , 0 , 0 , 0 , 100 , 97 , 110 , 107 , 101 , 0 , 0 ]
128+ ' gotBinary' | [' b2' , 0 , [102 , 111 , 111 ] as byte []] || [17 , 0 , 0 , 0 , 5 , 98 , 50 , 0 , 3 , 0 , 0 , 0 , 0 , 102 , 111 , 111 , 0 ]
129+ ' gotObjectId' | [' _id' , new ObjectId (' 50d3332018c6a1d8d1662b61' )] || [22 , 0 , 0 , 0 , 7 , 95 , 105 , 100 , 0 , 80 , -45 , 51 , 32 , 24 , -58 , -95 , -40 , -47 , 102 , 43 , 97 , 0 ]
130+ ' gotBoolean' | [' b1' , true ] || [10 , 0 , 0 , 0 , 8 , 98 , 49 , 0 , 1 , 0 ]
131+ ' gotDate' | [' d' , 582163200 ] || [16 , 0 , 0 , 0 , 9 , 100 , 0 , 0 , 27 , -77 , 34 , 0 , 0 , 0 , 0 , 0 ]
132+ ' gotNull' | [' n' ] || [8 , 0 , 0 , 0 , 10 , 110 , 0 , 0 ]
133+ ' gotRegex' | [' r' , ' [a]*' , ' i' ] || [15 , 0 , 0 , 0 , 11 , 114 , 0 , 91 , 97 , 93 , 42 , 0 , 105 , 0 , 0 ]
134+ ' gotCode' | [' js1' , ' var i = 0' ] || [24 , 0 , 0 , 0 , 13 , 106 , 115 , 49 , 0 , 10 , 0 , 0 , 0 , 118 , 97 , 114 , 32 , 105 , 32 , 61 , 32 , 48 , 0 , 0 ]
135+ ' gotSymbol' | [' s' , ' c' ] || [14 , 0 , 0 , 0 , 14 , 115 , 0 , 2 , 0 , 0 , 0 , 99 , 0 , 0 ]
136+ ' gotInt' | [' i1' , -12 ] || [13 , 0 , 0 , 0 , 16 , 105 , 49 , 0 , -12 , -1 , -1 , -1 , 0 ]
137+ ' gotLong' | [' i4' , Long . MAX_VALUE ] || [17 , 0 , 0 , 0 , 18 , 105 , 52 , 0 , -1 , -1 , -1 , -1 , -1 , -1 , -1 , 127 , 0 ]
138+ ' gotTimestamp' | [' t' , 123999401 , 44332 ] || [16 , 0 , 0 , 0 , 17 , 116 , 0 , 44 , -83 , 0 , 0 , -87 , 20 , 100 , 7 , 0 ]
139+ ' gotMinKey' | [' k1' ] || [9 , 0 , 0 , 0 , -1 , 107 , 49 , 0 , 0 ]
140+ ' gotMaxKey' | [' k2' ] || [9 , 0 , 0 , 0 , 127 , 107 , 50 , 0 , 0 ]
141+ ' gotDecimal128' | [' f' , Decimal128 . parse(' 0E-6176' )] || [24 , 0 , 0 , 0 , 19 , 102 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ]
139142
140143 // gotDBRef
141144 // arrayStart
0 commit comments