def test_from_json_full(self):
        config = Config.from_json({
            'input_signatures': ['abc', 'def'],
            'output_signatures': ['ghi', 'jkl', 'mno']
        })

        self.assertEqual(
            config,
            Config(input_signature=['abc', 'def'],
                   output_signature=['ghi', 'jkl', 'mno']))
    def test_from_json_output_names_only(self):
        config = Config.from_json({'output_signatures': ['abc', 'def']})

        self.assertEqual(
            config,
            Config(input_signature=None, output_signature=['abc', 'def']))
    def test_from_json_minimal(self):
        config = Config.from_json({})

        self.assertEqual(config,
                         Config(input_signature=None, output_signature=None))