{"action":"created","issue":{"url":"https://api.github.com/repos/joel-costigliola/assertj-core/issues/479","labels_url":"https://api.github.com/repos/joel-costigliola/assertj-core/issues/479/labels{/name}","comments_url":"https://api.github.com/repos/joel-costigliola/assertj-core/issues/479/comments","events_url":"https://api.github.com/repos/joel-costigliola/assertj-core/issues/479/events","html_url":"https://github.com/joel-costigliola/assertj-core/issues/479","id":100934751,"number":479,"title":"Context-sensitive diff engine for unordered collections","user":{"login":"cowwoc","id":633348,"avatar_url":"https://avatars.githubusercontent.com/u/633348?v=3","gravatar_id":"","url":"https://api.github.com/users/cowwoc","html_url":"https://github.com/cowwoc","followers_url":"https://api.github.com/users/cowwoc/followers","following_url":"https://api.github.com/users/cowwoc/following{/other_user}","gists_url":"https://api.github.com/users/cowwoc/gists{/gist_id}","starred_url":"https://api.github.com/users/cowwoc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cowwoc/subscriptions","organizations_url":"https://api.github.com/users/cowwoc/orgs","repos_url":"https://api.github.com/users/cowwoc/repos","events_url":"https://api.github.com/users/cowwoc/events{/privacy}","received_events_url":"https://api.github.com/users/cowwoc/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/joel-costigliola/assertj-core/labels/improvement","name":"improvement","color":"FFC66F"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":10,"created_at":"2015-08-14T05:10:16Z","updated_at":"2015-10-19T20:14:23Z","closed_at":null,"body":"It looks like we need to provide a different the DIFF engine for Maps than for normal text comparison. When invoking `assertThat(firstMap).isEqualTo(secondMap)` and the condition is false, the DIFF engine will highlight the wrong difference.\r\n\r\nThe map contents differ but instead of highlighting the actual difference, the DIFF engine seems to trip over the fact that the key iteration order is different between the two maps.\r\n\r\nMeaning, given two HashMaps (where the key iteration order is undefined and not important):\r\n\r\n```\r\nA: {key1: value1, key2: value2}\r\nB: {key2: value1, key1: value1}\r\n```\r\n\r\nI am expecting the DIFF engine to highlight the fact that `key2` is mapped to a different value. Instead, the DIFF engine highlights the fact that `A` starts with `key1` whereas `B` starts with `key2`.\r\n\r\nIn the meantime, is there a way to disable the DIFF engine for a specific `assertThat()` as a workaround?"},"comment":{"url":"https://api.github.com/repos/joel-costigliola/assertj-core/issues/comments/149333157","html_url":"https://github.com/joel-costigliola/assertj-core/issues/479#issuecomment-149333157","issue_url":"https://api.github.com/repos/joel-costigliola/assertj-core/issues/479","id":149333157,"user":{"login":"joel-costigliola","id":382613,"avatar_url":"https://avatars.githubusercontent.com/u/382613?v=3","gravatar_id":"","url":"https://api.github.com/users/joel-costigliola","html_url":"https://github.com/joel-costigliola","followers_url":"https://api.github.com/users/joel-costigliola/followers","following_url":"https://api.github.com/users/joel-costigliola/following{/other_user}","gists_url":"https://api.github.com/users/joel-costigliola/gists{/gist_id}","starred_url":"https://api.github.com/users/joel-costigliola/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/joel-costigliola/subscriptions","organizations_url":"https://api.github.com/users/joel-costigliola/orgs","repos_url":"https://api.github.com/users/joel-costigliola/repos","events_url":"https://api.github.com/users/joel-costigliola/events{/privacy}","received_events_url":"https://api.github.com/users/joel-costigliola/received_events","type":"User","site_admin":false},"created_at":"2015-10-19T20:14:23Z","updated_at":"2015-10-19T20:14:23Z","body":"@gabga don't worry, I will help :)"}}