package org.appfuse.service;

import java.util.List;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import org.appfuse.model.ResumeSkill;


public class ResumeSkillTest extends BaseManagerTestCase {

    //~ Instance fields ========================================================

    private ResumeSkill skill;
    private ResumeManager mgr = null;
    private Log log = LogFactory.getLog(ResumeSkillTest.class);

    //~ Methods ================================================================

    protected void setUp() throws Exception {
        mgr = (ResumeManager) ctx.getBean("resumeManager");
    }

    protected void tearDown() throws Exception {
        mgr = null;
    }

    public void testGetResumeSkill() throws Exception {
        skill = (ResumeSkill) mgr.getResumeSkill("1");
        assertTrue(skill.getName() != null);
    }

    public void testGetResumeSkills() throws Exception {
        List skills = mgr.getResumeSkills("1");
        assertTrue(skills.size() > 0);
    }

    public void testSaveResumeSkill() throws Exception {
        skill = (ResumeSkill) mgr.getResumeSkill("1");
        skill.setName("Updated by ResumeSkillTest");

        skill = (ResumeSkill) mgr.saveObject(skill);
        assertEquals(skill.getName(), "Updated by ResumeSkillTest");
    }

    public void testAddAndRemoveResumeSkill() throws Exception {
        skill = new ResumeSkill();
        skill.setResumeId(new Long(1));
        skill.setName("smooth talkin");
        skill.setLastUsed("2 days ago");
        skill.setYearsExperience(new Integer(12));
        skill = (ResumeSkill) mgr.saveObject(skill);
        assertTrue(skill.getId() != null);
        assertEquals(skill.getName(), "smooth talkin");
    }

    public static void main(String[] args) {
        junit.textui.TestRunner.run(ResumeSkillTest.class);
    }
}