package com.rapidftr.datastore; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import org.junit.Before; import org.junit.Test; import com.rapidftr.Key; import com.rapidftr.form.Forms; import com.sun.me.web.path.ResultException; public class FormStoreTest { private MockStore mockStore; private FormStore store; @Before public void setUp() { mockStore = new MockStore(new Key("forms")); store = new FormStore(mockStore); } @SuppressWarnings("serial") @Test public void storeForms() throws ResultException { store.storeForms("[{form:forms}]"); assertEquals("[{form:forms}]", mockStore.getString("forms")); } @Test public void clearState() throws Exception { store.storeForms("[{form:forms}]"); store.clearState(); assertEquals("", mockStore.getString("forms")); } @Test public void getEmptyFormsForMalFormedJSONString() throws Exception { store.storeForms("{"); Forms forms = store.getForms(); assertFalse(forms.isNotEmpty()); } @Test public void getForms() throws Exception { store .storeForms("[{'name':'Basic Details','unique_id':'basic_details', 'enabled':true , " + "fields: " + "[{'name':'name'," + "'enabled':true," + "'type':'text_field'," + "'display_name':'Name'}]}]"); Forms forms = store.getForms(); assertTrue(forms.isNotEmpty()); } }