Nach meiner vorherigen Frage, here, versuche ich 'spec' Dateien von Atom, die ich in, aber jetzt, egal wie viele describe
und it
registriert registriert registriert zu bekommen ' s ich tue, es tut nichts, wenn ich es teste.Atom 'spec' Dateien werden nicht getestet
Ich verwende den Befehl, apm test
, und alles, was ich bekommen ist:
[655:0527/083825:WARNING:resource_bundle.cc(305)] locale_file_path.empty() for locale English
[655:0527/083825:ERROR:file_io.cc(30)] read: expected 40, observed 0
[659:0527/083825:WARNING:resource_bundle.cc(305)] locale_file_path.empty() for locale English
[655:0527/083828:INFO:CONSOLE(52)] "Window load time: 2420ms", source: file:///Applications/Atom.app/Contents/Resources/app.asar/static/index.js (52)
Finished in 0.023 seconds
0 tests, 0 assertions, 0 failures, 0 skipped
Tests passed
durch die Spec-Datei zu urteilen (die ist definitiv registriert wird, wie es beschwert sich, wenn sie nicht existiert), I sollte 3 Tests laufen lassen.
Meine Spec-Datei ist wie folgt ... (Syntax Highlighter Paket)
describe "Jazz grammar", ->
grammar = null
beforeEach ->
waitsForPromise ->
atom.packages.activatePackage("language-jazz")
runs ->
grammar = atom.grammars.grammarForScopeName("source.jazz")
it "parses the grammar", ->
expect(grammar).toBeDefined()
expect(grammar.scopeName).toBe "source.jazz"
it "tokenises keywords", ->
tokens = grammar.tokenizeLines('func')
expect(tokens[0][0].value).toBe 'func'
expect(tokens[0][0].scopes).toEqual ['source.jazz', 'storage.type.jazz']
it "tokenizes comments inside function parameters", ->
tokens = grammar.tokenizeLines('module test(arg1, ;; arg2)')
expect(tokens[0][0].value).toBe 'module'
expect(tokens[0][0].scopes).toEqual ['source.jazz', 'storage.type.jazz']
expect(tokens[0][1].scopes).toEqual ['source.jazz', 'comment.line.jazz']
Meine Dateistruktur ist wie folgt:
- sprach Jazz
- Grammatiken
jazz.cson
- Schnipsel
language-jazz.cson
- spec
jazz-spec.coffee
package.json
- Andere GitHub und Travis CI st uff.
- Grammatiken
Entschuldigung, ich habe gerade eine Vorlage aus 'language-python' gemacht. Ich verwende einen Einzug mit vier Leerzeichen, verwende jedoch zwei Leerzeichen. Wie auch immer, ich krümme mich darüber, wie einfach die Antwort war, danke dir sehr, Richard. Jetzt muss ich nur noch die Fehler diagnostizieren ... – finnrayment
Ich habe die 'runs ->' wieder hinzugefügt, und es scheint die "grammer.tokenizeLines' nicht gefunden Fehler behoben zu haben. Check out: https://github.com/ atom/language-python/blob/master/spec/python-spec.coffee für die 'runs'-Sache. – finnrayment