1

統合テストがあります。コントローラーに渡されるパラメーターには、複数のオブジェクト (電話番号) のリストが含まれています。各電話番号にはタイプ/番号があります。コードを実行すると、次に示すように、gsp が params オブジェクトでコントローラーに送信しているものをキャプチャできます。

ここに画像の説明を入力

統合テストでそのパラメーター マップをコーディングするにはどうすればよいですか? これまでに試したことはすべてうまくいきませんでした(以下)。アクションを呼び出す前に、gsp フォームが controller.params で送信する内容を再現しようとしています。

        def bindingMap = [alt1: 'Previous',
                'phones[0]': [type: 'H', number: '55555', deleted: 'false', id: '']]

        //controller.params
//        controller.params = map//[alt1 : 'Previous'
//                phones[0].type, 'H'
//                phones[0].number, '55555',
//                phones[0].deleted, 'false',
//                phones[0].id, ''
        //]
/*
        controller.params.phones[0]["type"] = 'H'
        controller.params.phones[0]["number"] = '12345'
        controller.params.phones[0]["deleted"] = 'false'

編集:

理解した:

    def bindingMap = [alt1: 'Previous',
            'phones[0].type': 'H',
            'phones[0].number': '55555',
            'phones[0].deleted': 'false',
            'phones[0].id': ''
    ]
    controller.params.putAll(bindingMap)
4

1 に答える 1

0

やってみました?

controller.params.phones = [
    [type: 'H', number: '55555', deleted: 'false', id: ''],
    [type: 'A', number: '66666', deleted: 'false', id: '']
]
于 2013-09-27T16:15:28.057 に答える