def METHOD_NAME(datadir):
    expected = [
        "A",
        "Adieresis",
        "a",
        "adieresis",
        "h",
        "m",
        "n",
        "a.sc",
        "dieresis",
        "_part.shoulder",
        "_part.stem",  # Deliberately removed from glyph order file
    ]
    font1 = glyphsLib.load(str(datadir.join("GlyphsUnitTestSans3.glyphs")))
    font2 = glyphsLib.load(str(datadir.join("GlyphsUnitTestSans3.glyphspackage")))
    assert [glyph.name for glyph in font2.glyphs] == expected
    assert glyphsLib.dumps(font1) == glyphsLib.dumps(font2)
    font1 = glyphsLib.load(str(datadir.join("GlyphsUnitTestSans3.glyphs")))
    font2 = GSFont(str(datadir.join("GlyphsUnitTestSans3.glyphspackage")))
    assert [glyph.name for glyph in font2.glyphs] == expected
    assert glyphsLib.dumps(font1) == glyphsLib.dumps(font2)