def setUp(self):
        unittest.TestCase.setUp(self)

        self.mll = MllInterface()

        self.setup = DuplicateLayers()
        self.setup.setMllInterface(self.mll)

        testUtils.openMayaFile("influence transfer.mb")

        self.mll.setCurrentMesh('sourceMesh')

        self.mll.initLayers()
    def execute(self):
        layerListsUi = LayerDataModel.getInstance().layerListsUI

        setup = DuplicateLayers()
        setup.setMllInterface(LayerDataModel.getInstance().mll)

        layers = layerListsUi.getSelectedLayers()
        if len(layers) == 0:
            raise MessageException('No layers selected')

        for layer in reversed(layers):
            setup.addLayer(layer)
        setup.execute()

        LayerDataModel.getInstance().mll.setCurrentLayer(
            setup.duplicateIds[-1])

        LayerEvents.layerListModified.emit()