diff options
Diffstat (limited to 'cras/src/tests/dsp_unittest.cc')
-rw-r--r-- | cras/src/tests/dsp_unittest.cc | 155 |
1 files changed, 0 insertions, 155 deletions
diff --git a/cras/src/tests/dsp_unittest.cc b/cras/src/tests/dsp_unittest.cc deleted file mode 100644 index b1f4c4ee..00000000 --- a/cras/src/tests/dsp_unittest.cc +++ /dev/null @@ -1,155 +0,0 @@ -// Copyright (c) 2012 The Chromium OS Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include <gtest/gtest.h> - -#include "cras_dsp.h" -#include "cras_dsp_module.h" - -#define FILENAME_TEMPLATE "DspTest.XXXXXX" - -namespace { - -extern "C" { -struct dsp_module* cras_dsp_module_load_ladspa(struct plugin* plugin) { - return NULL; -} -} - -class DspTestSuite : public testing::Test { - protected: - virtual void SetUp() { - strcpy(filename, FILENAME_TEMPLATE); - int fd = mkstemp(filename); - fp = fdopen(fd, "w"); - } - - virtual void TearDown() { - CloseFile(); - unlink(filename); - } - - virtual void CloseFile() { - if (fp) { - fclose(fp); - fp = NULL; - } - } - - char filename[sizeof(FILENAME_TEMPLATE) + 1]; - FILE* fp; -}; - -TEST_F(DspTestSuite, Simple) { - const char* content = - "[M1]\n" - "library=builtin\n" - "label=source\n" - "purpose=capture\n" - "output_0={audio}\n" - "disable=(not (equal? variable \"foo\"))\n" - "[M2]\n" - "library=builtin\n" - "label=sink\n" - "purpose=capture\n" - "input_0={audio}\n" - "\n"; - fprintf(fp, "%s", content); - CloseFile(); - - cras_dsp_init(filename); - struct cras_dsp_context *ctx1, *ctx3, *ctx4; - ctx1 = cras_dsp_context_new(44100, "playback"); /* wrong purpose */ - ctx3 = cras_dsp_context_new(44100, "capture"); - ctx4 = cras_dsp_context_new(44100, "capture"); - - cras_dsp_set_variable_string(ctx1, "variable", "foo"); - cras_dsp_set_variable_string(ctx3, "variable", "bar"); /* wrong value */ - cras_dsp_set_variable_string(ctx4, "variable", "foo"); - - cras_dsp_load_pipeline(ctx1); - cras_dsp_load_pipeline(ctx3); - cras_dsp_load_pipeline(ctx4); - - /* only ctx4 should load the pipeline successfully */ - ASSERT_EQ(NULL, cras_dsp_get_pipeline(ctx1)); - ASSERT_EQ(NULL, cras_dsp_get_pipeline(ctx3)); - - struct pipeline* pipeline = cras_dsp_get_pipeline(ctx4); - ASSERT_TRUE(pipeline); - cras_dsp_put_pipeline(ctx4); - - /* change the variable to a wrong value, and we should fail to reload. */ - cras_dsp_set_variable_string(ctx4, "variable", "bar"); - cras_dsp_load_pipeline(ctx4); - ASSERT_EQ(NULL, cras_dsp_get_pipeline(ctx4)); - - /* change the variable back, and we should reload successfully. */ - cras_dsp_set_variable_string(ctx4, "variable", "foo"); - cras_dsp_reload_ini(); - ASSERT_TRUE(cras_dsp_get_pipeline(ctx4)); - - cras_dsp_context_free(ctx1); - cras_dsp_context_free(ctx3); - cras_dsp_context_free(ctx4); - cras_dsp_stop(); -} - -static int empty_instantiate(struct dsp_module* module, - unsigned long sample_rate) { - return 0; -} - -static void empty_connect_port(struct dsp_module* module, - unsigned long port, - float* data_location) {} - -static int empty_get_delay(struct dsp_module* module) { - return 0; -} - -static void empty_run(struct dsp_module* module, unsigned long sample_count) {} - -static void empty_deinstantiate(struct dsp_module* module) {} - -static void empty_free_module(struct dsp_module* module) { - free(module); -} - -static int empty_get_properties(struct dsp_module* module) { - return 0; -} - -static void empty_dump(struct dsp_module* module, struct dumper* d) { - dumpf(d, "built-in module\n"); -} - -static void empty_init_module(struct dsp_module* module) { - module->instantiate = &empty_instantiate; - module->connect_port = &empty_connect_port; - module->get_delay = &empty_get_delay; - module->run = &empty_run; - module->deinstantiate = &empty_deinstantiate; - module->free_module = &empty_free_module; - module->get_properties = &empty_get_properties; - module->dump = &empty_dump; -} - -} // namespace - -extern "C" { -struct dsp_module* cras_dsp_module_load_builtin(struct plugin* plugin) { - struct dsp_module* module; - module = (struct dsp_module*)calloc(1, sizeof(struct dsp_module)); - empty_init_module(module); - return module; -} -void cras_dsp_module_set_sink_ext_module(struct dsp_module* module, - struct ext_dsp_module* ext_module) {} -} // extern "C" - -int main(int argc, char** argv) { - ::testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} |