kerneltest/e32test/dmav2/dma_api_tests.cpp
branchRCL_3
changeset 28 5b5d147c7838
parent 26 c734af59ce98
child 29 743008598095
child 36 bbf8bed59bcb
--- a/kerneltest/e32test/dmav2/dma_api_tests.cpp	Tue May 11 17:28:22 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,188 +0,0 @@
-// Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-// e32test\dma\dma_api_tests.cpp
-// 
-// Overview:
-//  This file contains API tests for the new DMA framework
-//
-
-#define __E32TEST_EXTENSION__
-#include "d_dma2.h"
-#include "u32std.h"
-#include "t_dma2.h"
-#include "cap_reqs.h"
-
-#include <e32test.h>
-#include <e32debug.h>
-#include <e32svr.h>
-
-static RTest test(_L("DMA Test Framework API"));
-//----------------------------------------------------------------------------------------------
-//! @SYMTestCaseID      KBASE-DMA-2564
-//! @SYMTestType        CIT
-//! @SYMPREQ            REQ
-//! @SYMTestCaseDesc    This test checks the correct behaviour of Open API in the new DMA framework
-//!
-//! @SYMTestActions     
-//!						1.  Open a DMA channel
-//!						2.	Verify that channel is really open.
-//!
-//! @SYMTestExpectedResults 
-//!						1.  DMA channel opens and KErrNone returned
-//!						2.  Call to ChannelIsOpened() return as ETrue.
-//!
-//! @SYMTestPriority        High
-//! @SYMTestStatus          Implemented
-//----------------------------------------------------------------------------------------------
-void test_open_api()
-{
-	//TO DO : Expose TInt Open(const SCreateInfo& aInfo, TDmaChannel*& aChannel)
-	//TO DO : Implement more test cases
-	test.Start(_L("*** Testing Open() API  ***"));
-
-	test.Next(_L("Open session"));
-	RDmaSession session;
-	TInt r = session.Open();
-	test_KErrNone(r);
-
-	TUint channelCookie_open_api=0;
-	
-	test.Next(_L("Open DMA Channel"));
-	channelCookie_open_api=0;
-	r = session.ChannelOpen(16, channelCookie_open_api);
-	test.Printf(_L("cookie recieved = 0x%08x\n"), channelCookie_open_api);
-	test_KErrNone(r);
-
-	//Check if channel is open
-	// test.Printf(_L("Verify that the specified DMA channel is opened\n"));	
-	// TBool channelOpened;
-	// TBool channelNotOpened = EFalse;
-	// r = session.ChannelIsOpened(channelCookie_open_api,  channelOpened);
-	// test_KErrNone(r);	
- 	// TEST_ASSERT(channelOpened != channelNotOpened)
-	
-	//close channel
-	test.Next(_L("Channel close"));
-	r = session.ChannelClose(channelCookie_open_api);
-	test_KErrNone(r);
-	
-	RTest::CloseHandleAndWaitForDestruction(session);
-	test.End();
-}
-
-//----------------------------------------------------------------------------------------------
-//! @SYMTestCaseID      KBASE-DMA-2568
-//! @SYMTestType        CIT
-//! @SYMPREQ            REQ
-//! @SYMTestCaseDesc    This test checks the correct behaviour of Close API in the new DMA framework
-//!
-//! @SYMTestActions     
-//!						1.  Open a DMA channel
-//!						2.	Open DMA Channel again
-//!						3	Close the DMA channel.
-//!						4	Open DMA channel to verify that the DMA channel closed.
-//!						5.	Open DMA channel again.
-//!						6.	Queue a request on the channel.
-//!						7.	Close DMA channel while request is still queued on it.
-//!
-//! @SYMTestExpectedResults 
-//!						1.  DMA channel opens and KErrNone returned.
-//!						2.	DMA Framework returns KErrInUse as channel is already open.					
-//!						3.	DMA channel closes and KErrNone returned.
-//!						4.	DMA channel opens and KErrNone returned.
-//!						5.	DMA Framework returns KErrInUse as channel is already open.
-//!						6.	DMA request queued and KErrNone returned.
-//!						7.	DMA channel closes and DMA framework flags an error.
-//!							
-//!
-//! @SYMTestPriority        High
-//! @SYMTestStatus          Implemented
-//----------------------------------------------------------------------------------------------
-void test_close_api()
-{
-	test.Start(_L("*** Testing Close() API  ***"));
-	
-	test.Next(_L("Open session"));
-	RDmaSession session;
-	TInt r = session.Open();
-	test_KErrNone(r);
-
-	const TInt size = 64 * KKilo;
-	TUint reqCookieNewStyle_close_api=0;	
-	TUint channelCookie_close_api=0;
-	
-	test.Next(_L("Open a single DMA channel"));
-	r = session.ChannelOpen(16, channelCookie_close_api);
-	test.Printf(_L("cookie recieved = 0x%08x\n"), channelCookie_close_api);
-	test_KErrNone(r);
-
-	// test.Next(_L("Open DMA channel again"));
-	// TUint channelCookie_close_api_1=0;
-	// r = session.ChannelOpen(16, channelCookie_close_api_1);
-	// test.Printf(_L("Verify that DMA channel is already opened\n"));
-	// test_Equal(KErrInUse,r); 
-
-	test.Next(_L("Close the DMA channel"));
-	r = session.ChannelClose(channelCookie_close_api);
-	test_KErrNone(r);
-
-	test.Next(_L("Open DMA channel again"));
-	r = session.ChannelOpen(16, channelCookie_close_api);
-	test.Printf(_L("Verify that DMA channel was closed\n"));
-	test_KErrNone(r); 
-
-	//Fails if a request is created and cancel
-	test.Next(_L("Queue a request on the channel"));
-  	r = session.RequestCreateNew(channelCookie_close_api, reqCookieNewStyle_close_api); //Create Dma request (with new-style callback)
-  	test.Printf(_L("cookie recieved for open channel = 0x%08x\n"), reqCookieNewStyle_close_api);
-  	test_KErrNone(r);
-  
-  	TDmaTransferArgs transferArgs_close_api;
-  	transferArgs_close_api.iSrcConfig.iAddr = 0;
-  	transferArgs_close_api.iDstConfig.iAddr = size;
-  	transferArgs_close_api.iSrcConfig.iFlags = KDmaMemAddr;
-  	transferArgs_close_api.iDstConfig.iFlags = KDmaMemAddr;
-  	transferArgs_close_api.iTransferCount = size;
-  	r = session.FragmentRequest(reqCookieNewStyle_close_api, transferArgs_close_api);
-  	test_KErrNone(r);
-  	
-  	test.Next(_L("Queue DMA Request"));
-  	TCallbackRecord record_close_api;
-  	r = session.QueueRequest(reqCookieNewStyle_close_api, &record_close_api);
-  	test_KErrNone(r);
-	
-	test.Next(_L("Destroy Dma request"));
-	r = session.RequestDestroy(reqCookieNewStyle_close_api);
-	test_KErrNone(r);
-
-	test.Next(_L("Close the DMA channel"));
-	r = session.ChannelClose(channelCookie_close_api);
-	test_KErrNone(r);
-
-	test.End();
-	RTest::CloseHandleAndWaitForDestruction(session);
-}
-
-void RDmaSession::ApiTest()
-	{
-    test_open_api();     // Verify that Open() opens a DMA channel
-    test_close_api();    // Verify that Close() closes a DMA channel
-	}
-
-void ApiTests()
-	{
-	test.Next(_L("Running framework API tests"));
-	RDmaSession::ApiTest();	
-	test.Close();
-	}