diff --git a/trunk/ConsoleDataMigration/sources/OMakefile b/trunk/ConsoleDataMigration/sources/OMakefile index 4b3eca3..0ebeff4 100644 --- a/trunk/ConsoleDataMigration/sources/OMakefile +++ b/trunk/ConsoleDataMigration/sources/OMakefile @@ -14,7 +14,6 @@ # $Rev$ #---------------------------------------------------------------------------- -#.SUBDIRS: $(glob D, *) .SUBDIRS: $(exist-dirs \ common \ ConsoleBackup \ @@ -22,4 +21,7 @@ tools \ ) +if $(IsTestBuild) + .SUBDIRS: $(exist-dirs tests) + DefineDefaultRules() diff --git a/trunk/ConsoleDataMigration/sources/tests/OMakefile b/trunk/ConsoleDataMigration/sources/tests/OMakefile new file mode 100644 index 0000000..33d8857 --- /dev/null +++ b/trunk/ConsoleDataMigration/sources/tests/OMakefile @@ -0,0 +1,38 @@ +#!/usr/bin/env omake +#---------------------------------------------------------------------------- +# Project: Horizon +# File: OMakefile +# +# Copyright (C)2009 Nintendo Co., Ltd. All rights reserved. +# +# These coded instructions, statements, and computer programs contain +# proprietary information of Nintendo of America Inc. and/or Nintendo +# Company Ltd., and are protected by Federal copyright law. They may +# not be disclosed to third parties or copied or duplicated in any form, +# in whole or in part, without the prior written consent of Nintendo. +# +# $Rev$ +#---------------------------------------------------------------------------- +SUPPORTED_TARGETS = CTR-*.Process.MPCore.* + +include $(makePlatformDefsPath tests) + +INCLUDES += \ + ../common + +TEST_COMMON_SOURCES[] = + ../common/Util.cpp + +SOURCES_TEST[] = test_Util.cpp + +ROMFS_ROOT = ../common/romfiles + +TEST_ENVIRONMENT_PROCESSLIST = true +TEST_ENVIRONMENT_EMUMEM = true + +LIBS += libnn_test + +include $(makePlatformDefsPath build.tests) + + +tests: $(TEST_TARGETS) diff --git a/trunk/ConsoleDataMigration/sources/tests/test_Util.cpp b/trunk/ConsoleDataMigration/sources/tests/test_Util.cpp new file mode 100644 index 0000000..6905c52 --- /dev/null +++ b/trunk/ConsoleDataMigration/sources/tests/test_Util.cpp @@ -0,0 +1,90 @@ +/*---------------------------------------------------------------------------* + Project: Horizon + File: test_Util.cpp + + Copyright 2009 Nintendo. All rights reserved. + + These coded instructions, statements, and computer programs contain + proprietary information of Nintendo of America Inc. and/or Nintendo + Company Ltd., and are protected by Federal copyright law. They may + not be disclosed to third parties or copied or duplicated in any form, + in whole or in part, without the prior written consent of Nintendo. + + $Rev$ + *---------------------------------------------------------------------------*/ + +#include +#include +#include + +#include "Util.h" + +using namespace nn::test; + +class UtilTest : public Suite { +public: + virtual bool InitializeSuite(); + virtual void FinalizeSuite(); + + UtilTest() { + SUITE_NAME("TestUtil"); + TEST_ADD(UtilTest::AddCheckDigit); + } +private: + void AddCheckDigit(); +}; + +//------------------------------------------------------------------ +// Initialize/Finalize +//------------------------------------------------------------------ + +bool UtilTest::InitializeSuite() +{ + return true; +} + +void UtilTest::FinalizeSuite() +{ +} + +//------------------------------------------------------------------ +// Test Util +//------------------------------------------------------------------ + + +//------------------------------------------------------------------ +// Test Functions +//------------------------------------------------------------------ + +void UtilTest::AddCheckDigit() +{ + + // 通常チェックデジット + { + const char serialBase[] = "EJF10000445"; + const char serialWithCheckDigit[] = "EJF100004458"; + char serial[nn::cfg::CTR::CFG_SECURE_INFO_SERIAL_NO_LEN]; + std::memcpy(serial, serialBase, sizeof(serialBase)); + common::Util::AddCheckDigit(serial); + + NN_TEST_ASSERT_EQUAL(std::strcmp(serial, serialWithCheckDigit), 0); + } + + // チェックデジットが0になる場合 + { + const char serialBase[] = "CJF10004638"; + const char serialWithCheckDigit[] = "CJF100046380"; + char serial[nn::cfg::CTR::CFG_SECURE_INFO_SERIAL_NO_LEN]; + std::memcpy(serial, serialBase, sizeof(serialBase)); + common::Util::AddCheckDigit(serial); + + NN_TEST_ASSERT_EQUAL(std::strcmp(serial, serialWithCheckDigit), 0); + } +} + + +NN_TEST_DEFINE_MAIN(UtilTest) + +/*---------------------------------------------------------------------------* + End of file + *---------------------------------------------------------------------------*/