This is a small CLI tool that dumps all of Prettier’s default configuration options to a file in the format of your choice.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. const fs = require('fs');
  2. const test = require('tape');
  3. const TOML = require('@iarna/toml');
  4. const YAML = require('yaml');
  5. const { defaultConfigFor, formats } = require('.');
  6. test('generate JSON', t => {
  7. t.plan(1);
  8. const result = formats.json.generate();
  9. t.deepEqual(JSON.parse(result), defaultConfigFor('json'));
  10. });
  11. test('generate TOML', t => {
  12. t.plan(1);
  13. const result = formats.toml.generate();
  14. t.deepEqual(TOML.parse(result), defaultConfigFor('toml'));
  15. });
  16. test('generate YAML', t => {
  17. t.plan(1);
  18. const result = formats.yaml.generate();
  19. t.deepEqual(YAML.parse(result), defaultConfigFor('yaml'));
  20. });
  21. test('generate JS', t => {
  22. t.plan(1);
  23. const result = formats.js.generate();
  24. t.deepEqual(eval(result), defaultConfigFor('js'));
  25. });
  26. test('generate package.json', t => {
  27. t.plan(1);
  28. const before = JSON.parse(fs.readFileSync('package.json'));
  29. const result = formats['package.json'].generate();
  30. before.prettier = defaultConfigFor('package.json');
  31. t.deepEqual(JSON.parse(result), before);
  32. });
  33. test('YAML supports infinity, leave rangeEnd in', t => {
  34. t.plan(1);
  35. const result = formats.yaml.generate();
  36. t.equal(YAML.parse(result).rangeEnd, Infinity);
  37. });
  38. test('TOML supports infinity, leave rangeEnd in', t => {
  39. t.plan(2);
  40. const result = TOML.parse(formats.toml.generate());
  41. t.true(Object.keys(result).includes('rangeEnd'));
  42. t.equal(result.rangeEnd, Infinity);
  43. });
  44. test("JSON doesn't support undefined, leave out filepath and parser", t => {
  45. t.plan(2);
  46. const result = JSON.parse(formats.json.generate());
  47. t.false(Object.keys(result).includes('parser'));
  48. t.false(Object.keys(result).includes('filepath'));
  49. });
  50. test("YAML doesn't support undefined, leave out filepath and parser", t => {
  51. t.plan(2);
  52. const result = YAML.parse(formats.yaml.generate());
  53. t.false(Object.keys(result).includes('parser'));
  54. t.false(Object.keys(result).includes('filepath'));
  55. });
  56. test('JS supports undefined, leave in parser and filepath', t => {
  57. t.plan(4);
  58. const result = eval(formats.js.generate());
  59. t.equal(result.parser, undefined);
  60. t.equal(result.filepath, undefined);
  61. t.true(Object.keys(result).includes('parser'));
  62. t.true(Object.keys(result).includes('filepath'));
  63. });