class TableWorkspaceDisplayDecoderTest(unittest.TestCase):
    def setUp(self):
        self.ws = Load("SavedTableWorkspace.nxs", OutputWorkspace="ws")
        self.decoder = TableWorkspaceDisplayDecoder()

    def test_decoder_returns_view(self):
        self.assertEqual(
            self.decoder.decode(TABLEWORKSPACEDISPLAY_DICT).__class__,
            StatusBarView)

    def test_decoder_returns_custom_features(self):
        view = self.decoder.decode(TABLEWORKSPACEDISPLAY_DICT)
        self.assertEqual(self.ws.name(), view.presenter.model.ws.name())
        self.assertEqual(TABLEWORKSPACEDISPLAY_DICT["markedColumns"]["as_y"],
                         view.presenter.model.marked_columns.as_y)
        self.assertEqual(TABLEWORKSPACEDISPLAY_DICT["markedColumns"]["as_x"],
                         view.presenter.model.marked_columns.as_x)
        self.assertEqual(
            TABLEWORKSPACEDISPLAY_DICT["markedColumns"]["as_y_err"][0]
            ["column"], view.presenter.model.marked_columns.as_y_err[0].column)
        self.assertEqual(
            TABLEWORKSPACEDISPLAY_DICT["markedColumns"]["as_y_err"][0]
            ["relatedY"],
            view.presenter.model.marked_columns.as_y_err[0].related_y_column)
        self.assertEqual(1, len(view.presenter.model.marked_columns.as_y_err))
class TableWorkspaceDisplayDecoderTest(GuiTest):
    def setUp(self):
        self.ws = Load("SavedTableWorkspace.nxs", OutputWorkspace="ws")
        self.decoder = TableWorkspaceDisplayDecoder()

    def test_decoder_returns_view(self):
        self.assertEqual(self.decoder.decode(TABLEWORKSPACEDISPLAY_DICT).__class__, StatusBarView)

    def test_decoder_returns_custom_features(self):
        view = self.decoder.decode(TABLEWORKSPACEDISPLAY_DICT)
        self.assertEqual(self.ws.name(), view.presenter.model.ws.name())
        self.assertEqual(TABLEWORKSPACEDISPLAY_DICT["markedColumns"]["as_y"], view.presenter.model.marked_columns.as_y)
        self.assertEqual(TABLEWORKSPACEDISPLAY_DICT["markedColumns"]["as_x"], view.presenter.model.marked_columns.as_x)
        self.assertEqual(
            TABLEWORKSPACEDISPLAY_DICT["markedColumns"]["as_y_err"][0]["column"],
            view.presenter.model.marked_columns.as_y_err[0].column)
        self.assertEqual(
            TABLEWORKSPACEDISPLAY_DICT["markedColumns"]["as_y_err"][0]["relatedY"],
            view.presenter.model.marked_columns.as_y_err[0].related_y_column)
        self.assertEqual(
            TABLEWORKSPACEDISPLAY_DICT["markedColumns"]["as_y_err"][0]["labelIndex"],
            view.presenter.model.marked_columns.as_y_err[0].label_index)
        self.assertEqual(1, len(view.presenter.model.marked_columns.as_y_err))
 def setUp(self):
     self.ws = Load("SavedTableWorkspace.nxs", OutputWorkspace="ws")
     self.decoder = TableWorkspaceDisplayDecoder()
 def setUp(self):
     self.ws = Load("SavedTableWorkspace.nxs", OutputWorkspace="ws")
     self.encoder = TableWorkspaceDisplayEncoder()
     self.view = TableWorkspaceDisplayDecoder().decode(
         TABLEWORKSPACEDISPLAY_DICT)
 def setUp(self):
     self.ws = Load("SavedTableWorkspace.nxs", OutputWorkspace="ws")
     self.decoder = TableWorkspaceDisplayDecoder()