annotate test/test_plugin_metadata.py @ 138:d3126719b094

Further param and kwarg tests
author Chris Cannam
date Wed, 08 Jul 2015 11:36:42 +0100
parents 4f590fc46ace
children aa96f69e2f14
rev   line source
Chris@36 1
Chris@36 2 import vampyhost as vh
Chris@36 3
Chris@82 4 plugin_key = "vamp-test-plugin:vamp-test-plugin"
Chris@36 5
Chris@82 6 plugin_key_freq = "vamp-test-plugin:vamp-test-plugin-freq"
Chris@63 7
Chris@36 8 rate = 44100
Chris@36 9
Chris@62 10 expectedVersion = 3
Chris@62 11
Chris@62 12 def test_plugin_exists():
Chris@82 13 assert plugin_key in vh.list_plugins()
Chris@82 14 plug = vh.load_plugin(plugin_key, rate, vh.ADAPT_NONE)
Chris@109 15 assert "pluginVersion" in plug.info
Chris@109 16 if plug.info["pluginVersion"] != expectedVersion:
Chris@109 17 print("Test plugin version " + str(plug.info["pluginVersion"]) + " does not match expected version " + str(expectedVersion))
Chris@109 18 assert plug.info["pluginVersion"] == expectedVersion
Chris@62 19
Chris@63 20 def test_plugin_exists_in_freq_version():
Chris@82 21 assert plugin_key_freq in vh.list_plugins()
Chris@63 22
Chris@43 23 def test_getoutputlist():
Chris@82 24 outputs = vh.get_outputs_of(plugin_key)
Chris@62 25 assert len(outputs) == 10
Chris@45 26 assert "input-summary" in outputs
Chris@43 27
Chris@86 28 def test_getoutputlist_2():
Chris@86 29 plug = vh.load_plugin(plugin_key, rate, vh.ADAPT_NONE)
Chris@86 30 outputs = plug.get_outputs()
Chris@86 31 assert len(outputs) == 10
Chris@86 32
Chris@86 33 def test_get_output_by_id():
Chris@86 34 plug = vh.load_plugin(plugin_key, rate, vh.ADAPT_NONE)
Chris@86 35 out = plug.get_output("input-summary")
Chris@111 36 assert "sampleType" in out
Chris@87 37 assert out["output_index"] == 8
Chris@86 38 try:
Chris@86 39 out = plug.get_output("chops")
Chris@86 40 assert False
Chris@102 41 except Exception:
Chris@86 42 pass
Chris@86 43 try:
Chris@86 44 out = plug.get_output("")
Chris@86 45 assert False
Chris@102 46 except Exception:
Chris@86 47 pass
Chris@86 48
Chris@86 49 def test_get_output_by_index():
Chris@86 50 plug = vh.load_plugin(plugin_key, rate, vh.ADAPT_NONE)
Chris@86 51 out = plug.get_output(0)
Chris@111 52 assert "sampleType" in out
Chris@86 53 assert out["identifier"] == "instants"
Chris@87 54 assert out["output_index"] == 0
Chris@86 55 try:
Chris@86 56 out = plug.get_output(20)
Chris@86 57 assert False
Chris@102 58 except Exception:
Chris@86 59 pass
Chris@86 60 try:
Chris@86 61 out = plug.get_output(-1)
Chris@86 62 assert False
Chris@102 63 except Exception:
Chris@86 64 pass
Chris@86 65 try:
Chris@86 66 out = plug.get_output(plug)
Chris@86 67 assert False
Chris@102 68 except Exception:
Chris@86 69 pass
Chris@86 70
Chris@36 71 def test_inputdomain():
Chris@82 72 plug = vh.load_plugin(plugin_key, rate, vh.ADAPT_NONE)
Chris@110 73 assert plug.inputDomain == vh.TIME_DOMAIN
Chris@36 74
Chris@36 75 def test_info():
Chris@82 76 plug = vh.load_plugin(plugin_key, rate, vh.ADAPT_NONE)
Chris@39 77 assert plug.info["identifier"] == "vamp-test-plugin"
Chris@36 78
Chris@36 79 def test_parameterdescriptors():
Chris@82 80 plug = vh.load_plugin(plugin_key, rate, vh.ADAPT_NONE)
Chris@39 81 assert plug.parameters[0]["identifier"] == "produce_output"
Chris@36 82
Chris@51 83 def test_setparameter():
Chris@82 84 plug = vh.load_plugin(plugin_key, rate, vh.ADAPT_NONE)
Chris@51 85 assert plug.parameters[0]["identifier"] == "produce_output"
Chris@109 86 assert plug.parameters[0]["defaultValue"] == 1
Chris@109 87 assert plug.get_parameter_value("produce_output") == plug.parameters[0]["defaultValue"]
Chris@80 88 assert plug.set_parameter_value("produce_output", 0) == True
Chris@80 89 assert plug.get_parameter_value("produce_output") == 0
Chris@80 90 assert plug.set_parameter_values({ "produce_output": 1 }) == True
Chris@80 91 assert plug.get_parameter_value("produce_output") == 1
Chris@51 92 try:
Chris@80 93 plug.set_parameter_value("produce_output", "fish")
Chris@51 94 assert False
Chris@51 95 except TypeError:
Chris@51 96 pass
Chris@51 97 try:
Chris@80 98 plug.set_parameter_value(4, 0)
Chris@51 99 assert False
Chris@51 100 except TypeError:
Chris@51 101 pass
Chris@51 102 try:
Chris@80 103 plug.set_parameter_value("steak", 0)
Chris@51 104 assert False
Chris@102 105 except Exception:
Chris@51 106 pass
Chris@51 107 try:
Chris@80 108 plug.get_parameter_value(4)
Chris@51 109 assert False
Chris@51 110 except TypeError:
Chris@51 111 pass
Chris@51 112 try:
Chris@80 113 plug.get_parameter_value("steak")
Chris@51 114 assert False
Chris@102 115 except Exception:
Chris@51 116 pass
Chris@51 117