Project: engagement_recognition License: BSD Dependencies:
Used by:
None |
engagement_recognition/test/events/event_test.cppGo to the documentation of this file.00001 /* 00002 * Software License Agreement (BSD License) 00003 * 00004 * Copyright (c) 2010, Worcester Polytechnic Institute 00005 * All rights reserved. 00006 * 00007 * Redistribution and use in source and binary forms, with or without 00008 * modification, are permitted provided that the following conditions 00009 * are met: 00010 * 00011 * * Redistributions of source code must retain the above copyright 00012 * notice, this list of conditions and the following disclaimer. 00013 * * Redistributions in binary form must reproduce the above 00014 * copyright notice, this list of conditions and the following 00015 * disclaimer in the documentation and/or other materials provided 00016 * with the distribution. 00017 * * Neither the name of Worcester Polytechnic Institute. nor the names 00018 * of its contributors may be used to endorse or promote products 00019 * derived from this software without specific prior written permission. 00020 * 00021 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 00022 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 00023 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS 00024 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 00025 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 00026 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 00027 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 00028 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 00029 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 00030 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN 00031 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 00032 * POSSIBILITY OF SUCH DAMAGE. 00033 */ 00034 #include <gtest/gtest.h> 00035 #include <vector> 00036 #include <string> 00037 00038 #include "../src/recognition/events/event.h" 00039 00043 TEST(EventTestSuite, testConstructor) 00044 { 00045 Event event = Event(); 00046 00047 EXPECT_EQ("", event.getName()); 00048 EXPECT_EQ((unsigned)0, event.getAdditional().size()); 00049 } 00050 00054 TEST(EventTestSuite, testNamedConstructor) 00055 { 00056 std::string name = "event_name"; 00057 Event event = Event(name); 00058 00059 EXPECT_EQ(name, event.getName()); 00060 EXPECT_EQ((unsigned)0, event.getAdditional().size()); 00061 00062 Event event2 = Event(name); 00063 00064 EXPECT_EQ(event.getName(), event2.getName()); 00065 EXPECT_EQ((unsigned)0, event2.getAdditional().size()); 00066 00067 event = Event(""); 00068 EXPECT_EQ("", event.getName()); 00069 EXPECT_EQ((unsigned)0, event.getAdditional().size()); 00070 } 00071 00075 TEST(EventTestSuite, testAdditionalConstructor) 00076 { 00077 std::string name = "event_name"; 00078 std::vector<std::string> additional = std::vector<std::string>(); 00079 additional.push_back("red"); 00080 additional.push_back("blue"); 00081 additional.push_back("green"); 00082 00083 // Create the event 00084 Event event = Event(name, additional); 00085 00086 EXPECT_EQ(name, event.getName()); 00087 EXPECT_EQ(additional.size(), event.getAdditional().size()); 00088 00089 // Make sure all the objects are equal 00090 for (unsigned c = 0; c < additional.size(); c++) 00091 EXPECT_EQ(additional.at(c), event.getAdditional().at(c)); 00092 00093 additional.clear(); 00094 00095 event = Event("", additional); 00096 00097 EXPECT_EQ("", event.getName()); 00098 EXPECT_EQ((unsigned)0, event.getAdditional().size()); 00099 } |