Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VueJS Discussion :

MuseUI et tests unitaires


Sujet :

VueJS

  1. #1
    Membre éclairé
    MuseUI et tests unitaires
    Bonjour,

    Je me lance dans les tests unitaires d'une application et je rencontre un problème de chargement des composants avec le framework que j'utilise

    Voici un exemple de code d'un de mes composants utilisant mu-container

    Code html :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <template>
      <mu-container
        class="default-cmd cmd"
        style="color: red"
      >{{ cmd.name }} {{ cmd.value }} {{ cmd.id }} {{ cmd.visible }}</mu-container>
    </template>
     
    <script>
    /**
     * Show standard command data
     * @group Commands
     */
    export default {
      name: "DefaultCmd",
      props: {
        // Command object
        cmd: null
      }
    };
    </script>


    J'essai donc de le tester avec Jest, je fais ceci :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    import { shallowMount, createLocalVue } from "@vue/test-utils";
    import MuseUI from "muse-ui";
    import DefaultCmd from "@/components/Cmds/DefaultCmd.vue";
     
    const localValue = createLocalVue();
    localValue.use(MuseUI);
     
    const propsData = {
      cmd: {
        value: 90
      }
    };
     
    const wrapperOptions = {
      localValue,
      propsData: propsData
    };
     
    describe("DefaultCmd.vue", () => {
      afterEach(() => {
        jest.clearAllMocks();
      });
      test("is a Vue instance", () => {
        const wrapper = shallowMount(DefaultCmd, wrapperOptions);
        expect(wrapper.isVueInstance()).toBeTruthy();
      });
    });


    Le test passe mais j'ai un warning sur le chargement de mu-container :
    console.error node_modules/vue/dist/vue.runtime.common.dev.js:621
    [Vue warn]: Unknown custom element: <mu-container> - did you register the component correctly? For recursive components, make sure to provide the "name" option.

    found in

    ---> <DefaultCmd>
    <Root>
    Quelqu'un aurait-il déjà rencontré ce problème ?

    Merci

  2. #2
    Membre éclairé
    Bon je me réponds à moi même.
    Sans doute un problème de cache.
    Après pleins d'essais et autres joyeuseté. J'ai enlevé MuseUI du fichier de test puis je l'ai remis et c'est passé.

###raw>template_hook.ano_emploi###