package com.pugh.sockso.templates.web.browse; import com.pugh.sockso.Constants; import com.pugh.sockso.Properties; import com.pugh.sockso.StringProperties; import com.pugh.sockso.resources.Locale; import com.pugh.sockso.tests.TemplateTestCase; import com.pugh.sockso.tests.TestLocale; import com.pugh.sockso.web.User; import org.jamon.Renderer; import static org.easymock.EasyMock.*; public class IMusicLinksTest extends TemplateTestCase { private String name; private Properties p; private boolean shareLink = false, playRandomLink = false; @Override public void setUp() { name = ""; p = new StringProperties(); } public Renderer getTemplate() { final IMusicLinks tpl = new IMusicLinks(); tpl.setProperties( p ); tpl.setLocale( new TestLocale() ); tpl.setType( "" ); tpl.setName( name ); tpl.setShareLink( shareLink ); tpl.setPlayRandomLink( playRandomLink ); return tpl.makeRenderer(); } public void testDisableDownloads() { p.set( Constants.WWW_DOWNLOADS_DISABLE, Properties.NO ); assertTrue( render().contains("/download/") ); p.set( Constants.WWW_DOWNLOADS_DISABLE, Properties.YES ); assertTrue( !render().contains("/download/") ); } public void testShareLink() { shareLink = true; assertTrue( getTemplate().asString().contains("share-music") ); shareLink = false; assertTrue( !getTemplate().asString().contains("share-music") ); } public void testPlayRandomLink() { playRandomLink = true; assertTrue( getTemplate().asString().contains("orderBy=random") ); playRandomLink = false; assertTrue( !getTemplate().asString().contains("orderBy=random") ); } public void testQuotesInNamesAreEscapedInName() { name = "f\"o\"o"; final String html = render(); assertTrue( html.contains("f"o"o") ); } }