@Test
public void makeNodeOrPathTest() {

	PrefixMapping pMap = PrefixMapping.Factory.create();
	pMap.setNsPrefixes(PrefixMapping.Standard );
	
	Object n = Converters.makeNodeOrPath(null, pMap);
	assertEquals(Node.ANY, n);
	n = Converters.makeNodeOrPath(RDF.type, pMap);
	assertEquals(RDF.type.asNode(), n);
	Node n2 = NodeFactory.createBlankNode();
	n = Converters.makeNodeOrPath(n2, pMap);
	assertEquals(n2, n);
	pMap.setNsPrefix("demo", "http://example.com/");
	n = Converters.makeNodeOrPath("demo:type", pMap);
	assertEquals(NodeFactory.createURI("http://example.com/type"), n);
	n = Converters.makeNodeOrPath("<one>", pMap);
	assertEquals(NodeFactory.createURI("one"), n);
	UUID uuid = UUID.randomUUID();
	try {
		Converters.makeNodeOrPath( uuid, pMap);
		fail( "Should have thrown IllegalArgumentException");
	}
	catch (IllegalArgumentException expected) {
		// do nothing
	}
	TypeMapper.getInstance().registerDatatype(new UuidDataType());		
	n = Converters.makeNodeOrPath( uuid, pMap);
	LiteralLabel ll = LiteralLabelFactory.createTypedLiteral(uuid);
	assertEquals(NodeFactory.createLiteral(ll), n);
	
	n = Converters.makeNodeOrPath( NodeFactory.createVariable("foo"), pMap);
	assertTrue( n instanceof Var );
	Node node = (Node)n;
	assertTrue( node.isVariable());
	assertEquals( "foo", node.getName());
	n = Converters.makeNodeOrPath( "'text'@en", pMap);
	assertTrue( n instanceof Node );
	node = (Node)n;
	assertEquals( "text", node.getLiteralLexicalForm());
	assertEquals( "en", node.getLiteralLanguage());
	
	n = Converters.makeNodeOrPath( "<one>/<two>", pMap);
	assertTrue( n instanceof Path );
	Path pth = (Path)n;
	assertEquals( "<one>/<two>", pth.toString() );
	
}