public void TestGetActionChoicesOtherParms(string value)
        {
            INakedObject choicesRepo = NakedObjectsFramework.GetAdaptedService("ChoicesRepository");

            const string actionName = "AnAction";

            string id = NakedObjectsFramework.GetObjectId(choicesRepo);

            const string parm1Id = "ChoicesRepository-AnAction-Parm1-Input0";
            const string parm2Id = "ChoicesRepository-AnAction-Parm2-Input0";
            const string parm3Id = "ChoicesRepository-AnAction-Parm3-Input0";

            mocks.Request.Setup(x => x.Params).Returns(new NameValueCollection {
                { parm1Id, value }, { parm2Id, "" }, { parm3Id, "" }
            });

            JsonResult result = controller.GetActionChoices(id, actionName);

            Assert.IsInstanceOf <IDictionary <string, string[][]> >(result.Data);

            var dict = result.Data as IDictionary <string, string[][]>;

            Assert.AreEqual(2, dict.Count);
            Assert.IsTrue(dict.ContainsKey("ChoicesRepository-AnAction-Parm1-Input"));
            Assert.IsTrue(dict.ContainsKey("ChoicesRepository-AnAction-Parm2-Input"));

            Assert.IsTrue(dict["ChoicesRepository-AnAction-Parm1-Input"][0].SequenceEqual(new[] { "value1", "value2" }));
            Assert.IsTrue(dict["ChoicesRepository-AnAction-Parm2-Input"][0].SequenceEqual(new[] { value + "postfix1", value + "postfix2" }));

            Assert.IsTrue(dict["ChoicesRepository-AnAction-Parm1-Input"][1].SequenceEqual(new[] { "value1", "value2" }));
            Assert.IsTrue(dict["ChoicesRepository-AnAction-Parm2-Input"][1].SequenceEqual(new[] { value + "postfix1", value + "postfix2" }));
        }