File tree Expand file tree Collapse file tree 2 files changed +7
-0
lines changed
Expand file tree Collapse file tree 2 files changed +7
-0
lines changed Original file line number Diff line number Diff line change @@ -383,6 +383,8 @@ extension _FirebaseEncoder {
383383 return try self . box ( ( value as! Data ) )
384384 } else if T . self == URL . self || T . self == NSURL . self {
385385 return self . box ( ( value as! URL ) . absoluteString)
386+ } else if T . self == Decimal . self || T . self == NSDecimalNumber . self {
387+ return ( value as! NSDecimalNumber )
386388 } else if options. skipFirestoreTypes && ( value is FirestoreEncodable ) {
387389 guard let value = value as? NSObject else {
388390 throw DocumentReferenceError . typeIsNotNSObject
Original file line number Diff line number Diff line change @@ -109,6 +109,11 @@ class TestCodableFirestore: XCTestCase {
109109 _testRoundTrip ( of: TopLevelWrapper ( date) , expected: [ " value " : date] )
110110 }
111111
112+ func testDecimalValue( ) {
113+ let value = Decimal ( 2 )
114+ _testRoundTrip ( of: TopLevelWrapper ( value) , expected: [ " value " : value] )
115+ }
116+
112117 // MARK: - GeoPoint & Document Reference
113118 func testEncodingGeoPoint( ) {
114119 let point = GeoPoint ( latitude: 2 , longitude: 2 )
You can’t perform that action at this time.
0 commit comments