+++ /dev/null
-// vim: ts=4 sw=4 noet:
-/*
- --------------------------------------------------------------------------------
- Copyright (c) 2018-2019 AT&T Intellectual Property.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- --------------------------------------------------------------------------------
-*/
-
-/*
- Mnemonic: unit_test.c
- Abstract: Basic unit tests for the mc listener.
- Date: 22 August 2019
- Author: E. Scott Daniels
-*/
-
-// this/these are what we are testing; include them directly
-#include "mcl.c"
-
-/*
- Parms: [fifo-dir-name]
-*/
-int main( int argc, char** argv ) {
- void* ctx;
- int errors;
- char* dname = "/tmp/fifos";
- char* port = "4560";
- int fd;
- int fd2;
-
- if( argc > 1 ) {
- dname = argv[1];
- }
-
- ctx = mcl_mk_context( dname );
- if( ctx == NULL ) {
- fprintf( stderr, "[FAIL] couldn't make context" );
- exit( 1 );
- }
-
- mcl_set_sigh(); // prevent colobber from broken pipe
-
- fd = suss_fifo( ctx, 101, 1 ); // should open the file for writing and return the fdes
- if( fd < 0 ) {
- fprintf( stderr, "[FAIL] suss_fifo did not return a valid fd\n" );
- errors++;
- }
-
- fd2= suss_fifo( ctx, 101, 0 ); // should open the file file for reading and return a different fd
- if( fd < 0 ) {
- fprintf( stderr, "[FAIL] suss_fifo did not return a valid fd\n" );
- errors++;
- }
- if( fd == fd2 ) {
- fprintf( stderr, "[FAIL] reading and writing fifo file descriptors expected to differ; both were %d\n", fd );
- errors++;
- }
-
- mcl_start_listening( ctx, port, 0 ); // start the listener, no waiting for rt since we don't send
-
- if( ! errors ) {
- fprintf( stderr, "[PASS] all tests look peachy\n" );
- }
-
- return errors != 0;
-}
-