Skip to content

Commit

Permalink
Junit test for beans
Browse files Browse the repository at this point in the history
  • Loading branch information
fbacchella committed Dec 23, 2011
1 parent 759e496 commit a593996
Show file tree
Hide file tree
Showing 5 changed files with 25 additions and 114 deletions.
49 changes: 16 additions & 33 deletions junit/jrds/AllProbeCreationTest.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
package jrds;

import java.beans.PropertyDescriptor;
import java.io.File;
import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.net.URISyntaxException;
import java.util.Collection;
import java.util.Collections;
import java.util.Map;

Expand Down Expand Up @@ -36,7 +38,7 @@ public class AllProbeCreationTest {
static public void configure() throws IOException {
Tools.configure();
StoreOpener.prepare("FILE");
Tools.setLevel(logger, Level.DEBUG, "jrds.Util");
Tools.setLevel(logger, Level.TRACE, "jrds.Util");
}

@Test
Expand Down Expand Up @@ -66,41 +68,22 @@ public void makeProbe() throws ParserConfigurationException, IOException, URISyn
RdsHost host = new RdsHost("Empty");
host.setHostDir(pm.rrddir);
for(ProbeDesc pd: probeDescMap.values()) {
Class<? extends Probe<?,?>> originalClass = pd.getProbeClass();
if(jrds.probe.UrlProbe.class.isAssignableFrom(originalClass)) {
pd.setProbeClass(DummyProbeIndexedUrl.class);
}
else if(jrds.probe.IndexedProbe.class.isAssignableFrom(originalClass)) {
pd.setProbeClass(DummyProbeIndexed.class);
}
else
pd.setProbeClass(DummyProbe.class);

logger.trace("Will create probedesc " + pd.getName());
Probe<?,?> p = pf.makeProbe(pd.getName());
p.setHost(host);
pf.configure(p, Collections.singletonList(originalClass));
p.setLabel("mokelabel");
if(p.checkStore()) {
RrdDef def = p.getRrdDef();
RrdDb db = new RrdDb(def);
Sample s = db.createSample();
s.update();
db.close();
for(PropertyDescriptor bean: pd.getBeans()) {
try {
logger.trace(bean.getName() + " = " + bean.getReadMethod().invoke(p));
} catch (IllegalArgumentException e) {
logger.error("bean read error for '" + bean.getName() + "': " + e.getMessage());
} catch (IllegalAccessException e) {
logger.error("bean read error for '" + bean.getName() + "': " + e.getMessage());
} catch (InvocationTargetException e) {
Throwable t = e;
while(t.getCause() != null)
t = t.getCause();
logger.error("bean read error for '" + bean.getName() + "': " + t);
}
}
File rrdFile = new File(p.getRrdName());
Assert.assertTrue(rrdFile + " not fond", rrdFile.exists());
rrdFile.delete();
//rrdFile.delete();
/*for(GraphNode gn : p.getGraphList()) {
Date now = new Date();
Graph graph = new Graph(gn, new Date(now.getTime() - 10000000), now);
graph.getPngBytes();
}*/
//} catch (Exception e) {
// logger.error("Exception thwron: ", e);
// Assert.fail("Probe failed for " + pd.getName() + ": " + e);
//}
}
}

Expand Down
8 changes: 0 additions & 8 deletions junit/jrds/configuration/TestDescFactory.java
Original file line number Diff line number Diff line change
Expand Up @@ -89,14 +89,6 @@ public void loadProbeDesc() throws Exception {
logger.trace(pd.getCollectOids());
logger.trace(pd.getCollectStrings());
logger.trace(pd.getDefaultArgs());
int base = 80;
List<Object> defaultargs = pd.getDefaultArgs();
for(Object o: defaultargs) {
if(o instanceof Integer)
Assert.assertEquals(base++, ((Integer)o).intValue());
}
Assert.assertEquals(82, base);
Assert.assertTrue(defaultargs.get(2) instanceof List<?>);
//A collect string "" should not be collected
Assert.assertEquals(3, pd.getCollectMapping().size());
Assert.assertEquals(1, pd.getCollectOids().size());
Expand Down
71 changes: 8 additions & 63 deletions junit/jrds/probe/HttpTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,13 @@

import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import javax.xml.parsers.ParserConfigurationException;

import jrds.ProbeDesc;
import jrds.RdsHost;
import jrds.Tools;
import jrds.ProbeDesc;
import junit.framework.Assert;

import org.apache.log4j.Logger;
Expand Down Expand Up @@ -41,6 +39,8 @@ protected Map<String, Number> parseStream(InputStream stream) {
ProbeDesc pd = new ProbeDesc();
p.setHost(webserver);
p.setPd(pd);
p.setFile("/");
p.setPort(80);
p.configure();
Assert.assertEquals("http://" + HOST + ":80/", p.getUrlAsString());
}
Expand All @@ -56,6 +56,8 @@ protected Map<String, Number> parseStream(InputStream stream) {
p.setHost(webserver);
ProbeDesc pd = new ProbeDesc();
p.setPd(pd);
p.setFile("/file");
p.setPort(80);
p.configure("/file");
Assert.assertEquals("http://" + HOST + ":80/file", p.getUrlAsString());
}
Expand All @@ -71,67 +73,10 @@ protected Map<String, Number> parseStream(InputStream stream) {
p.setHost(webserver);
ProbeDesc pd = new ProbeDesc();
p.setPd(pd);
p.configure(81, "/file");
Assert.assertEquals("http://" + HOST + ":81/file", p.getUrlAsString());
}

@Test
public void build4() {
HttpProbe p = new HttpProbe() {
@Override
protected Map<String, Number> parseStream(InputStream stream) {
return null;
}
};
p.setHost(webserver);
ProbeDesc pd = new ProbeDesc();
pd.addSpecific("port", "81");
pd.addSpecific("file", "/file");
p.setPd(pd);
p.configure();
p.setFile("/file");
p.setPort(81);
p.configure();
Assert.assertEquals("http://" + HOST + ":81/file", p.getUrlAsString());
}

@Test
public void build5() {
List<Object> args = new ArrayList<Object>();
args.add("/search");
args.add("81");
args.add("linux");

ProbeDesc pd = new ProbeDesc();
pd.addSpecific("port", "%2$s");
pd.addSpecific("file", "%1$s?q=%3$s");

HttpProbe p = new HttpProbe() {
@Override
protected Map<String, Number> parseStream(InputStream stream) {
return null;
}
};
p.setHost(webserver);
p.setPd(pd);
p.configure(args);
Assert.assertEquals("http://" + HOST + ":81/search?q=linux", p.getUrlAsString());

}

@Test
public void build6() {
List<Object> args = new ArrayList<Object>();
HttpProbe p = new HttpProbe() {
@Override
protected Map<String, Number> parseStream(InputStream stream) {
return null;
}
};
p.setHost(webserver);
ProbeDesc pd = new ProbeDesc();
pd.addSpecific("port", "81");
pd.addSpecific("file", "/file");
p.setPd(pd);
p.configure(args);
Assert.assertEquals("http://" + HOST + ":81/file", p.getUrlAsString());
}

}
5 changes: 0 additions & 5 deletions junit/ressources/fulldesc.xml
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,6 @@
</properties>
<uptimefactor>0.5</uptimefactor>
<defaultargs>
<arg type="Integer" value="80"/>
<arg type="Integer" value="81"/>
<list>
<arg type="Integer" value="80"/>
</list>
</defaultargs>
<ds>
<dsName>a</dsName>
Expand Down
6 changes: 1 addition & 5 deletions junit/ressources/httpxmlprobedesc.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,7 @@
<specific name="upTimePath">/element/@uptime</specific>
<uptimefactor>0.5</uptimefactor>
<defaultargs>
<arg type="Integer" value="80" />
<arg type="Integer" value="81" />
<list>
<arg type="Integer" value="80" />
</list>
<attr name="port">80</attr>
</defaultargs>
<ds>
<dsName>a</dsName>
Expand Down

0 comments on commit a593996

Please sign in to comment.