Commit f81c7d07 authored by jan.koester's avatar jan.koester
Browse files

test

parent e604b1b3
Loading
Loading
Loading
Loading
+40 −1
Changes for tests/htmlimport_smoke.cpp: 40 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -222,7 +222,7 @@ int main(){
              "align-items passes through directly to List's align_items attribute");
    }

    // --- flex-direction -> direction (List only) ---
    // --- flex-direction -> direction (List) ---
    std::cout << "=== flex-direction -> direction (List) ===" << std::endl;
    {
        std::string html = "<ul style=\"flex-direction:row\"><li>a</li></ul>";
@@ -231,6 +231,45 @@ int main(){
              "flex-direction:row maps to List's direction=\"horizontal\"");
    }

    // --- direction/align_items on Container/Section/Article ---
    std::cout << "=== direction/align_items (Container/Section/Article) ===" << std::endl;
    {
        std::string xml = importXml("<div style=\"flex-direction:row\">hi</div>");
        check(xml.find("<Container") != std::string::npos, "plain div still produces a Container widget");
        check(xml.find("direction=\"horizontal\"") != std::string::npos,
              "flex-direction:row maps to Container's direction=\"horizontal\"");
    }
    {
        std::string xml = importXml("<div style=\"align-items:center\">hi</div>");
        check(xml.find("align_items=\"center\"") != std::string::npos,
              "align-items:center passes through directly to Container's align_items attribute");
    }
    {
        std::string xml = importXml("<section style=\"flex-direction:column-reverse\">hi</section>");
        check(xml.find("direction=\"vertical\"") != std::string::npos,
              "flex-direction:column-reverse maps to Section's direction=\"vertical\"");
    }
    {
        std::string xml = importXml("<article style=\"align-items:flex-start\">hi</article>");
        check(xml.find("align_items=\"flex-start\"") != std::string::npos,
              "align-items:flex-start passes through directly to Article's align_items attribute");
    }
    {
        // vertical_align (justify-content, main axis) and the new direction/
        // align_items (cross axis) fields must coexist without clobbering
        // each other -- they're orthogonal, unlike Grid's single vertical_align
        // which doubles as align-items.
        std::string html =
            "<div style=\"justify-content:center; flex-direction:row; align-items:flex-end\">hi</div>";
        std::string xml = importXml(html);
        check(xml.find("vertical_align=\"center\"") != std::string::npos,
              "justify-content still maps to vertical_align alongside the new fields");
        check(xml.find("direction=\"horizontal\"") != std::string::npos,
              "direction is set alongside vertical_align");
        check(xml.find("align_items=\"flex-end\"") != std::string::npos,
              "align_items is set alongside vertical_align and direction");
    }

    // --- Summary ---
    std::cout << "\n=== " << passCount << "/" << testCount << " tests passed ===" << std::endl;