Home / File/ props.spec.ts — vue Source File

props.spec.ts — vue Source File

Architecture documentation for props.spec.ts, a typescript file in the vue codebase. 5 imports, 0 dependents.

Entity Profile

Dependency Diagram

graph LR
  f149e158_31d2_0df6_5f52_f04b2231a294["props.spec.ts"]
  4ef3cec1_7e9c_23bb_5e9b_f118e8ebdf99["test-object-option.ts"]
  f149e158_31d2_0df6_5f52_f04b2231a294 --> 4ef3cec1_7e9c_23bb_5e9b_f118e8ebdf99
  830d85be_ea2f_f50c_75f1_dd6812fb608f["testObjectOption"]
  f149e158_31d2_0df6_5f52_f04b2231a294 --> 830d85be_ea2f_f50c_75f1_dd6812fb608f
  c5601857_7faf_30c6_efca_20de90db006c["vue"]
  f149e158_31d2_0df6_5f52_f04b2231a294 --> c5601857_7faf_30c6_efca_20de90db006c
  b1eb2bb2_8774_a6f3_1b5c_854efafa7ee6["env"]
  f149e158_31d2_0df6_5f52_f04b2231a294 --> b1eb2bb2_8774_a6f3_1b5c_854efafa7ee6
  6a13c450_be5a_326d_7e2d_c1d429be7e83["v3"]
  f149e158_31d2_0df6_5f52_f04b2231a294 --> 6a13c450_be5a_326d_7e2d_c1d429be7e83
  style f149e158_31d2_0df6_5f52_f04b2231a294 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import Vue from 'vue'
import { hasSymbol } from 'core/util/env'
import testObjectOption from '../../../helpers/test-object-option'
import { ref } from 'v3'

describe('Options props', () => {
  testObjectOption('props')

  it('array syntax', done => {
    const vm = new Vue({
      data: {
        b: 'bar'
      },
      template: '<test v-bind:b="b" ref="child"></test>',
      components: {
        test: {
          props: ['b'],
          template: '<div>{{b}}</div>'
        }
      }
    }).$mount()
    expect(vm.$el.innerHTML).toBe('bar')
    vm.b = 'baz'
    waitForUpdate(() => {
      expect(vm.$el.innerHTML).toBe('baz')
      vm.$refs.child.b = 'qux'
    })
      .then(() => {
        expect(vm.$el.innerHTML).toBe('qux')
        expect('Avoid mutating a prop directly').toHaveBeenWarned()
      })
      .then(done)
  })

  it('object syntax', done => {
    const vm = new Vue({
      data: {
        b: 'bar'
      },
      template: '<test v-bind:b="b" ref="child"></test>',
      components: {
        test: {
          props: { b: String },
          template: '<div>{{b}}</div>'
        }
      }
    }).$mount()
    expect(vm.$el.innerHTML).toBe('bar')
    vm.b = 'baz'
    waitForUpdate(() => {
      expect(vm.$el.innerHTML).toBe('baz')
      vm.$refs.child.b = 'qux'
    })
      .then(() => {
        expect(vm.$el.innerHTML).toBe('qux')
        expect('Avoid mutating a prop directly').toHaveBeenWarned()
      })
      .then(done)
  })

// ... (555 more lines)

Domain

Frequently Asked Questions

What does props.spec.ts do?
props.spec.ts is a source file in the vue codebase, written in typescript. It belongs to the CompilerSFC domain.
What does props.spec.ts depend on?
props.spec.ts imports 5 module(s): env, test-object-option.ts, testObjectOption, v3, vue.
Where is props.spec.ts in the architecture?
props.spec.ts is located at test/unit/features/options/props.spec.ts (domain: CompilerSFC, directory: test/unit/features/options).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free