Reputation: 2617
I've read other threads, tried multiple solutions but nothing seems to work.
Test:
it("parses string array", function(){
var usArr = ["integer.ImageViewer.main.RawBuffer", "dio.ImageViewer.main.performUnitCalibration"];
var newJson = [
{
fname : "integer.ImageViewer.main.RawBuffer",
con : "ImageViewer.main",
type : "integer",
vars : [{name : "RawBuffer"}]
},
{
fname : "dio.ImageViewer.main.performUnitCalibration",
con : "ImageViewer.main",
type : "dio",
vars : [{name : "performUnitCalibration"}]
}
];
expect(JFactory.parseToJSON(usArr)).toEqual(newJson);
})
Error message:
Expected
'[{"fname":"integer.ImageViewer.main.RawBuffer",
"com":"ImageViewer.main",
"type":"integer",
"vars":[{"name":"RawBuffer"}]},
{"fname":"dio.ImageViewer.main.performUnitCalibration",
"com":"ImageViewer.main",
"type":"dio",
"vars":[{"name":"performUnitCalibration"}]}]'
to equal
'[{"fname":"integer.ImageViewer.main.RawBuffer",
"con":"ImageViewer.main",
"type":"integer",
"vars":[{"name":"RawBuffer"}]},
{"fname":"dio.ImageViewer.main.performUnitCalibration",
"con":"ImageViewer.main",
"type":"dio",
"vars":[{"name":"performUnitCalibration"}]}]'.
Error: Expected
'[{"fname":"integer.ImageViewer.main.RawBuffer",
"com":"ImageViewer.main",
"type":"integer",
"vars":[{"name":"RawBuffer"}]},
{"fname":"dio.ImageViewer.main.performUnitCalibration",
"com":"ImageViewer.main",
"type":"dio",
"vars":[{"name":"performUnitCalibration"}]}]'
to equal
'[{"fname":"integer.ImageViewer.main.RawBuffer",
"con":"ImageViewer.main",
"type":"integer",
"vars":[{"name":"RawBuffer"}]},
{"fname":"dio.ImageViewer.main.performUnitCalibration",
"con":"ImageViewer.main",
"type":"dio",
"vars":[{"name":"performUnitCalibration"}]}]'.
I've tried to JSON stringify both objects, tried toBe and tried:
expect(_.isEqual(JFactory.parseToJSON(usArr), newJson)).toEqual(true);
as suggested here: Jasmine toEqual for complex objects (mixed with functions) that gives me: ReferenceError: _ is not defined
I'm completely lost as the objects seem to be exactly the same.
Upvotes: 0
Views: 139
Reputation: 20155
"com":"ImageViewer.main",
"con":"ImageViewer.main",
your are writing com
in one and con
in the other, they are definetly not equal.
Upvotes: 2