Files
linux/drivers/comedi/drivers/tests/comedi_example_test.c
Greg Kroah-Hartman 8ffdff6a8c staging: comedi: move out of staging directory
The comedi code came into the kernel back in 2008, but traces its
lifetime to much much earlier.  It's been polished and buffed and
there's really nothing preventing it from being part of the "real"
portion of the kernel.

So move it to drivers/comedi/ as it belongs there.

Many thanks to the hundreds of developers who did the work to make this
happen.

Cc: Ian Abbott <abbotti@mev.co.uk>
Cc: H Hartley Sweeten <hsweeten@visionengravers.com>
Link: https://lore.kernel.org/r/YHauop4u3sP6lz8j@kroah.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-04-15 09:26:25 +02:00

73 lines
1.8 KiB
C

// SPDX-License-Identifier: GPL-2.0+
/* vim: set ts=8 sw=8 noet tw=80 nowrap: */
/*
* comedi/drivers/tests/comedi_example_test.c
* Example set of unit tests.
*
* COMEDI - Linux Control and Measurement Device Interface
* Copyright (C) 2016 Spencer E. Olson <olsonse@umich.edu>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <linux/module.h>
#include "unittest.h"
/* *** BEGIN fake board data *** */
struct comedi_device {
const char *board_name;
int item;
};
static struct comedi_device dev = {
.board_name = "fake_device",
};
/* *** END fake board data *** */
/* *** BEGIN fake data init *** */
static void init_fake(void)
{
dev.item = 10;
}
/* *** END fake data init *** */
static void test0(void)
{
init_fake();
unittest(dev.item != 11, "negative result\n");
unittest(dev.item == 10, "positive result\n");
}
/* **** BEGIN simple module entry/exit functions **** */
static int __init unittest_enter(void)
{
static const unittest_fptr unit_tests[] = {
test0,
NULL,
};
exec_unittests("example", unit_tests);
return 0;
}
static void __exit unittest_exit(void) { }
module_init(unittest_enter);
module_exit(unittest_exit);
MODULE_AUTHOR("Spencer Olson <olsonse@umich.edu>");
MODULE_DESCRIPTION("Comedi unit-tests example");
MODULE_LICENSE("GPL");
/* **** END simple module entry/exit functions **** */