Coverage Report - br.mia.test.view.swingworker.CreateScenario
 
Classes in this File Line Coverage Branch Coverage Complexity
CreateScenario
0%
0/147
0%
0/48
0
 
 1  0
 package br.mia.test.view.swingworker;
 2  
 
 3  
 import java.util.ArrayList;
 4  
 import java.util.List;
 5  
 
 6  
 import javax.swing.JLabel;
 7  
 import javax.swing.JProgressBar;
 8  
 
 9  
 import org.jdesktop.swingworker.SwingWorker;
 10  
 
 11  
 import br.mia.test.controler.ControladorErro;
 12  
 import br.mia.test.model.CasoUso;
 13  
 import br.mia.test.model.Fluxo;
 14  
 import br.mia.test.model.Projeto;
 15  
 import br.mia.test.model.algoritmo.Algoritmo;
 16  
 import br.mia.test.model.dao.DAOCenario;
 17  
 import br.mia.test.model.dao.DAOFlow;
 18  
 import br.mia.test.testcase.CasosTeste;
 19  
 import br.mia.test.util.GeraExcel;
 20  
 import br.mia.test.util.Util;
 21  
 import br.mia.test.view.Global;
 22  
 import br.mia.test.view.TelaCasosTeste;
 23  
 import br.mia.test.view.observers.ObserverUseCase;
 24  
 import br.mia.test.view.progress.ProgressView;
 25  
 
 26  0
 public class CreateScenario extends SwingWorker<ArrayList<CasosTeste>, Object>
 27  0
 {
 28  
 
 29  
     private CasoUso useCase;
 30  
 
 31  
     private Projeto projeto;
 32  
 
 33  
     public Projeto getProjeto() {
 34  0
         return projeto;
 35  0
     }
 36  
 
 37  
     public void setProjeto(Projeto projeto) {
 38  0
         this.projeto = projeto;
 39  0
     }
 40  0
 
 41  
     private ObserverUseCase frame;
 42  
 
 43  
     public CasoUso getUseCase() {
 44  0
         return useCase;
 45  0
     }
 46  
 
 47  
     public void setUseCase(CasoUso useCase) {
 48  0
         this.useCase = useCase;
 49  0
     }
 50  0
 
 51  
     public ObserverUseCase getFrame() {
 52  0
         return frame;
 53  0
     }
 54  
 
 55  
     public void setFrame(ObserverUseCase frame) {
 56  0
         this.frame = frame;
 57  0
     }
 58  0
 
 59  
     @Override
 60  
     protected ArrayList<CasosTeste> doInBackground() throws Exception {
 61  
 
 62  0
         ProgressView progress = new ProgressView();
 63  0
 
 64  0
         ArrayList<CasosTeste> casosTestes = new ArrayList<CasosTeste>();
 65  0
 
 66  0
         DAOFlow daoFlow = new DAOFlow();
 67  0
 
 68  0
         daoFlow.updateStepsAtualizado(useCase);
 69  0
 
 70  0
         Algoritmo alg = new Algoritmo();
 71  0
         alg.limpaArvore(useCase);
 72  0
         alg.retornaCenarios((Fluxo) useCase.getFlows().get(0), 0,
 73  0
                 new CasosTeste(), 0, useCase);
 74  0
         ArrayList<CasosTeste> cenarios = alg.getCasosDeTeste();
 75  0
 
 76  0
         Global global = new Global();
 77  0
 
 78  0
         DAOCenario dao = new DAOCenario();
 79  0
         JProgressBar createTestCaseDate = new JProgressBar(0, cenarios.size());
 80  0
 
 81  0
         progress.getContentPane().add(new JLabel("Aplicando Dados de Teste"),
 82  0
                 global.getLayout2());
 83  0
         progress.getContentPane().add(createTestCaseDate, global.getLayout3());
 84  0
         progress.pack();
 85  0
 
 86  0
         int posicao = 1;
 87  0
 
 88  0
         for (Object object : cenarios) {
 89  0
 
 90  0
             createTestCaseDate.setValue(posicao++);
 91  0
 
 92  0
             CasosTeste casoTeste = (CasosTeste) object;
 93  0
             try {
 94  0
                 CasosTeste novoTeste = new CasosTeste();
 95  0
                 novoTeste.getFlows().addAll(casoTeste.getFlows());
 96  0
                 alg.applyData(casoTeste, 0, novoTeste, useCase, true);
 97  0
 
 98  0
             } catch (Exception e1) {
 99  0
                 ControladorErro.trata(e1, this);
 100  0
             }
 101  
 
 102  
         }
 103  0
         int i = 0;
 104  0
 
 105  0
         posicao = 1;
 106  0
 
 107  0
         JProgressBar createTestCase = new JProgressBar(0, alg
 108  0
                 .getCasosDeTesteData().size());
 109  0
         progress.getContentPane().add(new JLabel("Criando Casos de Teste"),
 110  0
                 global.getLayout2());
 111  0
         progress.getContentPane().add(createTestCase);
 112  0
         progress.pack();
 113  0
 
 114  0
         for (Object object : alg.getCasosDeTesteData()) {
 115  0
 
 116  0
             CasosTeste casoTeste = (CasosTeste) object;
 117  0
 
 118  0
             String descricao = "";
 119  0
 
 120  0
             String duvidas = "";
 121  0
             String ambiente = "";
 122  0
             List<Fluxo> fluxos = casoTeste.getFlows();
 123  0
             for (Object object1 : fluxos) {
 124  0
 
 125  0
                 Fluxo flow = (Fluxo) object1;
 126  0
                 String novoFluxo = flow.getName();
 127  0
                 String novaDuvida = flow.getDuvidas();
 128  0
                 String novoambiente = flow.getAmbiente();
 129  0
 
 130  0
                 if (!(descricao.contains(novoFluxo))) {
 131  0
                     descricao += " " + novoFluxo;
 132  0
                 }
 133  0
                 if (novaDuvida == null) {
 134  0
                     novaDuvida = "";
 135  0
                 }
 136  0
                 if (novoambiente == null) {
 137  0
                     novoambiente = "";
 138  0
                 }
 139  0
                 if (!(duvidas.contains(novaDuvida))) {
 140  0
                     duvidas += novaDuvida + "\n";
 141  0
                 }
 142  0
                 if (!(ambiente.contains(novoambiente))) {
 143  0
                     ambiente += novoambiente + "\n";
 144  0
                 }
 145  
 
 146  
             }
 147  
 
 148  0
             casoTeste.setDescricao(descricao);
 149  0
 
 150  0
             if (duvidas.length() > 0) {
 151  0
                 duvidas = "As seguintes ped�ncias foram encontradas :\n"
 152  0
                         + duvidas;
 153  0
             }
 154  
 
 155  0
             if (duvidas.length() > 1440) {
 156  0
                 casoTeste.setDuvidas(duvidas.substring(0, 440));
 157  0
             } else {
 158  0
                 casoTeste.setDuvidas(duvidas);
 159  0
             }
 160  
 
 161  0
             if (ambiente.length() > 0) {
 162  0
                 ambiente = "Ambiente de Teste :\n\n" + ambiente;
 163  0
             }
 164  
 
 165  0
             if (ambiente.length() > 1440) {
 166  0
                 casoTeste.setAmbiente(ambiente.substring(0, 440));
 167  0
             } else {
 168  0
                 casoTeste.setAmbiente(ambiente);
 169  0
             }
 170  
 
 171  0
             String nome = Util.getTestCaseName(useCase, i, casoTeste);
 172  0
 
 173  0
             casoTeste.setNome(nome);
 174  0
 
 175  0
             createTestCase.setValue(posicao++);
 176  0
             try {
 177  0
                 Thread.sleep(2000);
 178  0
             } catch (InterruptedException e) {
 179  0
                 // TODO Auto-generated catch block
 180  0
                 e.printStackTrace();
 181  0
             }
 182  0
             casosTestes.add(casoTeste);
 183  0
             i++;
 184  0
 
 185  
         }
 186  
 
 187  0
         GeraExcel.geraExcel(alg.getCasosDeTesteData(), useCase);
 188  0
 
 189  0
         progress.getContentPane().add(new JLabel("Atualizando Tela"),
 190  0
                 global.getLayout2());
 191  0
 
 192  0
         TelaCasosTeste pane = (TelaCasosTeste) frame.getInternalFrames().get(0);
 193  0
 
 194  0
         pane.recarregaCasosTeste();
 195  0
         pane.getTcase().revalidate();
 196  0
         pane.pack();
 197  0
 
 198  0
         progress.setVisible(false);
 199  0
 
 200  0
         return casosTestes;
 201  0
 
 202  
     }
 203  
 
 204  
 }