This test verifies that imported document is rendered within the import link.

- <html>
    - <head>
          <base href="http://127.0.0.1:8000/devtools/elements/">
        - <link rel="import" href="../resources/imported-document.html">
            - #document
                - <html>
                    - <head>
                          <link rel="import" href="imported-document.html">
                        - <link rel="import" href="imported-document-2.html">
                            - #document
                                - <html>
                                      <head></head>
                                    - <body>
                                        - <div class="warning">
                                              <style scoped>\n    h3 {\n      color: red;\n    }\n  </style>
                                              <h3>Warning!</h3>
                                              <p>This page is under construction</p>
                                          </div>
                                        - <div class="outdated">
                                              <h3>Heads up!</h3>
                                              <p>This content may be out of date</p>
                                          </div>
                                      </body>
                                  </html>
                          </link>
                      </head>
                    - <body>
                          <div class="first-level">\n</div>
                      </body>
                  </html>
          </link>
      </head>
      <body></body>
  </html>

