{"action":"created","issue":{"url":"https://api.github.com/repos/dc-js/dc.js/issues/1014","labels_url":"https://api.github.com/repos/dc-js/dc.js/issues/1014/labels{/name}","comments_url":"https://api.github.com/repos/dc-js/dc.js/issues/1014/comments","events_url":"https://api.github.com/repos/dc-js/dc.js/issues/1014/events","html_url":"https://github.com/dc-js/dc.js/issues/1014","id":107369196,"number":1014,"title":"thoroughly test inputs and outputs of multiple select menu","user":{"login":"gordonwoodhull","id":1366709,"avatar_url":"https://avatars.githubusercontent.com/u/1366709?v=3","gravatar_id":"","url":"https://api.github.com/users/gordonwoodhull","html_url":"https://github.com/gordonwoodhull","followers_url":"https://api.github.com/users/gordonwoodhull/followers","following_url":"https://api.github.com/users/gordonwoodhull/following{/other_user}","gists_url":"https://api.github.com/users/gordonwoodhull/gists{/gist_id}","starred_url":"https://api.github.com/users/gordonwoodhull/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gordonwoodhull/subscriptions","organizations_url":"https://api.github.com/users/gordonwoodhull/orgs","repos_url":"https://api.github.com/users/gordonwoodhull/repos","events_url":"https://api.github.com/users/gordonwoodhull/events{/privacy}","received_events_url":"https://api.github.com/users/gordonwoodhull/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/dc-js/dc.js/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/dc-js/dc.js/labels/build%20/%20tests","name":"build / tests","color":"5319e7"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/dc-js/dc.js/milestones/12","html_url":"https://github.com/dc-js/dc.js/milestones/v2.1","labels_url":"https://api.github.com/repos/dc-js/dc.js/milestones/12/labels","id":409917,"number":12,"title":"v2.1","description":"","creator":{"login":"jrideout","id":197338,"avatar_url":"https://avatars.githubusercontent.com/u/197338?v=3","gravatar_id":"","url":"https://api.github.com/users/jrideout","html_url":"https://github.com/jrideout","followers_url":"https://api.github.com/users/jrideout/followers","following_url":"https://api.github.com/users/jrideout/following{/other_user}","gists_url":"https://api.github.com/users/jrideout/gists{/gist_id}","starred_url":"https://api.github.com/users/jrideout/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jrideout/subscriptions","organizations_url":"https://api.github.com/users/jrideout/orgs","repos_url":"https://api.github.com/users/jrideout/repos","events_url":"https://api.github.com/users/jrideout/events{/privacy}","received_events_url":"https://api.github.com/users/jrideout/received_events","type":"User","site_admin":false},"open_issues":133,"closed_issues":11,"state":"open","created_at":"2013-08-23T18:46:34Z","updated_at":"2015-09-20T03:03:30Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2015-09-20T03:03:30Z","updated_at":"2015-09-20T03:09:44Z","closed_at":null,"body":"While using the multiple select menu in a project, I noticed that in `multiple` mode it was calling `chart.replaceFilter` with an array of one value, which doesn't work: you have to either filter with a value or with an array containing an array of values.\r\n\r\nI noticed if it retrieved a single value from the html `select`, it would unbox it. This was presumably for the single-select case. Fine, a bug, and I fixed it by checking `!_multiple`, no big deal. \r\n\r\nBut what bothers me is that no tests failed either with the old code or with the fixed code, so it's clear that the no-values, one-value, and multiple-values get and set need more thoroughly to be tested. "},"comment":{"url":"https://api.github.com/repos/dc-js/dc.js/issues/comments/141739303","html_url":"https://github.com/dc-js/dc.js/issues/1014#issuecomment-141739303","issue_url":"https://api.github.com/repos/dc-js/dc.js/issues/1014","id":141739303,"user":{"login":"gordonwoodhull","id":1366709,"avatar_url":"https://avatars.githubusercontent.com/u/1366709?v=3","gravatar_id":"","url":"https://api.github.com/users/gordonwoodhull","html_url":"https://github.com/gordonwoodhull","followers_url":"https://api.github.com/users/gordonwoodhull/followers","following_url":"https://api.github.com/users/gordonwoodhull/following{/other_user}","gists_url":"https://api.github.com/users/gordonwoodhull/gists{/gist_id}","starred_url":"https://api.github.com/users/gordonwoodhull/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gordonwoodhull/subscriptions","organizations_url":"https://api.github.com/users/gordonwoodhull/orgs","repos_url":"https://api.github.com/users/gordonwoodhull/repos","events_url":"https://api.github.com/users/gordonwoodhull/events{/privacy}","received_events_url":"https://api.github.com/users/gordonwoodhull/received_events","type":"User","site_admin":false},"created_at":"2015-09-20T03:09:44Z","updated_at":"2015-09-20T03:09:44Z","body":"Two other things to investigate here:\r\n\r\n 1. Why not just always call `replaceFilter` with array-of-one-array-of values, whether in single or multiple mode, and avoid both special cases?\r\n 2. The special case for IE, checking `target.selectedOptions`, is filtering out the \"empty option\" which stands for nothing selected, and which seems always to be selected. And then there's another special case below checking if the only thing selected is the empty option, for all browsers. Is there a reason not to just always filter out the empty option."}}