plugin.test.ts 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import { assert} from 'chai'
  2. import 'mocha'
  3. import * as myExtension from '../plugin'
  4. describe('Plugin Tests', function () {
  5. describe('#removeHowdoiPrefix test', function () {
  6. it('test 1', function () {
  7. assert.equal(myExtension.removeHowdoiPrefix('howdoi query'), 'query')
  8. })
  9. it('test 2', function () {
  10. assert.equal(myExtension.removeHowdoiPrefix(' howdoi query '), 'query')
  11. })
  12. it('test 3', function () {
  13. assert.equal(myExtension.removeHowdoiPrefix('query'), 'query')
  14. })
  15. it('test 4', function () {
  16. assert.equal(myExtension.removeHowdoiPrefix(' query '), 'query')
  17. })
  18. })
  19. describe('#modifyCommentedText test', function () {
  20. it('test 1', function () {
  21. // null
  22. assert.equal(myExtension.modifyCommentedText('howdoi query'), null)
  23. })
  24. it('test 2', function () {
  25. // JS, TS, C/ C++/ C#, Java, GO, Rust, Scala, Swift, J#, Dlang single line comment
  26. assert.deepEqual(myExtension.modifyCommentedText('// howdoi query'), ['howdoi query', '//', ''])
  27. assert.deepEqual(myExtension.modifyCommentedText('//howdoi query'), ['howdoi query', '//', ''])
  28. })
  29. it('test 3', function () {
  30. // Python, Ruby, powershell, Julia, R, prolog, Crystal, Dockerfile, Diff single line comment
  31. assert.deepEqual(myExtension.modifyCommentedText('# howdoi query'), ['howdoi query', '#', ''] )
  32. assert.deepEqual(myExtension.modifyCommentedText('#howdoi query'), ['howdoi query', '#', ''] )
  33. })
  34. it('test 4', function () {
  35. // C++, CSS single line comment
  36. assert.deepEqual(myExtension.modifyCommentedText('/* howdoi query */'), ['howdoi query', '/*', '*/'] )
  37. })
  38. it('test 5', function () {
  39. // HTML, PHP, Markdown, Vue single line comment
  40. assert.deepEqual(myExtension.modifyCommentedText('<!-- howdoi query -->'), ['howdoi query', '<!--', '-->'] )
  41. })
  42. it('test 6', function () {
  43. // SQL, Haskell single line comment
  44. assert.deepEqual(myExtension.modifyCommentedText('-- howdoi query'), ['howdoi query', '--', ''] )
  45. })
  46. it('test 7', function () {
  47. // LaTex single line comment
  48. assert.deepEqual(myExtension.modifyCommentedText('% howdoi query'), ['howdoi query', '%', ''] )
  49. })
  50. it('test 8', function () {
  51. // clojure single line comment
  52. assert.deepEqual(myExtension.modifyCommentedText('; howdoi query'), ['howdoi query', ';', ''] )
  53. })
  54. })
  55. })