/**
* Copyright 2013 Joan Zapata
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* It uses FontAwesome font, licensed under OFL 1.1, which is compatible
* with this library's license.
*
* http://scripts.sil.org/cms/scripts/render_download.php?format=file&media_id=OFL_plaintext&filename=OFL.txt
*/
package com.joanzapata.android.iconify;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
import org.robolectric.annotation.Config;
import static com.joanzapata.android.iconify.Iconify.IconValue.*;
import static org.junit.Assert.assertEquals;
@Config(manifest = Config.NONE)
@RunWith(RobolectricTestRunner.class)
public class UtilsTest {
@Test
public void test_replaceIcons() {
test("A{fa_adjust}A", "A" + fa_adjust.character + "A");
}
@Test
public void test_replaceIcons_noIcons() {
test("A A", "A A");
}
@Test
public void test_replaceIcons_manyIcons() {
test("A{fa_adjust}A{fa_adn}A", "A" + fa_adjust.character + "A" + fa_adn.character + "A");
}
@Test
public void test_replaceIcons_withDash() {
test("A{fa-adjust}A{fa-adn}A", "A" + fa_adjust.character + "A" + fa_adn.character + "A");
}
@Test
public void test_replaceIcons_wrong() {
test("A{icon-okA{icon-camera}A", "A{icon-okA{icon-camera}A");
}
@Test
public void test_replaceIcons_empty() {
test("A{}A", "A{}A");
}
private void test(String in, String out) {
assertEquals(out, Utils.replaceIcons(new StringBuilder(in)).toString());
}
}