safetestsets에서 별도의 세트를 사용하는 동안 코드 중복을 제거하는 방법

겸손한 내향적인

저는 Julia를 처음 접했고 Genie에 대한 테스트를 작성하려고합니다. SafeTestsets를 사용하고 있습니다. 다른 세트에서 테스트를 분리하는 데 실제로 도움이 될 수 있지만 세트 범위 외부에 액세스 할 수 없기 때문에 중복 코드가 많이 있습니다.

예를 들어 아래 예에서를 사용 Genie하면 Genie.Assets반복됩니다.

@safetestset "Assets functionality" begin

  @safetestset "Assets paths" begin
    using Genie, Genie.Assets

    @test include_asset(:css, "foo")  == "/css/foo.css"
    @test include_asset(:js, "foo")   == "/js/foo.js"

    @test css_asset("foo") == css("foo") == "/css/foo.css"
    @test js_asset("foo") == js("foo") == "/js/foo.js"
  end;

  @safetestset "Expose settings" begin
    using Genie, Genie.Assets

    @test js_settings() == "window.Genie = {};\nGenie.Settings = {\"webchannels_autosubscribe\":true,\"server_host\":\"127.0.0.1\",\"webchannels_subscribe_channel\":\"subscribe\",\"server_port\":8000,\"webchannels_default_route\":\"__\",\"webchannels_unsubscribe_channel\":\"unsubscribe\",\"websockets_port\":8001}\n"
  end

  @safetestset "Embedded assets" begin
    using Genie, Genie.Assets

    @test channels()[1:18] == "window.Genie = {};"
    @test channels_script()[1:27] == "<script>\nwindow.Genie = {};"

    @test channels_support() == "<script src=\"/__/channels.js?v=$(Genie.Configuration.GENIE_VERSION)\"></script>"
    @test Genie.Router.routes()[1].path == "/__/channels.js"
    @test Genie.Router.channels()[1].path == "/__/unsubscribe"
    @test Genie.Router.channels()[2].path == "/__/subscribe"

    @test favicon_support() == "<link rel=\"icon\" type=\"image/x-icon\" href=\"/favicon.ico\" />"
  end

end;
mmiller-max

@safetestsetTestSet에 대해 새 모듈을 생성 하기 때문에 using모듈은 모듈과 동일한 방식으로 명령문 이 필요합니다 .

TestSets 를 분리하도록 설계되었으므로 설계 상 각 명령문은 사용하는 모듈을 가져와야합니다.

다른 사람들이 사용하는 방식 @safetestset(예 : https://github.com/SciML/DifferentialEquations.jl/tree/master/test )에서 일반적으로 @safetestset include은 스크립트로 래핑 하고 해당 스크립트가 격리 된 상태로 실행되도록합니다. , https://discourse.julialang.org/t/my-unit-tests-are-interferring-with-each-other/21686 과 같은 문제를 피합니다 .

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

표시하는 동안 동일한 테이블에서 중복 레코드를 제거하는 방법

분류에서Dev

SQL Server에서 내부 조인을 사용하여 검색하는 동안 중복 레코드를 방지하는 방법

분류에서Dev

레코드를 삽입하는 동안 mysql에서 중복 값을 찾는 방법이 있습니까?

분류에서Dev

Chrome의 검색 주소창 자동 제안에서 중복에 가까운 링크를 제거하는 방법

분류에서Dev

xslt를 사용하여 xml에서 중복 노드를 제거하는 방법

분류에서Dev

Play Framework 2.2를 사용하여 별도의 스레드에서 동일한 데이터베이스 트랜잭션을 사용하는 방법

분류에서Dev

xslt 1.0을 사용하여 xml에서 중복 노드를 제거하는 방법

분류에서Dev

itertools.groupby를 사용하여 중복을 제거하는 동안 각 문자의 개수를 포함하는 방법

분류에서Dev

Chromium 브라우저를 사용하는 동안 Ubuntu에 나타나는이 말도 안되는 팝업을 제거하는 방법은 무엇입니까?

분류에서Dev

SQL은 조인을 사용하는 동안 중복 레코드를 제거합니다.

분류에서Dev

Java에서 다른 클래스의 정적 멤버에 액세스하는 동안 코드 중복 방지

분류에서Dev

Google 스프레드 시트 중복을 찾고 하나의 열 데이터에서만 제거하는 방법

분류에서Dev

ng-repeat를 사용하여 중복 코드를 제거하는 방법

분류에서Dev

Group by 절을 사용하는 동안 Orientdb에서 null 레코드를 건너 뛰는 방법

분류에서Dev

라켓에서 맵을 사용하는 동안 중복 쌍이 반환되지 않도록 코드를 수정하려면 어떻게해야합니까?

분류에서Dev

코드를 사용하여 배터리 최적화에서 안드로이드 앱을 제외하는 방법

분류에서Dev

jquery에서 .clone ()을 사용하는 동안 <Td> 요소 안에 입력 된 텍스트 복제를 중지하는 방법

분류에서Dev

C # 클래스에서 중복 된 코드를 제거하는 방법

분류에서Dev

mysql 쿼리에서 중복 레코드를 제거하는 방법

분류에서Dev

LINQ 쿼리에서 중복 레코드를 제거하는 방법

분류에서Dev

47 필드 csv 파일의 1 ~ 46 번째 열에서 awk를 사용하여 중복을 제거하는 방법은 무엇입니까?

분류에서Dev

mongoose (NodeJS)를 사용하여 mongoDB에서 중복을 제거하는 방법

분류에서Dev

컴파일하는 동안 Haskell이 전체 프로세서 성능을 사용하도록 만드는 방법

분류에서Dev

스크립트 블록에서 코드 중복을 제거하는 방법은 무엇입니까?

분류에서Dev

거의 동일한 세 가지 방법에 대해 별도의 방법을 만드는 방법

분류에서Dev

astyle을 사용하여 C ++ 코드에서 키워드 사이의 중복 공백을 줄이는 방법

분류에서Dev

React에서 맵을 사용하는 동안 '키'오류를 제거하는 방법은 무엇입니까?

분류에서Dev

두 개의 사용자 지정 개체를 기반으로 목록에서 중복을 제거하는 방법

분류에서Dev

리포지토리에서 코드 중복을 제거하는 방법

Related 관련 기사

  1. 1

    표시하는 동안 동일한 테이블에서 중복 레코드를 제거하는 방법

  2. 2

    SQL Server에서 내부 조인을 사용하여 검색하는 동안 중복 레코드를 방지하는 방법

  3. 3

    레코드를 삽입하는 동안 mysql에서 중복 값을 찾는 방법이 있습니까?

  4. 4

    Chrome의 검색 주소창 자동 제안에서 중복에 가까운 링크를 제거하는 방법

  5. 5

    xslt를 사용하여 xml에서 중복 노드를 제거하는 방법

  6. 6

    Play Framework 2.2를 사용하여 별도의 스레드에서 동일한 데이터베이스 트랜잭션을 사용하는 방법

  7. 7

    xslt 1.0을 사용하여 xml에서 중복 노드를 제거하는 방법

  8. 8

    itertools.groupby를 사용하여 중복을 제거하는 동안 각 문자의 개수를 포함하는 방법

  9. 9

    Chromium 브라우저를 사용하는 동안 Ubuntu에 나타나는이 말도 안되는 팝업을 제거하는 방법은 무엇입니까?

  10. 10

    SQL은 조인을 사용하는 동안 중복 레코드를 제거합니다.

  11. 11

    Java에서 다른 클래스의 정적 멤버에 액세스하는 동안 코드 중복 방지

  12. 12

    Google 스프레드 시트 중복을 찾고 하나의 열 데이터에서만 제거하는 방법

  13. 13

    ng-repeat를 사용하여 중복 코드를 제거하는 방법

  14. 14

    Group by 절을 사용하는 동안 Orientdb에서 null 레코드를 건너 뛰는 방법

  15. 15

    라켓에서 맵을 사용하는 동안 중복 쌍이 반환되지 않도록 코드를 수정하려면 어떻게해야합니까?

  16. 16

    코드를 사용하여 배터리 최적화에서 안드로이드 앱을 제외하는 방법

  17. 17

    jquery에서 .clone ()을 사용하는 동안 <Td> 요소 안에 입력 된 텍스트 복제를 중지하는 방법

  18. 18

    C # 클래스에서 중복 된 코드를 제거하는 방법

  19. 19

    mysql 쿼리에서 중복 레코드를 제거하는 방법

  20. 20

    LINQ 쿼리에서 중복 레코드를 제거하는 방법

  21. 21

    47 필드 csv 파일의 1 ~ 46 번째 열에서 awk를 사용하여 중복을 제거하는 방법은 무엇입니까?

  22. 22

    mongoose (NodeJS)를 사용하여 mongoDB에서 중복을 제거하는 방법

  23. 23

    컴파일하는 동안 Haskell이 전체 프로세서 성능을 사용하도록 만드는 방법

  24. 24

    스크립트 블록에서 코드 중복을 제거하는 방법은 무엇입니까?

  25. 25

    거의 동일한 세 가지 방법에 대해 별도의 방법을 만드는 방법

  26. 26

    astyle을 사용하여 C ++ 코드에서 키워드 사이의 중복 공백을 줄이는 방법

  27. 27

    React에서 맵을 사용하는 동안 '키'오류를 제거하는 방법은 무엇입니까?

  28. 28

    두 개의 사용자 지정 개체를 기반으로 목록에서 중복을 제거하는 방법

  29. 29

    리포지토리에서 코드 중복을 제거하는 방법

뜨겁다태그

보관