Merge pull request #3420 from AutoScout24/fix-orderedmap-length
Fix length issue in OrderedMaps
This commit is contained in:
@@ -41,7 +41,7 @@ export function fromJSOrdered (js) {
|
|||||||
return !isObject(js) ? js :
|
return !isObject(js) ? js :
|
||||||
Array.isArray(js) ?
|
Array.isArray(js) ?
|
||||||
Im.Seq(js).map(fromJSOrdered).toList() :
|
Im.Seq(js).map(fromJSOrdered).toList() :
|
||||||
Im.Seq(js).map(fromJSOrdered).toOrderedMap()
|
Im.OrderedMap(js).map(fromJSOrdered)
|
||||||
}
|
}
|
||||||
|
|
||||||
export function bindToState(obj, state) {
|
export function bindToState(obj, state) {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/* eslint-env mocha */
|
/* eslint-env mocha */
|
||||||
import expect from "expect"
|
import expect from "expect"
|
||||||
import { fromJS } from "immutable"
|
import { fromJS } from "immutable"
|
||||||
import { mapToList, validateNumber, validateInteger, validateParam, validateFile } from "core/utils"
|
import { mapToList, validateNumber, validateInteger, validateParam, validateFile, fromJSOrdered } from "core/utils"
|
||||||
import win from "core/window"
|
import win from "core/window"
|
||||||
|
|
||||||
describe("utils", function() {
|
describe("utils", function() {
|
||||||
@@ -544,4 +544,31 @@ describe("utils", function(){
|
|||||||
expect( result ).toEqual( [] )
|
expect( result ).toEqual( [] )
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
describe("fromJSOrdered", () => {
|
||||||
|
it("should create an OrderedMap from an object", () => {
|
||||||
|
const param = {
|
||||||
|
value: "test"
|
||||||
|
}
|
||||||
|
|
||||||
|
const result = fromJSOrdered(param).toJS()
|
||||||
|
expect( result ).toEqual( { value: "test" } )
|
||||||
|
})
|
||||||
|
|
||||||
|
it("should not use an object's length property for Map size", () => {
|
||||||
|
const param = {
|
||||||
|
length: 5
|
||||||
|
}
|
||||||
|
|
||||||
|
const result = fromJSOrdered(param).toJS()
|
||||||
|
expect( result ).toEqual( { length: 5 } )
|
||||||
|
})
|
||||||
|
|
||||||
|
it("should create an OrderedMap from an array", () => {
|
||||||
|
const param = [1, 1, 2, 3, 5, 8]
|
||||||
|
|
||||||
|
const result = fromJSOrdered(param).toJS()
|
||||||
|
expect( result ).toEqual( [1, 1, 2, 3, 5, 8] )
|
||||||
|
})
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user