001    package org.hackystat.telemetry.analyzer.configuration;
002    
003    import junit.framework.TestCase;
004    
005    import org.hackystat.telemetry.analyzer.language.ast.TelemetryChartDefinition;
006    import org.hackystat.telemetry.analyzer.language.parser.TelemetryLanguageParser;
007    import org.hackystat.sensorbase.resource.users.jaxb.User;
008    
009    /**
010     * Test suite for <code>TelemetryChartDefinitionInfo</code>.
011     * 
012     * @author (Cedric) Qin Zhang
013     */
014    public class TestTelemetryChartDefinitionInfo extends TestCase {
015      
016      private String name = "name";
017      
018    
019      /**
020       * Test case 1.
021       * 
022       * @throws Exception If test fails.
023       */
024      public void testCase1() throws Exception {
025        User user = null; // = UserManager.getInstance().getTestUser();
026        ShareScope share = ShareScope.getPrivateShareScope();
027        String defString = "chart name(t) = {\"title\", (MyStreams(t), yAxis()), " +
028            "(MyStreams2(),yAxis())};";
029        
030        TelemetryChartDefinitionInfo defInfo 
031            = new TelemetryChartDefinitionInfo(defString, user, share);
032        assertEquals(user, defInfo.getOwner());
033        assertEquals(share, defInfo.getShareScope());
034        assertEquals(name, defInfo.getName());
035        assertEquals(defString, defInfo.getDefinitionString());
036    
037        TelemetryChartDefinition def = defInfo.getChartDefinitionObject();
038        assertEquals(name, def.getName());
039        assertEquals("title", def.getTitle());
040      }
041      
042    
043      /**
044       * Test case 2.
045       * 
046       * @throws Exception If test fails.
047       */
048      public void testCase2() throws Exception {
049        User user = null; //UserManager.getInstance().getTestUser();
050        ShareScope share = ShareScope.getPrivateShareScope();
051        String defString = "chart name(t) = {\"title\", (MyStreams(t), yAxis()), " +
052            "(MyStreams2(),yAxis())};";
053        TelemetryChartDefinition def = TelemetryLanguageParser.parseChartDef(defString);
054        
055        TelemetryChartDefinitionInfo defInfo 
056            = new TelemetryChartDefinitionInfo(def, user, share);
057        assertEquals(user, defInfo.getOwner());
058        assertEquals(share, defInfo.getShareScope());
059        assertEquals(name, defInfo.getName());
060        assertEquals(defString, defInfo.getDefinitionString());
061    
062        assertSame(def, defInfo.getChartDefinitionObject());
063        assertEquals(name, def.getName());
064        assertEquals("title", def.getTitle());
065      }
066    }