in src/main/java/com/atlassian/uwc/exporters/SMFExporterTest.java [977:1061]
public void testGetAllAncestors() {
HashMap<String,String> parentRelationships = new HashMap<String, String>();
String relString = "brd7=brd3, brd6=brd2, brd1=cat1, brd3=brd2, brd5=brd2, brd4=cat2, brd2=cat1";
String[] relPairs = relString.split(",");
for (int i = 0; i < relPairs.length; i++) {
String pair = relPairs[i];
String[] kv = pair.split("=");
parentRelationships.put(kv[0].trim(), kv[1].trim());
}
//category -> board -> topic
Message message = new SMFExporter().new Message();
message.board = "1";
message.content = "testing";
message.firstid = "1";
message.id = "1";
message.isfirst = true;
message.time = "1245692232";
message.title = "Welcome to SMF!";
message.topic = "1";
message.useremail = "info@simplemachines.org";
message.userid = "0";
message.username = "Simple Machines";
Vector<String> actualVec = tester.getAllAncestors(parentRelationships, message.board);
String expected = "brd1:cat1";
String actual = vec2String(actualVec, ":");
assertNotNull(actual);
assertEquals(expected, actual);
//category -> board -> board -> topic
message = new SMFExporter().new Message();
message.board = "6";
message.content = "Testing";
message.firstid = "29";
message.id = "29";
message.isfirst = true;
message.time = "125351398";
message.title = "BoardSameName Topic2";
message.topic = "12";
message.useremail = "laura.kolker@gmail.com";
message.userid = "1";
message.username = "admin";
actualVec = tester.getAllAncestors(parentRelationships, message.board);
expected = "brd6:brd2:cat1";
actual = vec2String(actualVec, ":");
assertNotNull(actual);
assertEquals(expected, actual);
message = new SMFExporter().new Message();
message.board = "5";
message.content = "Testing";
message.firstid = "28";
message.id = "28";
message.isfirst = true;
message.time = "1253651323";
message.title = "BoardSameName Topic1";
message.topic = "11";
message.useremail = "laura.kolker@gmail.com";
message.userid = "1";
message.username = "admin";
actualVec = tester.getAllAncestors(parentRelationships, message.board);
expected = "brd5:brd2:cat1";
actual = vec2String(actualVec, ":");
assertNotNull(actual);
assertEquals(expected, actual);
//category -> board -> board -> topic -> reply
message = new SMFExporter().new Message();
message.board = "6";
message.content = "Testing";
message.firstid = "29";
message.id = "30";
message.isfirst = false;
message.time = "1253651406";
message.title = "Re: BoardSameName Topic2";
message.topic = "12";
message.useremail = "laura.kolker@gmail.com";
message.userid = "1";
message.username = "admin";
actualVec = tester.getAllAncestors(parentRelationships, message.board);
expected = "brd6:brd2:cat1";
actual = vec2String(actualVec, ":");
assertNotNull(actual);
assertEquals(expected, actual);
}