2016-03-23 18 views
0

Test için testthat kullanarak bir paket oluşturma; bunlar, /tests/testthat/my-file'da önerildiği gibi harici bir dosya gerektirir.test.Rbuildignore + harici dosya (NOT)

Ancak R CMD check yukarıda

Found the following hidden files and directories: 
    tests/testthat/my-file 

üretir ardından dosya de, böylece tüm, kontrol sırasında dikkate alınmaz NOT I .Rbuildignore (devtools::use_build_ignore("/tests/testthat/my-file") benim dosyası eklerseniz (Status: 1 NOTE)

olduğunu testler başarısız olur ve paket yapılamaz.

Bu sorunu nasıl çözebilirim? NOTE'un geçerliliğini anladım ama yine de kurtulmak istiyorum.

+0

dosyasının asıl adı ne? – Thomas

+0

Bunlar bir API '.token' için kimlik bilgileridir (httr değil) – JohnCoene

cevap

1

API kimlik bilgilerini yüklemek için tercih edilen yol (Hadley'e göre), ortam değişkenleri aracılığıyla gerçekleştirilir. Kimlik bilgilerini paketinizle paylaşıyorsanız, bunları paket ad alanı yüklü olarak çalıştırılacak bir .onLoad işlevinde ayarlayabilirsiniz. Testleri yerel olarak bu kimlik bilgilerini kullanarak çalıştırmak ancak bunları paylaşmak istemiyorsanız, bunları global Renviron.site dosyasına (veya daha az uygun bir şekilde, çalışma dizininizdeki bir .Renviron dosyasına) ekleyin. Sonra da paket yapısından bu dosyayı silebilirsiniz (ya da sadece .Rbuildignore) ve benzeri bir şey ile, ortam değişkeninin varlığına testler koşullu olun:

if (!identical(Sys.getenv("MY_ENV_VAR"), "")) { 
    test_all("package") 
}