1 /*******************************************************************************
2 * Copyright (c) 2015 Ericsson
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * Alexandre Montplaisir - Initial API and implementation
11 *******************************************************************************/
13 package org
.eclipse
.tracecompass
.tmf
.core
.tests
.callstack
;
15 import static org
.junit
.Assert
.assertEquals
;
16 import static org
.junit
.Assert
.assertNotNull
;
17 import static org
.junit
.Assert
.assertNull
;
18 import static org
.junit
.Assert
.assertTrue
;
20 import java
.nio
.file
.Files
;
21 import java
.nio
.file
.Path
;
22 import java
.nio
.file
.Paths
;
25 import org
.eclipse
.tracecompass
.internal
.tmf
.core
.callstack
.FunctionNameMapper
;
26 import org
.junit
.Test
;
29 * Unit tests for the {@link FunctionNameMapper} class.
31 * @author Alexandre Montplaisir
33 public class FunctionNameMapperTest
{
36 * Test the output of a text file obtained from 'nm'.
39 public void testNmFile() {
40 Path nmOutput
= Paths
.get("..", "..", "tmf", "org.eclipse.tracecompass.tmf.core.tests",
41 "testfiles", "callstack" , "nm-output-example");
42 assertTrue(Files
.exists(nmOutput
));
43 Map
<String
, String
> results
= FunctionNameMapper
.mapFromNmTextFile(nmOutput
.toFile());
45 assertNotNull(results
);
46 assertEquals(28, results
.size());
47 assertNull(results
.get(""));
49 assertEquals("completed.7259", results
.get("601190"));
50 assertEquals("data_start", results
.get("601048"));
51 assertEquals("deregister_tm_clones", results
.get("400690"));
52 assertEquals("__do_global_dtors_aux", results
.get("400710"));
53 assertEquals("__dso_handle", results
.get("601050"));
54 assertEquals("_DYNAMIC", results
.get("600e18"));
55 assertEquals("_end", results
.get("601198"));
56 assertEquals("_fini", results
.get("400874"));
57 assertEquals("frame_dummy", results
.get("400730"));
58 assertEquals("__FRAME_END__", results
.get("400a28"));
59 assertEquals("_GLOBAL_OFFSET_TABLE_", results
.get("601000"));
60 assertEquals("_GLOBAL__sub_I_main", results
.get("4007ad"));
61 assertEquals("_init", results
.get("4005d0"));
62 assertEquals("__init_array_end", results
.get("600e08"));
63 assertEquals("__init_array_start", results
.get("600df8"));
64 assertEquals("_IO_stdin_used", results
.get("400880"));
65 assertEquals("__JCR_LIST__", results
.get("600e10"));
66 assertEquals("__libc_csu_fini", results
.get("400870"));
67 assertEquals("__libc_csu_init", results
.get("400800"));
68 assertEquals("main", results
.get("400756"));
69 assertEquals("register_tm_clones", results
.get("4006d0"));
70 assertEquals("_start", results
.get("400660"));
71 assertEquals("__TMC_END__", results
.get("601058"));
72 assertEquals("Bar<int, int>* foo<int, int>(int, int)", results
.get("4007c2"));
73 assertEquals("__static_initialization_and_destruction_0(int, int)", results
.get("400770"));
74 assertEquals("std::cout@@GLIBCXX_3.4", results
.get("601080"));
75 assertEquals("std::piecewise_construct", results
.get("400884"));
76 assertEquals("std::__ioinit", results
.get("601191"));
This page took 0.031681 seconds and 5 git commands to generate.