tracesrv/tracecompiler/src/com.nokia.tracecompiler/src/com/nokia/tracecompiler/engine/source/SourceFormatterTest.java
changeset 62 1c2bb2fc7c87
equal deleted inserted replaced
56:aa2539c91954 62:1c2bb2fc7c87
       
     1 /*
       
     2  * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
       
     3  * All rights reserved.
       
     4  * This component and the accompanying materials are made available
       
     5  * under the terms of "Eclipse Public License v1.0"
       
     6  * which accompanies this distribution, and is available
       
     7  * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8  *
       
     9  * Initial Contributors:
       
    10  * Nokia Corporation - initial contribution.
       
    11  *
       
    12  * Contributors:
       
    13  *
       
    14  * Description:
       
    15  *
       
    16  *
       
    17  */
       
    18 
       
    19 
       
    20 package com.nokia.tracecompiler.engine.source;
       
    21 
       
    22 import static org.junit.Assert.*;
       
    23 
       
    24 import java.util.ArrayList;
       
    25 
       
    26 import org.junit.BeforeClass;
       
    27 import org.junit.Test;
       
    28 
       
    29 import com.nokia.tracecompiler.engine.TraceCompilerEngineGlobals;
       
    30 import com.nokia.tracecompiler.engine.rules.osttrace.OstTraceFormatRule;
       
    31 import com.nokia.tracecompiler.model.Trace;
       
    32 import com.nokia.tracecompiler.model.TraceCompilerException;
       
    33 import com.nokia.tracecompiler.model.TraceGroup;
       
    34 import com.nokia.tracecompiler.model.TraceModel;
       
    35 import com.nokia.tracecompiler.model.TraceModelExtension;
       
    36 import com.nokia.tracecompiler.model.TraceObjectFactory;
       
    37 import com.nokia.tracecompiler.plugin.TraceAPIFormatter.TraceFormatType;
       
    38 
       
    39 public class SourceFormatterTest {
       
    40 
       
    41 	@BeforeClass
       
    42 	public static void setUpBeforeClass() throws Exception {
       
    43 		TraceCompilerEngineGlobals.start();		
       
    44 	}
       
    45 
       
    46 	@Test
       
    47 	public void testFormatTraceTraceTraceFormatType() throws TraceCompilerException {
       
    48 				
       
    49 		TraceModel model = TraceCompilerEngineGlobals.getTraceModel();
       
    50 		OstTraceFormatRule ostFormatRule = new OstTraceFormatRule(); 
       
    51 		
       
    52 		// note these tests use OstFormatRule
       
    53 		model.addExtension(ostFormatRule);
       
    54 		
       
    55 		TraceObjectFactory factory = model.getFactory();
       
    56 
       
    57 		final int id = 999;
       
    58 		String name = "hello_hello";  		
       
    59 		TraceModelExtension[] extensions = null;
       
    60 
       
    61 		TraceGroup traceGroup = factory.createTraceGroup(id, name, extensions );		
       
    62 		Trace trace = factory.createTrace(traceGroup, id, name, "traceText", extensions);
       
    63 		
       
    64 		String str= SourceFormatter.formatTrace(trace, TraceFormatType.EMPTY_MACRO);
       
    65 		assertTrue(str.equals(""));		
       
    66 				
       
    67 		str = SourceFormatter.formatTrace(trace, TraceFormatType.TRACE_ACTIVATION);
       
    68 		assertTrue(str.equals("BTraceFiltered8( EXTRACT_GROUP_ID(aTraceID), EOstTraceActivationQuery, KOstTraceComponentID, aTraceID )\r\n"));		
       
    69 
       
    70 		str = SourceFormatter.formatTrace(trace, TraceFormatType.HEADER);		
       
    71 		assertTrue(str.equals("OstTraceGen0( TUint32 aTraceID )\r\n"));
       
    72 		
       
    73 		str= SourceFormatter.formatTrace(trace, TraceFormatType.TRACE_BUFFER);	
       
    74 		assertTrue(str.equals("OstSendNBytes( EXTRACT_GROUP_ID(aTraceID), EOstTrace, KOstTraceComponentID, aTraceID, %DATA%, %LENGTH% );\r\n"));
       
    75 		
       
    76 		str= SourceFormatter.formatTrace(trace, TraceFormatType.TRACE_PACKED);
       
    77 		assertTrue(str.equals("BTraceFilteredContext12( EXTRACT_GROUP_ID(aTraceID), EOstTrace, KOstTraceComponentID, aTraceID, %DATA% );\r\n"));
       
    78 				
       
    79 		
       
    80 		// after we remove the format rule - we should get no data
       
    81 		model.removeExtension(ostFormatRule);		
       
    82 	
       
    83 		str= SourceFormatter.formatTrace(trace, TraceFormatType.EMPTY_MACRO);
       
    84 		assertTrue(str.equals(""));		
       
    85 	
       
    86 		str = SourceFormatter.formatTrace(trace, TraceFormatType.TRACE_ACTIVATION);
       
    87 		assertTrue(str.equals(""));		
       
    88 
       
    89 		str = SourceFormatter.formatTrace(trace, TraceFormatType.HEADER);		
       
    90 		assertTrue(str.equals(""));
       
    91 		
       
    92 		str= SourceFormatter.formatTrace(trace, TraceFormatType.TRACE_BUFFER);	
       
    93 		assertTrue(str.equals(""));
       
    94 		
       
    95 		str= SourceFormatter.formatTrace(trace, TraceFormatType.TRACE_PACKED);
       
    96 		assertTrue(str.equals(""));		
       
    97 	}
       
    98 
       
    99 	@Test
       
   100 	public void testFormatTraceTraceTraceFormattingRuleTraceFormatTypeIteratorOfStringBoolean() throws TraceCompilerException {
       
   101 				
       
   102 		// note these tests use OstFormatRule specified in setupBeforeClass
       
   103 		final int id = 999;
       
   104 		String name = "hello_hello";  		
       
   105 		TraceModelExtension[] extensions = null;
       
   106 
       
   107 		OstTraceFormatRule ostFormatRule = new OstTraceFormatRule(); 
       
   108 		TraceModel model = TraceCompilerEngineGlobals.getTraceModel();		
       
   109 		TraceObjectFactory factory = model.getFactory();
       
   110 		
       
   111 		TraceGroup traceGroup = factory.createTraceGroup(id, name, extensions );		
       
   112 		Trace trace = factory.createTrace(traceGroup, id, name, "traceText", extensions);
       
   113 
       
   114 		ArrayList<String> tags = new ArrayList<String>();
       
   115 		tags.add("tag_1");
       
   116 		tags.add("tag_2");
       
   117 		tags.add("tag_3");
       
   118 		tags.add("tag_4");
       
   119 		
       
   120 		String str = SourceFormatter.formatTrace(trace, ostFormatRule, TraceFormatType.EMPTY_MACRO, tags.iterator(), false);
       
   121 		assertTrue(str.equals(""));		
       
   122 		str = SourceFormatter.formatTrace(trace, ostFormatRule, TraceFormatType.EMPTY_MACRO, tags.iterator(), true);
       
   123 		assertTrue(str.equals(""));		
       
   124 
       
   125 		str = SourceFormatter.formatTrace(trace, ostFormatRule, TraceFormatType.TRACE_ACTIVATION, tags.iterator(), false);
       
   126 		assertTrue(str.equals("BTraceFiltered8( EXTRACT_GROUP_ID(aTraceID), EOstTraceActivationQuery, KOstTraceComponentID, aTraceID )\r\n"));		
       
   127 		str = SourceFormatter.formatTrace(trace, ostFormatRule, TraceFormatType.TRACE_ACTIVATION, tags.iterator(), true);
       
   128 		assertTrue(str.equals("BTraceFiltered8( EXTRACT_GROUP_ID(aTraceID), EOstTraceActivationQuery, KOstTraceComponentID, aTraceID )\r\n"));		
       
   129 			
       
   130 		str = SourceFormatter.formatTrace(trace, ostFormatRule, TraceFormatType.HEADER, tags.iterator(), true);
       
   131 		assertTrue(str.equals("OstTraceGen0( TUint32 aTraceID )\r\n"));		
       
   132 		str = SourceFormatter.formatTrace(trace, ostFormatRule, TraceFormatType.HEADER, tags.iterator(), false);
       
   133 		assertTrue(str.equals("OstTraceGen0( TUint32 aTraceID )\r\n"));
       
   134 				
       
   135 		str = SourceFormatter.formatTrace(trace, ostFormatRule, TraceFormatType.TRACE_BUFFER, tags.iterator(), true);
       
   136 		assertTrue(str.equals("OstSendNBytes( EXTRACT_GROUP_ID(aTraceID), EOstTrace, KOstTraceComponentID, aTraceID, %DATA%, %LENGTH% );\r\n"));
       
   137 		str = SourceFormatter.formatTrace(trace, ostFormatRule, TraceFormatType.TRACE_BUFFER, tags.iterator(), false);
       
   138 		assertTrue(str.equals("OstSendNBytes( EXTRACT_GROUP_ID(aTraceID), EOstTrace, KOstTraceComponentID, aTraceID, %DATA%, %LENGTH% );\r\n"));
       
   139 
       
   140 		str = SourceFormatter.formatTrace(trace, ostFormatRule, TraceFormatType.TRACE_PACKED, tags.iterator(), true);
       
   141 		assertTrue(str.equals("BTraceFilteredContext12( EXTRACT_GROUP_ID(aTraceID), EOstTrace, KOstTraceComponentID, aTraceID, %DATA% );\r\n"));
       
   142 		str = SourceFormatter.formatTrace(trace, ostFormatRule, TraceFormatType.TRACE_PACKED, tags.iterator(), false);
       
   143 		assertTrue(str.equals("BTraceFilteredContext12( EXTRACT_GROUP_ID(aTraceID), EOstTrace, KOstTraceComponentID, aTraceID, %DATA% );\r\n"));
       
   144 		
       
   145 		// try with no format rule	
       
   146 		str = SourceFormatter.formatTrace(trace, null, TraceFormatType.EMPTY_MACRO, tags.iterator(), true);
       
   147 		assertTrue(str.equals(""));		
       
   148 		str = SourceFormatter.formatTrace(trace, null, TraceFormatType.EMPTY_MACRO, tags.iterator(), false);
       
   149 		assertTrue(str.equals(""));		
       
   150 		
       
   151 		str = SourceFormatter.formatTrace(trace, null,  TraceFormatType.TRACE_ACTIVATION, tags.iterator(), true);
       
   152 		assertTrue(str.equals(""));		
       
   153 		str = SourceFormatter.formatTrace(trace, null,  TraceFormatType.TRACE_ACTIVATION, tags.iterator(), false);
       
   154 		assertTrue(str.equals(""));		
       
   155 
       
   156 		str = SourceFormatter.formatTrace(trace, null, TraceFormatType.HEADER, tags.iterator(), true);
       
   157 		assertTrue(str.equals(""));		
       
   158 		str = SourceFormatter.formatTrace(trace, null, TraceFormatType.HEADER, tags.iterator(), false);
       
   159 		assertTrue(str.equals(""));		
       
   160 
       
   161 		str = SourceFormatter.formatTrace(trace, null, TraceFormatType.TRACE_BUFFER, tags.iterator(), true);
       
   162 		assertTrue(str.equals(""));		
       
   163 		str = SourceFormatter.formatTrace(trace, null, TraceFormatType.TRACE_BUFFER, tags.iterator(), false);
       
   164 		assertTrue(str.equals(""));		
       
   165 
       
   166 		str = SourceFormatter.formatTrace(trace, null, TraceFormatType.TRACE_PACKED, tags.iterator(), true);
       
   167 		assertTrue(str.equals(""));		
       
   168 		str = SourceFormatter.formatTrace(trace, null, TraceFormatType.TRACE_PACKED, tags.iterator(), false);
       
   169 		assertTrue(str.equals(""));				
       
   170 	}
       
   171 }