package by.istin.android.xcore.test.utils;
import java.util.Collections;
import java.util.Set;
import android.app.Application;
import android.net.Uri;
import android.test.ApplicationTestCase;
import by.istin.android.xcore.utils.UriUtils;
public class TestUriUtils extends ApplicationTestCase<Application> {
public TestUriUtils() {
super(Application.class);
}
@Override
protected void setUp() throws Exception {
createApplication();
super.setUp();
}
public void testIsOpaque() {
Uri uri = Uri.parse("mailto:nobody@google.com");
assertNotNull(UriUtils.getQueryParameters(uri));
assertEquals(UriUtils.getQueryParameters(uri), Collections.emptySet());
}
public void testEmptyQuery() {
Uri uri = Uri.parse("http://google.com/search#activity");
assertNotNull(UriUtils.getQueryParameters(uri));
assertEquals(UriUtils.getQueryParameters(uri), Collections.emptySet());
}
public void testGetParameters() {
Uri uri = Uri.parse("http://google.com/search?q=android&limit=200#activity");
assertNotNull(UriUtils.getQueryParameters(uri));
assertTrue(!UriUtils.getQueryParameters(uri).equals(
Collections.emptySet()));
Set<String> params = UriUtils.getQueryParameters(uri);
assertTrue(params.size() == 2);
assertTrue(params.contains("q"));
assertTrue(params.contains("limit"));
assertTrue(!params.contains("android"));
assertTrue(!params.contains("200"));
assertTrue(!params.contains("="));
assertTrue(!params.contains("&"));
assertTrue(!params.contains("?"));
assertTrue(!params.contains("#"));
}
public void testNegotiateMimeTypeFromUri(){
// TODO needs example uri
}
}