text: // SKIP AUTOGENERATION
  // AUTOGENERATED FROM https://github.com/vuejs/eslint-plugin-vue/blob/8f094200664a2b10bc597016f5486066a174e098/tests/lib/rules/first-attribute-linebreak.js
  /**
   * @fileoverview Enforce the location of first attribute
   * @author Yosuke Ota
   */
  'use strict'
  
  // ------------------------------------------------------------------------------
  // Requirements
  // ------------------------------------------------------------------------------
  
  const RuleTester = require('eslint').RuleTester
  const rule = require('../../../eslint-plugin-vue/lib/rules/first-attribute-linebreak')
  
  // ------------------------------------------------------------------------------
  // Tests
  // ------------------------------------------------------------------------------
  
  const ruleTester = new RuleTester({
    parser: require.resolve('vue-eslint-parser'),
    parserOptions: {
      ecmaVersion: 2015,
      templateTokenizer: { pug: 'vue-eslint-parser-template-tokenizer-pug' }
    }
  })
  
  ruleTester.run('first-attribute-linebreak', rule, {
    valid: [
      {
        code: `<template lang="pug">component</template>`
      },
      {
        code: `<template lang="pug">
  component(
    name="John Doe",
    age="30",
    job="Vet"
  )
  component(
    name="John Doe"
  )
  component(name="John Doe"
  )
  </template>`
      },
      {
        code: `<template lang="pug">
  component(
    name="John Doe",
    age="30",
    job="Vet"
  )
  component(name="John Doe",
            age="30",
            job="Vet"
  )
  component(
    name="John Doe"
  )
  component(name="John Doe"
  )
  </template>`,
        options: [{ singleline: 'ignore', multiline: 'ignore' }]
      },
      {
        code: `<template lang="pug">
  component(
    name="John Doe",
    age="30",
    job="Vet"
  )
  component(name="John Doe",
            age="30",
            job="Vet"
  )
  component(name="John Doe"
  )
  </template>`,
        options: [{ singleline: 'beside', multiline: 'ignore' }]
      },
      {
        code: `<template lang="pug">
  component(name="John Doe",
            age="30",
            job="Vet"
  )
  component(
  name="John Doe"
  )
  component(name="John Doe"
  )
  </template>`,
        options: [{ singleline: 'ignore', multiline: 'beside' }]
      },
      {
        code: `<template 
          lang="pug">
  component(
    name="John Doe",
    age="30",
    job="Vet"
  )
  component(name="John Doe",
            age="30",
            job="Vet"
  )
  component(
    name="John Doe"
  )
  </template>`,
        options: [{ singleline: 'below', multiline: 'ignore' }]
      },
      {
        code: `<template lang="pug">
  component(
    name="John Doe",
    age="30",
    job="Vet"
  )
  component(
    name="John Doe"
  )
  component(name="John Doe"
  )
  </template>`,
        options: [{ singleline: 'ignore', multiline: 'below' }]
      }
    ],
  
    invalid: [
      {
        code: `<template lang="pug">
  component(
    name="John Doe",
    age="30",
    job="Vet"
  )
  component(name="John Doe",
            age="30",
            job="Vet"
  )
  component(
    name="John Doe"
  )
  component(name="John Doe"
  )
  </template>`,
        output: `<template lang="pug">
  component(
    name="John Doe",
    age="30",
    job="Vet"
  )
  component(
  name="John Doe",
            age="30",
            job="Vet"
  )
  component(
    name="John Doe"
  )
  component(name="John Doe"
  )
  </template>`,
        errors: [
          {
            message: 'Expected a linebreak before this attribute.',
            line: 7,
            column: 11
          }
        ]
      },
      {
        code: `<template lang="pug">
  component(
    name="John Doe",
    age="30",
    job="Vet"
  )
  component(name="John Doe",
            age="30",
            job="Vet"
  )
  component(
    name="John Doe"
  )
  component(name="John Doe"
  )
  </template>`,
        output: `<template lang="pug">
  component( name="John Doe",
    age="30",
    job="Vet"
  )
  component(name="John Doe",
            age="30",
            job="Vet"
  )
  component( name="John Doe"
  )
  component(name="John Doe"
  )
  </template>`,
        options: [{ singleline: 'beside', multiline: 'beside' }],
        errors: [
          {
            message: 'Expected no linebreak before this attribute.',
            line: 3,
            column: 3
          },
          {
            message: 'Expected no linebreak before this attribute.',
            line: 12,
            column: 3
          }
        ]
      },
      {
        code: `<template
    lang="pug">
  component(
    name="John Doe",
    age="30",
    job="Vet"
  )
  component(name="John Doe",
            age="30",
            job="Vet"
  )
  component(
    name="John Doe"
  )
  component(name="John Doe"
  )
  </template>`,
        output: `<template
    lang="pug">
  component(
    name="John Doe",
    age="30",
    job="Vet"
  )
  component(
  name="John Doe",
            age="30",
            job="Vet"
  )
  component(
    name="John Doe"
  )
  component(
  name="John Doe"
  )
  </template>`,
        options: [{ singleline: 'below', multiline: 'below' }],
        errors: [
          {
            message: 'Expected a linebreak before this attribute.',
            line: 8,
            column: 11
          },
          {
            message: 'Expected a linebreak before this attribute.',
            line: 15,
            column: 11
          }
        ]
      }
    ]
  })
  