2016-04-12 3 views
1

Ich habe ein neues Clojurescript/Om-Projekt erstellt. Die Verzeichnisstruktur sieht wie folgt aus:Ändern des Testverzeichnisses in einem Clojure/Leiningen-Projekt

├── project.clj 
├── resources 
│   └── public 
│    ├── index.html 
│    └── src 
│     └── om_tutorial 
│      └── core.cljs 
├── script 
│   └── figwheel.clj 
├── src 
│   ├── clj 
│   │   ├── test 
│   │   └── example-project 
│   │    └── core.clj 
│   └── cljs 
│    └── example-project 
│     └── core.cljs 
├── target 
│   ├── classes 
│   │   └── META-INF 
│   │    └── maven 
│   │     └── typing 
│   │      └── typing 
│   │       └── pom.properties 
│   └── stale 
│    └── leiningen.core.classpath.extract-native-dependencies 
└── test 
    └── clj 
     └── example-project 
      └── test_core.clj 

Mein package.json sehr minimal ist, und es sieht wie folgt aus:

(defproject typing "0.1.0-SNAPSHOT" 
    :description "example-project" 
    :dependencies [[org.clojure/clojure "1.7.0"] 
       [org.clojure/clojurescript "1.7.170"] 
       [org.omcljs/om "1.0.0-alpha22"] 
       [figwheel-sidecar "0.5.0-SNAPSHOT" :scope "test"] 
       [http-kit "2.2.0-SNAPSHOT"] 
       [compojure "1.5.0"] 
       [ring "1.4.0"] 
       [cheshire "5.5.0"]] 
    :test-paths ["test"]) 

Allerdings kann ich nicht bekommen Leiningen den Testpfad zu erkennen. Als ich lein test laufen, ich sehe:

Exception in thread "main" java.io.FileNotFoundException: Could not locate test/typing/test_core__init.class or test/example-project/test_core.clj on classpath. Please check that namespaces with dashes use underscores in the Clojure file name., compiling:(/private/var/folders/dk/jvt798yj6ds6wnkwk_24wrcm0000gp/T/form-init5157365051258208935.clj:1:125) 
... 
Caused by: java.io.FileNotFoundException: Could not locate test/example-project/test_core__init.class or test/example-project/test_core.clj on classpath. Please check that namespaces with dashes use underscores in the Clojure file name. 
... 
Tests failed. 

zog ich die Tests von test/clj/example-project/... zu test/example-project/... und die Umsetzung src/clj/example-project/-src/example-project aber ich habe immer den gleichen Fehler sehen.

Wie bekomme ich Leiningen, meine Tests zu erkennen?

Antwort

1

Vielleicht müssen die :test-paths weiter greifen, damit der Quellcode lein gefunden werden kann.

Sie könnten versuchen:

:test-paths ["test/clj"] 

Ich sehe, Sie Quellcode bewegt im Grunde das gleiche Denken um verwenden. Aber das ist einfacher. Auch nach Änderungen an project.clj müssen Sie lein clean dann lein deps. Mein Weg ist mehr über die deps und Ihre mehr über die clean, aber beide sind unabhängig davon sinnvoll. Außerdem müssen Sie überprüfen, ob clean tatsächlich die Ausgabe los ist. Wenn dies nicht der Fall ist, können Sie jederzeit manuell löschen, indem Sie Dateien löschen.

Verwandte Themen