summaryrefslogtreecommitdiffstats
path: root/theme-compiler/tests/resources
diff options
context:
space:
mode:
authorHenri Sara <hesara@vaadin.com>2012-11-26 14:46:26 +0200
committerHenri Sara <hesara@vaadin.com>2012-11-26 14:46:26 +0200
commitbefa3fe32effffc2ef616aca63761c321d8144c5 (patch)
tree0937aed9700c4c31ace2871f9897a67152773d26 /theme-compiler/tests/resources
parentb010b21a15dfd47790255e36122d3b30682d4990 (diff)
downloadvaadin-framework-befa3fe32effffc2ef616aca63761c321d8144c5.tar.gz
vaadin-framework-befa3fe32effffc2ef616aca63761c321d8144c5.zip
Imported tests from the sass-lang project (#9751)
Change-Id: I9acd28e13718a0f78b0f91af5161e94599193a15
Diffstat (limited to 'theme-compiler/tests/resources')
-rw-r--r--theme-compiler/tests/resources/sasslang/css/1-test_attribute_unification.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/10-test_combinator_unification_double_plus.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/100-test_optional_extend_does_not_warn_when_extension_fails.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/101-test_placeholder_descendant_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/102-test_placeholder_interpolation.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/103-test_placeholder_selector_as_modifier.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/104-test_placeholder_selector_with_multiple_extenders.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/105-test_pseudo_unification.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/106-test_pseudoclass_remains_at_end_of_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/107-test_pseudoelement_goes_lefter_than_not.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/108-test_pseudoelement_goes_lefter_than_pseudoclass.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/109-test_pseudoelement_remains_at_end_of_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/11-test_combinator_unification_double_tilde.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/110-test_redundant_selector_elimination.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/111-test_semi_placeholder_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/112-test_target_with_child.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/113-test_three_level_extend_loop.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/114-test_universal_unification_with_namespaced_element_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/115-test_universal_unification_with_namespaced_universal_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/116-test_universal_unification_with_namespaceless_element_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/117-test_universal_unification_with_namespaceless_universal_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/118-test_universal_unification_with_simple_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/119-test_unused_placeholder_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/12-test_combinator_unification_for_hacky_combinators.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/120-test_can_resolve_generated_imports.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/121-test_extension_overrides.css15
-rw-r--r--theme-compiler/tests/resources/sasslang/css/122-test_staleness_check_across_importers.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/123-compile_file.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/124-test_multibyte_and_interpolation.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/125-test_original_filename_set.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/126-test_selector_tracing.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/127-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/128-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/129-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/13-test_combinator_unification_nested.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/130-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/131-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/132-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/133-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/134-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/135-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/136-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/137-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/138-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/139-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/14-test_combinator_unification_plus_space.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/140-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/141-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/142-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/143-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/144-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/145-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/146-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/147-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/148-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/149-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/15-test_combinator_unification_tilde_plus.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/150-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/151-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/152-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/153-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/154-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/155-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/156-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/157-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/158-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/159-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/16-test_combinator_unification_with_newlines.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/160-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/161-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/162-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/163-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/164-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/165-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/166-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/167-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/168-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/169-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/17-test_comma_extendee.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/170-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/171-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/172-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/173-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/174-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/175-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/176-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/177-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/178-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/179-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/18-test_control_flow_for.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/180-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/181-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/182-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/183-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/184-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/185-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/186-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/187-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/188-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/189-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/19-test_control_flow_if.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/190-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/191-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/192-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/193-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/194-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/195-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/196-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/197-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/198-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/199-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/2-test_basic.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/20-test_control_flow_while.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/200-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/201-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/202-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/203-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/204-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/205-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/206-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/207-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/208-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/209-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/21-test_duplicated_selector_with_newlines.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/210-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/211-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/212-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/213-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/214-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/215-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/216-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/217-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/218-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/219-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/22-test_dynamic_extendee.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/220-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/221-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/222-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/223-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/224-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/225-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/226-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/227-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/228-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/229-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/23-test_element_unification_with_namespaced_element_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/230-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/231-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/232-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/233-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/234-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/235-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/236-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/237-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/238-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/239-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/24-test_element_unification_with_namespaced_universal_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/240-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/241-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/242-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/243-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/244-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/245-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/246-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/247-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/248-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/249-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/25-test_element_unification_with_namespaceless_element_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/250-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/251-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/252-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/253-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/254-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/255-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/256-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/257-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/258-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/259-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/26-test_element_unification_with_namespaceless_universal_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/260-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/261-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/262-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/263-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/264-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/265-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/266-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/267-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/268-update_stylesheet.css13
-rw-r--r--theme-compiler/tests/resources/sasslang/css/269-update_stylesheet.css98
-rw-r--r--theme-compiler/tests/resources/sasslang/css/27-test_element_unification_with_simple_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/270-update_stylesheet.css4
-rw-r--r--theme-compiler/tests/resources/sasslang/css/271-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/272-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/273-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/274-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/275-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/276-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/277-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/278-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/279-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/28-test_extend_cross_branch_redundancy_elimination.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/280-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/281-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/282-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/283-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/284-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/285-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/286-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/287-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/288-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/289-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/290-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/291-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/292-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/293-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/294-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/295-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/296-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/297-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/298-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/299-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/3-test_basic_extend_loop.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/30-test_extend_out_of_media.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/300-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/301-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/302-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/303-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/304-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/305-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/306-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/307-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/308-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/309-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/31-test_extend_out_of_nested_directives.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/310-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/311-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/312-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/313-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/314-update_stylesheet.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/315-update_stylesheet.css79
-rw-r--r--theme-compiler/tests/resources/sasslang/css/316-update_stylesheet.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/317-test_almost_ambiguous_nested_rules_and_declarations.css9
-rw-r--r--theme-compiler/tests/resources/sasslang/css/318-test_basic_function.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/319-test_basic_mixins.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/32-test_extend_out_of_unknown_directive.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/320-test_basic_prop_name_interpolation.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/321-test_basic_selector_interpolation.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/322-test_block_comment_in_script.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/323-test_comment_after_if_directive.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/324-test_css_import_directive.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/325-test_css_import_directive.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/326-test_css_import_directive.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/327-test_css_import_directive.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/328-test_css_import_directive.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/329-test_debug_directive.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/33-test_extend_redundancy_elimination_never_eliminates_base_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/330-test_directive_interpolation.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/331-test_dynamic_media_import.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/332-test_each_directive.css13
-rw-r--r--theme-compiler/tests/resources/sasslang/css/333-test_empty_content.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/334-test_for_directive.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/335-test_function_args.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/336-test_function_empty_var_args.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/337-test_function_splat_args.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/338-test_function_splat_args_with_var_args.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/339-test_function_splat_args_with_var_args_and_normal_args.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/340-test_function_splat_args_with_var_args_preserves_separator.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/341-test_function_splat_expression.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/342-test_function_var_and_splat_args_pass_through_keywords.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/343-test_function_var_args.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/344-test_function_var_args_act_like_list.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/345-test_function_var_args_passed_to_native.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/346-test_guard_assign.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/347-test_http_import.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/348-test_if_directive.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/349-test_import_with_interpolation.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/350-test_interpolation.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/351-test_interpolation_with_bracket_on_next_line.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/352-test_keyword_args_in_functions.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/353-test_line_comment_in_script.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/354-test_media_import.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/355-test_media_interpolation.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/356-test_media_interpolation_with_reparse.css12
-rw-r--r--theme-compiler/tests/resources/sasslang/css/357-test_mixin_content.css9
-rw-r--r--theme-compiler/tests/resources/sasslang/css/358-test_mixin_empty_var_args.css4
-rw-r--r--theme-compiler/tests/resources/sasslang/css/359-test_mixin_splat_args.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/36-test_extend_self_loop.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/360-test_mixin_splat_args_with_var_args.css4
-rw-r--r--theme-compiler/tests/resources/sasslang/css/361-test_mixin_splat_args_with_var_args_and_normal_args.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/362-test_mixin_splat_args_with_var_args_preserves_separator.css4
-rw-r--r--theme-compiler/tests/resources/sasslang/css/363-test_mixin_splat_expression.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/364-test_mixin_var_and_splat_args_pass_through_keywords.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/365-test_mixin_var_args.css4
-rw-r--r--theme-compiler/tests/resources/sasslang/css/366-test_mixin_var_args_act_like_list.css4
-rw-r--r--theme-compiler/tests/resources/sasslang/css/367-test_mixin_with_keyword_args.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/368-test_mixins_with_args.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/369-test_mixins_with_empty_args.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/37-test_extend_warns_when_extendee_doesnt_exist.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/370-test_moz_document_interpolation.css8
-rw-r--r--theme-compiler/tests/resources/sasslang/css/371-test_multiline_var.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/372-test_namespace_properties.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/373-test_namespace_properties_with_script_value.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/374-test_namespace_properties_with_value.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/375-test_nested_function_def.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/376-test_nested_function_shadow.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/377-test_nested_mixin_def.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/378-test_nested_mixin_shadow.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/379-test_nested_namespace_properties.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/38-test_extend_warns_when_extension_fails.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/380-test_nested_rules.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/381-test_nested_rules_with_declarations.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/382-test_nested_rules_with_fancy_selectors.css9
-rw-r--r--theme-compiler/tests/resources/sasslang/css/383-test_newline_selector_rendered_multiple_times.css9
-rw-r--r--theme-compiler/tests/resources/sasslang/css/384-test_newlines_in_selectors.css4
-rw-r--r--theme-compiler/tests/resources/sasslang/css/385-test_newlines_removed_from_selectors_when_compressed.css4
-rw-r--r--theme-compiler/tests/resources/sasslang/css/386-test_no_buffer_overflow.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/387-test_no_namespace_properties_without_space.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/388-test_one_line_comments.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/389-test_options_passed_to_script.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/39-test_extend_with_subject_fails_with_conflicting_subject.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/390-test_parent_selector_with_parent_and_subject.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/391-test_parent_selector_with_subject.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/392-test_parent_selectors.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/393-test_passing_all_as_keyword_args_in_opposite_order.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/394-test_passing_required_args_as_a_keyword_arg.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/395-test_prop_name_interpolation_after_hyphen.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/396-test_prop_name_only_interpolation.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/397-test_random_directive_interpolation.css8
-rw-r--r--theme-compiler/tests/resources/sasslang/css/398-test_reference_combinator_with_parent_ref.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/399-test_sass_script.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/4-test_basic_placeholder_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/40-test_extend_with_subject_retains_subject_on_extender.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/400-test_script_in_media.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/401-test_selector_interpolation_at_attr_beginning.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/402-test_selector_interpolation_at_attr_end.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/403-test_selector_interpolation_at_class_begininng.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/404-test_selector_interpolation_at_dashes.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/405-test_selector_interpolation_at_id_begininng.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/406-test_selector_interpolation_at_pseudo_begininng.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/407-test_selector_interpolation_before_element_name.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/408-test_selector_interpolation_in_pseudoclass.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/409-test_selector_interpolation_in_reference_combinator.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/41-test_extend_with_subject_retains_subject_on_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/410-test_selector_interpolation_in_string.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/411-test_selector_only_interpolation.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/412-test_several_namespace_properties.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/413-test_star_plus_and_parent.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/414-test_supports_bubbling.css10
-rw-r--r--theme-compiler/tests/resources/sasslang/css/415-test_supports_with_expressions.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/416-test_trailing_comma_in_selector.css8
-rw-r--r--theme-compiler/tests/resources/sasslang/css/417-test_unicode_variables.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/418-test_url_import.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/css/419-test_variables.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/42-test_extend_with_subject_transfers_subject_to_extender.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/420-test_warn_directive.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/421-test_weird_added_space.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/422-test_while_directive.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/43-test_extend_with_subject_transfers_subject_to_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/44-test_extend_within_and_without_media.css9
-rw-r--r--theme-compiler/tests/resources/sasslang/css/45-test_extend_within_and_without_nested_directives.css11
-rw-r--r--theme-compiler/tests/resources/sasslang/css/46-test_extend_within_and_without_unknown_directive.css9
-rw-r--r--theme-compiler/tests/resources/sasslang/css/47-test_extend_within_disparate_media.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/48-test_extend_within_disparate_nested_directives.css10
-rw-r--r--theme-compiler/tests/resources/sasslang/css/49-test_extend_within_disparate_unknown_directive.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/5-test_chained_extends.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/50-test_extend_within_media.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/51-test_extend_within_nested_directives.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/52-test_extend_within_unknown_directive.css5
-rw-r--r--theme-compiler/tests/resources/sasslang/css/53-test_extended_parent_and_child_redundancy_elimination.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/54-test_id_unification.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/55-test_long_extendee.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/56-test_long_extendee_matches_supersets.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/57-test_long_extendee_requires_all_selectors.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/58-test_long_extendee_runs_unification.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/59-test_long_extender.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/6-test_class_unification.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/60-test_long_extender_aborts_unification.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/61-test_long_extender_runs_unification.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/62-test_media_in_placeholder_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/63-test_multiple_extendees.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/64-test_multiple_extender_merges_with_superset_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/65-test_multiple_extends_with_multiple_extenders_and_single_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/66-test_multiple_extends_with_single_extender_and_single_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/67-test_multiple_targets.css7
-rw-r--r--theme-compiler/tests/resources/sasslang/css/68-test_negation_unification.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/69-test_nested_extend_loop.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/7-test_combinator_unification_angle_sibling.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/70-test_nested_extender.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/71-test_nested_extender_aborts_unification.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/72-test_nested_extender_alternates_parents.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/73-test_nested_extender_chooses_first_subseq.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/74-test_nested_extender_counts_extended_subselectors.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/75-test_nested_extender_counts_extended_superselectors.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/76-test_nested_extender_doesnt_find_common_selectors_around_adjacent_sibling_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/77-test_nested_extender_doesnt_find_common_selectors_around_reference_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/78-test_nested_extender_doesnt_find_common_selectors_around_sibling_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/79-test_nested_extender_finds_common_selectors_around_child_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/8-test_combinator_unification_angle_space.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/80-test_nested_extender_merges_with_same_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/81-test_nested_extender_runs_unification.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/82-test_nested_extender_unifies_common_subseq.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/83-test_nested_extender_unifies_common_substring.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/84-test_nested_extender_unifies_identical_parents.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/85-test_nested_extender_with_child_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/86-test_nested_extender_with_child_selector_merges_with_same_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/87-test_nested_extender_with_child_selector_unifies.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/89-test_nested_extender_with_hacky_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/9-test_combinator_unification_double_angle.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/90-test_nested_extender_with_sibling_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/91-test_nested_selector_with_child_selector_hack_extendee.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/92-test_nested_selector_with_child_selector_hack_extender.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/93-test_nested_selector_with_child_selector_hack_extender_and_extendee.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/94-test_nested_selector_with_child_selector_hack_extender_and_extendee_and_newline.css4
-rw-r--r--theme-compiler/tests/resources/sasslang/css/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/96-test_nested_target.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/97-test_newline_near_combinator.css6
-rw-r--r--theme-compiler/tests/resources/sasslang/css/98-test_not_remains_at_end_of_selector.css3
-rw-r--r--theme-compiler/tests/resources/sasslang/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/1-test_attribute_unification.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/10-test_combinator_unification_double_plus.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/101-test_placeholder_descendant_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/102-test_placeholder_interpolation.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/103-test_placeholder_selector_as_modifier.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/104-test_placeholder_selector_with_multiple_extenders.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/105-test_pseudo_unification.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/106-test_pseudoclass_remains_at_end_of_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/107-test_pseudoelement_goes_lefter_than_not.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/108-test_pseudoelement_goes_lefter_than_pseudoclass.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/109-test_pseudoelement_remains_at_end_of_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/11-test_combinator_unification_double_tilde.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/110-test_redundant_selector_elimination.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/111-test_semi_placeholder_selector.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/112-test_target_with_child.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/113-test_three_level_extend_loop.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/114-test_universal_unification_with_namespaced_element_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/115-test_universal_unification_with_namespaced_universal_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/116-test_universal_unification_with_namespaceless_element_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/117-test_universal_unification_with_namespaceless_universal_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/118-test_universal_unification_with_simple_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/119-test_unused_placeholder_selector.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/12-test_combinator_unification_for_hacky_combinators.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/120-test_can_resolve_generated_imports.scss7
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/121-test_extension_overrides.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/122-test_staleness_check_across_importers.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/123-compile_file.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/124-test_multibyte_and_interpolation.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/125-test_original_filename_set.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/126-test_selector_tracing.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/127-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/128-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/129-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/13-test_combinator_unification_nested.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/130-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/131-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/132-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/133-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/134-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/135-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/136-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/137-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/138-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/139-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/14-test_combinator_unification_plus_space.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/140-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/141-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/142-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/143-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/144-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/145-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/146-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/147-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/148-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/149-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/15-test_combinator_unification_tilde_plus.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/150-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/151-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/152-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/153-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/154-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/155-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/156-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/157-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/158-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/159-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/16-test_combinator_unification_with_newlines.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/160-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/161-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/162-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/163-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/164-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/165-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/166-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/167-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/168-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/169-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/17-test_comma_extendee.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/170-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/171-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/172-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/173-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/174-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/175-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/176-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/177-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/178-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/179-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/18-test_control_flow_for.scss8
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/180-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/181-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/182-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/183-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/184-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/185-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/186-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/187-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/188-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/189-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/19-test_control_flow_if.scss10
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/190-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/191-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/192-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/193-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/194-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/195-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/196-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/197-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/198-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/199-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/2-test_basic.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/20-test_control_flow_while.scss10
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/200-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/201-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/202-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/203-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/204-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/205-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/206-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/207-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/208-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/209-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/21-test_duplicated_selector_with_newlines.scss7
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/210-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/211-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/212-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/213-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/214-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/215-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/216-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/217-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/218-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/219-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/22-test_dynamic_extendee.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/220-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/221-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/222-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/223-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/224-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/225-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/226-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/227-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/228-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/229-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/23-test_element_unification_with_namespaced_element_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/230-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/231-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/232-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/233-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/234-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/235-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/236-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/237-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/238-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/239-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/24-test_element_unification_with_namespaced_universal_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/240-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/241-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/242-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/243-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/244-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/245-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/246-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/247-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/248-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/249-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/25-test_element_unification_with_namespaceless_element_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/250-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/251-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/252-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/253-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/254-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/255-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/256-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/257-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/258-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/259-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/26-test_element_unification_with_namespaceless_universal_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/260-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/261-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/262-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/263-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/264-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/265-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/266-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/267-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/268-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/269-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/27-test_element_unification_with_simple_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/270-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/271-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/272-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/273-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/274-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/275-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/276-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/277-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/278-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/279-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/28-test_extend_cross_branch_redundancy_elimination.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/280-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/281-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/282-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/283-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/284-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/285-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/286-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/287-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/288-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/289-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/290-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/291-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/292-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/293-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/294-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/295-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/296-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/297-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/298-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/299-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/3-test_basic_extend_loop.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/30-test_extend_out_of_media.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/300-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/301-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/302-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/303-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/304-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/305-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/306-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/307-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/308-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/309-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/31-test_extend_out_of_nested_directives.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/310-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/311-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/312-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/313-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/314-update_stylesheet.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/315-update_stylesheet.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/316-update_stylesheet.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/317-test_almost_ambiguous_nested_rules_and_declarations.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/318-test_basic_function.scss7
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/319-test_basic_mixins.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/32-test_extend_out_of_unknown_directive.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/320-test_basic_prop_name_interpolation.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/321-test_basic_selector_interpolation.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/322-test_block_comment_in_script.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/323-test_comment_after_if_directive.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/324-test_css_import_directive.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/325-test_css_import_directive.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/326-test_css_import_directive.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/327-test_css_import_directive.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/328-test_css_import_directive.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/329-test_debug_directive.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/33-test_extend_redundancy_elimination_never_eliminates_base_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/330-test_directive_interpolation.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/331-test_dynamic_media_import.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/332-test_each_directive.scss10
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/333-test_empty_content.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/334-test_for_directive.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/335-test_function_args.scss7
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/336-test_function_empty_var_args.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/337-test_function_splat_args.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/338-test_function_splat_args_with_var_args.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/339-test_function_splat_args_with_var_args_and_normal_args.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/340-test_function_splat_args_with_var_args_preserves_separator.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/341-test_function_splat_expression.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/342-test_function_var_and_splat_args_pass_through_keywords.scss9
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/343-test_function_var_args.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/344-test_function_var_args_act_like_list.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/345-test_function_var_args_passed_to_native.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/346-test_guard_assign.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/347-test_http_import.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/348-test_if_directive.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/349-test_import_with_interpolation.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/350-test_interpolation.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/351-test_interpolation_with_bracket_on_next_line.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/352-test_keyword_args_in_functions.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/353-test_line_comment_in_script.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/354-test_media_import.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/355-test_media_interpolation.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/356-test_media_interpolation_with_reparse.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/357-test_mixin_content.scss13
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/358-test_mixin_empty_var_args.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/359-test_mixin_splat_args.scss9
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/36-test_extend_self_loop.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/360-test_mixin_splat_args_with_var_args.scss7
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/361-test_mixin_splat_args_with_var_args_and_normal_args.scss8
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/362-test_mixin_splat_args_with_var_args_preserves_separator.scss7
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/363-test_mixin_splat_expression.scss8
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/364-test_mixin_var_and_splat_args_pass_through_keywords.scss11
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/365-test_mixin_var_args.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/366-test_mixin_var_args_act_like_list.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/367-test_mixin_with_keyword_args.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/368-test_mixins_with_args.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/369-test_mixins_with_empty_args.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/370-test_moz_document_interpolation.scss7
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/371-test_multiline_var.scss10
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/372-test_namespace_properties.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/373-test_namespace_properties_with_script_value.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/374-test_namespace_properties_with_value.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/375-test_nested_function_def.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/376-test_nested_function_shadow.scss8
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/377-test_nested_mixin_def.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/378-test_nested_mixin_shadow.scss8
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/379-test_nested_namespace_properties.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/38-test_extend_warns_when_extension_fails.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/380-test_nested_rules.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/381-test_nested_rules_with_declarations.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/382-test_nested_rules_with_fancy_selectors.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/383-test_newline_selector_rendered_multiple_times.scss8
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/384-test_newlines_in_selectors.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/385-test_newlines_removed_from_selectors_when_compressed.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/386-test_no_buffer_overflow.scss18
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/387-test_no_namespace_properties_without_space.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/388-test_one_line_comments.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/389-test_options_passed_to_script.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/39-test_extend_with_subject_fails_with_conflicting_subject.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/390-test_parent_selector_with_parent_and_subject.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/391-test_parent_selector_with_subject.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/392-test_parent_selectors.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/393-test_passing_all_as_keyword_args_in_opposite_order.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/394-test_passing_required_args_as_a_keyword_arg.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/395-test_prop_name_interpolation_after_hyphen.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/396-test_prop_name_only_interpolation.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/397-test_random_directive_interpolation.scss7
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/398-test_reference_combinator_with_parent_ref.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/399-test_sass_script.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/4-test_basic_placeholder_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/40-test_extend_with_subject_retains_subject_on_extender.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/400-test_script_in_media.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/401-test_selector_interpolation_at_attr_beginning.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/402-test_selector_interpolation_at_attr_end.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/403-test_selector_interpolation_at_class_begininng.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/404-test_selector_interpolation_at_dashes.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/405-test_selector_interpolation_at_id_begininng.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/406-test_selector_interpolation_at_pseudo_begininng.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/407-test_selector_interpolation_before_element_name.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/408-test_selector_interpolation_in_pseudoclass.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/409-test_selector_interpolation_in_reference_combinator.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/41-test_extend_with_subject_retains_subject_on_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/410-test_selector_interpolation_in_string.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/411-test_selector_only_interpolation.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/412-test_several_namespace_properties.scss10
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/413-test_star_plus_and_parent.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/414-test_supports_bubbling.scss8
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/415-test_supports_with_expressions.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/416-test_trailing_comma_in_selector.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/417-test_unicode_variables.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/418-test_url_import.scss1
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/419-test_variables.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/42-test_extend_with_subject_transfers_subject_to_extender.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/420-test_warn_directive.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/421-test_weird_added_space.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/422-test_while_directive.scss8
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/43-test_extend_with_subject_transfers_subject_to_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/44-test_extend_within_and_without_media.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/45-test_extend_within_and_without_nested_directives.scss7
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/46-test_extend_within_and_without_unknown_directive.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/47-test_extend_within_disparate_media.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/48-test_extend_within_disparate_nested_directives.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/49-test_extend_within_disparate_unknown_directive.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/5-test_chained_extends.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/50-test_extend_within_media.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/51-test_extend_within_nested_directives.scss6
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/52-test_extend_within_unknown_directive.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/53-test_extended_parent_and_child_redundancy_elimination.scss5
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/54-test_id_unification.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/55-test_long_extendee.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/56-test_long_extendee_matches_supersets.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/57-test_long_extendee_requires_all_selectors.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/58-test_long_extendee_runs_unification.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/59-test_long_extender.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/6-test_class_unification.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/60-test_long_extender_aborts_unification.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/61-test_long_extender_runs_unification.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/62-test_media_in_placeholder_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/63-test_multiple_extendees.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/64-test_multiple_extender_merges_with_superset_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/65-test_multiple_extends_with_multiple_extenders_and_single_target.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/66-test_multiple_extends_with_single_extender_and_single_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/67-test_multiple_targets.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/68-test_negation_unification.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/69-test_nested_extend_loop.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/7-test_combinator_unification_angle_sibling.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/70-test_nested_extender.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/71-test_nested_extender_aborts_unification.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/72-test_nested_extender_alternates_parents.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/73-test_nested_extender_chooses_first_subseq.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/74-test_nested_extender_counts_extended_subselectors.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/75-test_nested_extender_counts_extended_superselectors.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/76-test_nested_extender_doesnt_find_common_selectors_around_adjacent_sibling_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/77-test_nested_extender_doesnt_find_common_selectors_around_reference_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/78-test_nested_extender_doesnt_find_common_selectors_around_sibling_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/79-test_nested_extender_finds_common_selectors_around_child_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/8-test_combinator_unification_angle_space.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/80-test_nested_extender_merges_with_same_selector.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/81-test_nested_extender_runs_unification.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/82-test_nested_extender_unifies_common_subseq.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/83-test_nested_extender_unifies_common_substring.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/84-test_nested_extender_unifies_identical_parents.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/85-test_nested_extender_with_child_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/86-test_nested_extender_with_child_selector_merges_with_same_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/87-test_nested_extender_with_child_selector_unifies.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.scss4
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/89-test_nested_extender_with_hacky_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/9-test_combinator_unification_double_angle.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/90-test_nested_extender_with_sibling_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/91-test_nested_selector_with_child_selector_hack_extendee.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/92-test_nested_selector_with_child_selector_hack_extender.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/93-test_nested_selector_with_child_selector_hack_extender_and_extendee.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/94-test_nested_selector_with_child_selector_hack_extender_and_extendee_and_newline.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/96-test_nested_target.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/97-test_newline_near_combinator.scss3
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/98-test_not_remains_at_end_of_selector.scss2
-rw-r--r--theme-compiler/tests/resources/sasslang/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss1
844 files changed, 9615 insertions, 0 deletions
diff --git a/theme-compiler/tests/resources/sasslang/css/1-test_attribute_unification.css b/theme-compiler/tests/resources/sasslang/css/1-test_attribute_unification.css
new file mode 100644
index 0000000000..d6f7fa3615
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/1-test_attribute_unification.css
@@ -0,0 +1,3 @@
+-a [foo=bar].baz, -a [foo=bar][foo=baz] {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/10-test_combinator_unification_double_plus.css b/theme-compiler/tests/resources/sasslang/css/10-test_combinator_unification_double_plus.css
new file mode 100644
index 0000000000..93e57ff010
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/10-test_combinator_unification_double_plus.css
@@ -0,0 +1,3 @@
+.a.b + x, .b.a + y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/100-test_optional_extend_does_not_warn_when_extension_fails.css b/theme-compiler/tests/resources/sasslang/css/100-test_optional_extend_does_not_warn_when_extension_fails.css
new file mode 100644
index 0000000000..29116d880b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/100-test_optional_extend_does_not_warn_when_extension_fails.css
@@ -0,0 +1,3 @@
+a.bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/101-test_placeholder_descendant_selector.css b/theme-compiler/tests/resources/sasslang/css/101-test_placeholder_descendant_selector.css
new file mode 100644
index 0000000000..57fce855bd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/101-test_placeholder_descendant_selector.css
@@ -0,0 +1,3 @@
+#context .bar a {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/102-test_placeholder_interpolation.css b/theme-compiler/tests/resources/sasslang/css/102-test_placeholder_interpolation.css
new file mode 100644
index 0000000000..99b5418f82
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/102-test_placeholder_interpolation.css
@@ -0,0 +1,3 @@
+.bar {
+ color: blue;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/103-test_placeholder_selector_as_modifier.css b/theme-compiler/tests/resources/sasslang/css/103-test_placeholder_selector_as_modifier.css
new file mode 100644
index 0000000000..55081f89f1
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/103-test_placeholder_selector_as_modifier.css
@@ -0,0 +1,3 @@
+a.baz.bar {
+ color: blue;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/104-test_placeholder_selector_with_multiple_extenders.css b/theme-compiler/tests/resources/sasslang/css/104-test_placeholder_selector_with_multiple_extenders.css
new file mode 100644
index 0000000000..e579740070
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/104-test_placeholder_selector_with_multiple_extenders.css
@@ -0,0 +1,3 @@
+.bar, .baz {
+ color: blue;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/105-test_pseudo_unification.css b/theme-compiler/tests/resources/sasslang/css/105-test_pseudo_unification.css
new file mode 100644
index 0000000000..249a3584b6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/105-test_pseudo_unification.css
@@ -0,0 +1,3 @@
+-a :foo.baz, -a :foo:foo(2n+1) {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/106-test_pseudoclass_remains_at_end_of_selector.css b/theme-compiler/tests/resources/sasslang/css/106-test_pseudoclass_remains_at_end_of_selector.css
new file mode 100644
index 0000000000..2118fad2a2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/106-test_pseudoclass_remains_at_end_of_selector.css
@@ -0,0 +1,3 @@
+.foo:bar, .baz:bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/107-test_pseudoelement_goes_lefter_than_not.css b/theme-compiler/tests/resources/sasslang/css/107-test_pseudoelement_goes_lefter_than_not.css
new file mode 100644
index 0000000000..7a53dec628
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/107-test_pseudoelement_goes_lefter_than_not.css
@@ -0,0 +1,3 @@
+.foo::bar, .baz:not(.bang)::bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/108-test_pseudoelement_goes_lefter_than_pseudoclass.css b/theme-compiler/tests/resources/sasslang/css/108-test_pseudoelement_goes_lefter_than_pseudoclass.css
new file mode 100644
index 0000000000..a5ae5ac363
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/108-test_pseudoelement_goes_lefter_than_pseudoclass.css
@@ -0,0 +1,3 @@
+.foo::bar, .baz:bang::bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/109-test_pseudoelement_remains_at_end_of_selector.css b/theme-compiler/tests/resources/sasslang/css/109-test_pseudoelement_remains_at_end_of_selector.css
new file mode 100644
index 0000000000..aa379e70b3
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/109-test_pseudoelement_remains_at_end_of_selector.css
@@ -0,0 +1,3 @@
+.foo::bar, .baz::bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/11-test_combinator_unification_double_tilde.css b/theme-compiler/tests/resources/sasslang/css/11-test_combinator_unification_double_tilde.css
new file mode 100644
index 0000000000..997c71e964
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/11-test_combinator_unification_double_tilde.css
@@ -0,0 +1,3 @@
+.a.b ~ x, .a.b ~ y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/110-test_redundant_selector_elimination.css b/theme-compiler/tests/resources/sasslang/css/110-test_redundant_selector_elimination.css
new file mode 100644
index 0000000000..7be91d143a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/110-test_redundant_selector_elimination.css
@@ -0,0 +1,3 @@
+.foo.bar, .x, .y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/111-test_semi_placeholder_selector.css b/theme-compiler/tests/resources/sasslang/css/111-test_semi_placeholder_selector.css
new file mode 100644
index 0000000000..3ec0f35ee0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/111-test_semi_placeholder_selector.css
@@ -0,0 +1,3 @@
+.bar .baz {
+ color: blue;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/112-test_target_with_child.css b/theme-compiler/tests/resources/sasslang/css/112-test_target_with_child.css
new file mode 100644
index 0000000000..cee3a34a5a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/112-test_target_with_child.css
@@ -0,0 +1,3 @@
+.foo .bar, .baz .bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/113-test_three_level_extend_loop.css b/theme-compiler/tests/resources/sasslang/css/113-test_three_level_extend_loop.css
new file mode 100644
index 0000000000..640ece85d5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/113-test_three_level_extend_loop.css
@@ -0,0 +1,11 @@
+.baz, .bar, .foo {
+ a: b;
+}
+
+.foo, .baz, .bar {
+ c: d;
+}
+
+.bar, .foo, .baz {
+ e: f;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/114-test_universal_unification_with_namespaced_element_target.css b/theme-compiler/tests/resources/sasslang/css/114-test_universal_unification_with_namespaced_element_target.css
new file mode 100644
index 0000000000..4988442f55
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/114-test_universal_unification_with_namespaced_element_target.css
@@ -0,0 +1,3 @@
+-a ns|a {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/115-test_universal_unification_with_namespaced_universal_target.css b/theme-compiler/tests/resources/sasslang/css/115-test_universal_unification_with_namespaced_universal_target.css
new file mode 100644
index 0000000000..529e3073b5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/115-test_universal_unification_with_namespaced_universal_target.css
@@ -0,0 +1,3 @@
+-a ns|* {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/116-test_universal_unification_with_namespaceless_element_target.css b/theme-compiler/tests/resources/sasslang/css/116-test_universal_unification_with_namespaceless_element_target.css
new file mode 100644
index 0000000000..40cb85e157
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/116-test_universal_unification_with_namespaceless_element_target.css
@@ -0,0 +1,3 @@
+-a a {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/117-test_universal_unification_with_namespaceless_universal_target.css b/theme-compiler/tests/resources/sasslang/css/117-test_universal_unification_with_namespaceless_universal_target.css
new file mode 100644
index 0000000000..012be00d83
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/117-test_universal_unification_with_namespaceless_universal_target.css
@@ -0,0 +1,3 @@
+-a * {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/118-test_universal_unification_with_simple_target.css b/theme-compiler/tests/resources/sasslang/css/118-test_universal_unification_with_simple_target.css
new file mode 100644
index 0000000000..4072c8bf99
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/118-test_universal_unification_with_simple_target.css
@@ -0,0 +1,3 @@
+-a .foo, -a * {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/119-test_unused_placeholder_selector.css b/theme-compiler/tests/resources/sasslang/css/119-test_unused_placeholder_selector.css
new file mode 100644
index 0000000000..edf0e19792
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/119-test_unused_placeholder_selector.css
@@ -0,0 +1,3 @@
+.baz {
+ color: blue;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/12-test_combinator_unification_for_hacky_combinators.css b/theme-compiler/tests/resources/sasslang/css/12-test_combinator_unification_for_hacky_combinators.css
new file mode 100644
index 0000000000..9f099f3228
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/12-test_combinator_unification_for_hacky_combinators.css
@@ -0,0 +1,3 @@
+.a > + x, .a .b > + y, .b .a > + y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/120-test_can_resolve_generated_imports.css b/theme-compiler/tests/resources/sasslang/css/120-test_can_resolve_generated_imports.css
new file mode 100644
index 0000000000..f016905be0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/120-test_can_resolve_generated_imports.css
@@ -0,0 +1,11 @@
+.apple {
+ color: red;
+}
+
+.orange {
+ color: orange;
+}
+
+.pear {
+ color: green;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/121-test_extension_overrides.css b/theme-compiler/tests/resources/sasslang/css/121-test_extension_overrides.css
new file mode 100644
index 0000000000..d3905438ac
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/121-test_extension_overrides.css
@@ -0,0 +1,15 @@
+.foo {
+ reversed: true;
+}
+
+.bar {
+ reversed: true;
+}
+
+.foo {
+ reversed: true;
+}
+
+.bar {
+ reversed: true;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/122-test_staleness_check_across_importers.css b/theme-compiler/tests/resources/sasslang/css/122-test_staleness_check_across_importers.css
new file mode 100644
index 0000000000..b314b9cfea
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/122-test_staleness_check_across_importers.css
@@ -0,0 +1,3 @@
+.pear {
+ color: green;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/123-compile_file.css b/theme-compiler/tests/resources/sasslang/css/123-compile_file.css
new file mode 100644
index 0000000000..1eed372c0d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/123-compile_file.css
@@ -0,0 +1,3 @@
+div {
+ hello: world;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/124-test_multibyte_and_interpolation.css b/theme-compiler/tests/resources/sasslang/css/124-test_multibyte_and_interpolation.css
new file mode 100644
index 0000000000..61eeb166f3
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/124-test_multibyte_and_interpolation.css
@@ -0,0 +1,3 @@
+#bar {
+ background: a 0%;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/125-test_original_filename_set.css b/theme-compiler/tests/resources/sasslang/css/125-test_original_filename_set.css
new file mode 100644
index 0000000000..c6ac924ffe
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/125-test_original_filename_set.css
@@ -0,0 +1,7 @@
+div {
+ color: red;
+}
+
+div {
+ color: blue;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/126-test_selector_tracing.css b/theme-compiler/tests/resources/sasslang/css/126-test_selector_tracing.css
new file mode 100644
index 0000000000..5652cfa3c6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/126-test_selector_tracing.css
@@ -0,0 +1,5 @@
+/* on line 2 of test_selector_tracing_inline.scss, in `mixed'
+ from line 5 of test_selector_tracing_inline.scss */
+.context .mixed {
+ color: red;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/127-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/127-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/127-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/128-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/128-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/128-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/129-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/129-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/129-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/13-test_combinator_unification_nested.css b/theme-compiler/tests/resources/sasslang/css/13-test_combinator_unification_nested.css
new file mode 100644
index 0000000000..8afffe9533
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/13-test_combinator_unification_nested.css
@@ -0,0 +1,3 @@
+.a > .b + x, .c.a > .d.b + y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/130-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/130-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/130-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/131-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/131-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/131-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/132-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/132-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/132-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/133-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/133-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/133-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/134-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/134-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/134-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/135-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/135-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/135-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/136-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/136-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/136-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/137-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/137-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/137-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/138-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/138-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/138-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/139-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/139-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/139-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/14-test_combinator_unification_plus_space.css b/theme-compiler/tests/resources/sasslang/css/14-test_combinator_unification_plus_space.css
new file mode 100644
index 0000000000..4661b46e13
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/14-test_combinator_unification_plus_space.css
@@ -0,0 +1,3 @@
+.a.b + x, .a .a.b + y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/140-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/140-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/140-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/141-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/141-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/141-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/142-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/142-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/142-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/143-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/143-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/143-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/144-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/144-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/144-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/145-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/145-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/145-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/146-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/146-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/146-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/147-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/147-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/147-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/148-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/148-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/148-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/149-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/149-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/149-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/15-test_combinator_unification_tilde_plus.css b/theme-compiler/tests/resources/sasslang/css/15-test_combinator_unification_tilde_plus.css
new file mode 100644
index 0000000000..32b122441a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/15-test_combinator_unification_tilde_plus.css
@@ -0,0 +1,3 @@
+.a.b + x, .a.b + y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/150-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/150-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/150-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/151-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/151-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/151-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/152-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/152-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/152-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/153-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/153-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/153-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/154-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/154-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/154-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/155-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/155-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/155-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/156-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/156-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/156-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/157-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/157-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/157-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/158-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/158-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/158-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/159-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/159-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/159-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/16-test_combinator_unification_with_newlines.css b/theme-compiler/tests/resources/sasslang/css/16-test_combinator_unification_with_newlines.css
new file mode 100644
index 0000000000..28c952b075
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/16-test_combinator_unification_with_newlines.css
@@ -0,0 +1,5 @@
+.a >
+.b
++ x, .c.a > .d.b + y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/160-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/160-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/160-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/161-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/161-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/161-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/162-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/162-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/162-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/163-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/163-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/163-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/164-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/164-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/164-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/165-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/165-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/165-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/166-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/166-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/166-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/167-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/167-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/167-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/168-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/168-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/168-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/169-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/169-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/169-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/17-test_comma_extendee.css b/theme-compiler/tests/resources/sasslang/css/17-test_comma_extendee.css
new file mode 100644
index 0000000000..d3fae7600f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/17-test_comma_extendee.css
@@ -0,0 +1,7 @@
+.foo, .baz {
+ a: b;
+}
+
+.bar, .baz {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/170-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/170-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/170-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/171-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/171-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/171-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/172-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/172-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/172-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/173-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/173-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/173-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/174-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/174-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/174-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/175-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/175-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/175-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/176-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/176-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/176-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/177-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/177-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/177-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/178-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/178-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/178-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/179-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/179-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/179-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/18-test_control_flow_for.css b/theme-compiler/tests/resources/sasslang/css/18-test_control_flow_for.css
new file mode 100644
index 0000000000..a9a248705e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/18-test_control_flow_for.css
@@ -0,0 +1,11 @@
+.base-0, .added {
+ color: green;
+}
+
+.base-1, .added {
+ display: block;
+}
+
+.base-2, .added {
+ border: 1px solid blue;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/180-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/180-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/180-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/181-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/181-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/181-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/182-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/182-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/182-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/183-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/183-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/183-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/184-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/184-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/184-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/185-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/185-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/185-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/186-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/186-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/186-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/187-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/187-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/187-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/188-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/188-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/188-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/189-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/189-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/189-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/19-test_control_flow_if.css b/theme-compiler/tests/resources/sasslang/css/19-test_control_flow_if.css
new file mode 100644
index 0000000000..14a1c6ef3c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/19-test_control_flow_if.css
@@ -0,0 +1,7 @@
+.true, .also-true {
+ color: green;
+}
+
+.false, .also-false {
+ color: red;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/190-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/190-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/190-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/191-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/191-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/191-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/192-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/192-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/192-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/193-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/193-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/193-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/194-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/194-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/194-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/195-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/195-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/195-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/196-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/196-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/196-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/197-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/197-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/197-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/198-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/198-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/198-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/199-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/199-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/199-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/2-test_basic.css b/theme-compiler/tests/resources/sasslang/css/2-test_basic.css
new file mode 100644
index 0000000000..4504b8d829
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/2-test_basic.css
@@ -0,0 +1,3 @@
+.foo, .bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/20-test_control_flow_while.css b/theme-compiler/tests/resources/sasslang/css/20-test_control_flow_while.css
new file mode 100644
index 0000000000..a9a248705e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/20-test_control_flow_while.css
@@ -0,0 +1,11 @@
+.base-0, .added {
+ color: green;
+}
+
+.base-1, .added {
+ display: block;
+}
+
+.base-2, .added {
+ border: 1px solid blue;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/200-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/200-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/200-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/201-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/201-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/201-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/202-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/202-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/202-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/203-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/203-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/203-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/204-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/204-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/204-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/205-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/205-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/205-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/206-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/206-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/206-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/207-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/207-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/207-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/208-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/208-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/208-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/209-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/209-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/209-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/21-test_duplicated_selector_with_newlines.css b/theme-compiler/tests/resources/sasslang/css/21-test_duplicated_selector_with_newlines.css
new file mode 100644
index 0000000000..4a8a42b63c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/21-test_duplicated_selector_with_newlines.css
@@ -0,0 +1,6 @@
+.example-1-1,
+.example-1-2,
+.my-page-1 .my-module-1-1,
+.example-1-3 {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/210-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/210-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/210-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/211-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/211-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/211-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/212-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/212-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/212-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/213-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/213-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/213-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/214-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/214-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/214-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/215-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/215-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/215-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/216-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/216-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/216-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/217-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/217-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/217-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/218-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/218-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/218-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/219-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/219-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/219-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/22-test_dynamic_extendee.css b/theme-compiler/tests/resources/sasslang/css/22-test_dynamic_extendee.css
new file mode 100644
index 0000000000..4504b8d829
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/22-test_dynamic_extendee.css
@@ -0,0 +1,3 @@
+.foo, .bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/220-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/220-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/220-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/221-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/221-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/221-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/222-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/222-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/222-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/223-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/223-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/223-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/224-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/224-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/224-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/225-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/225-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/225-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/226-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/226-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/226-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/227-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/227-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/227-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/228-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/228-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/228-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/229-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/229-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/229-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/23-test_element_unification_with_namespaced_element_target.css b/theme-compiler/tests/resources/sasslang/css/23-test_element_unification_with_namespaced_element_target.css
new file mode 100644
index 0000000000..4988442f55
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/23-test_element_unification_with_namespaced_element_target.css
@@ -0,0 +1,3 @@
+-a ns|a {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/230-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/230-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/230-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/231-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/231-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/231-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/232-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/232-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/232-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/233-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/233-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/233-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/234-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/234-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/234-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/235-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/235-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/235-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/236-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/236-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/236-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/237-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/237-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/237-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/238-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/238-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/238-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/239-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/239-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/239-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/24-test_element_unification_with_namespaced_universal_target.css b/theme-compiler/tests/resources/sasslang/css/24-test_element_unification_with_namespaced_universal_target.css
new file mode 100644
index 0000000000..2412e84459
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/24-test_element_unification_with_namespaced_universal_target.css
@@ -0,0 +1,3 @@
+-a ns|*.foo, -a ns|a {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/240-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/240-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/240-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/241-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/241-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/241-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/242-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/242-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/242-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/243-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/243-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/243-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/244-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/244-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/244-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/245-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/245-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/245-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/246-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/246-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/246-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/247-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/247-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/247-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/248-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/248-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/248-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/249-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/249-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/249-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/25-test_element_unification_with_namespaceless_element_target.css b/theme-compiler/tests/resources/sasslang/css/25-test_element_unification_with_namespaceless_element_target.css
new file mode 100644
index 0000000000..40cb85e157
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/25-test_element_unification_with_namespaceless_element_target.css
@@ -0,0 +1,3 @@
+-a a {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/250-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/250-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/250-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/251-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/251-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/251-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/252-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/252-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/252-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/253-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/253-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/253-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/254-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/254-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/254-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/255-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/255-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/255-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/256-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/256-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/256-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/257-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/257-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/257-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/258-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/258-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/258-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/259-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/259-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/259-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/26-test_element_unification_with_namespaceless_universal_target.css b/theme-compiler/tests/resources/sasslang/css/26-test_element_unification_with_namespaceless_universal_target.css
new file mode 100644
index 0000000000..5e00e7c382
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/26-test_element_unification_with_namespaceless_universal_target.css
@@ -0,0 +1,3 @@
+-a *.foo, -a a {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/260-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/260-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/260-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/261-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/261-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/261-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/262-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/262-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/262-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/263-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/263-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/263-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/264-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/264-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/264-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/265-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/265-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/265-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/266-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/266-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/266-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/267-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/267-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/267-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/268-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/268-update_stylesheet.css
new file mode 100644
index 0000000000..a634ed7c96
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/268-update_stylesheet.css
@@ -0,0 +1,13 @@
+/* line 9, ../templates/_filename_fn_import.scss */
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+/* line 11, ../templates/filename_fn.scss */
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/269-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/269-update_stylesheet.css
new file mode 100644
index 0000000000..bb101f2994
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/269-update_stylesheet.css
@@ -0,0 +1,98 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+/* line 6, ../templates/importee.sass */
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+/* line 3, ../templates/basic.sass */
+body {
+ font: Arial;
+ background: blue;
+}
+
+/* line 7, ../templates/basic.sass */
+#page {
+ width: 700px;
+ height: 100;
+}
+/* line 10, ../templates/basic.sass */
+#page #header {
+ height: 300px;
+}
+/* line 12, ../templates/basic.sass */
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+/* line 18, ../templates/basic.sass */
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+/* line 20, ../templates/basic.sass */
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+/* line 22, ../templates/basic.sass */
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+/* line 13, ../templates/importee.sass */
+midrule {
+ inthe: middle;
+}
+
+/* line 1, ../templates/scss_importee.scss */
+scss {
+ imported: yes;
+}
+
+/* line 3, ../templates/basic.sass */
+body {
+ font: Arial;
+ background: blue;
+}
+
+/* line 7, ../templates/basic.sass */
+#page {
+ width: 700px;
+ height: 100;
+}
+/* line 10, ../templates/basic.sass */
+#page #header {
+ height: 300px;
+}
+/* line 12, ../templates/basic.sass */
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+/* line 18, ../templates/basic.sass */
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+/* line 20, ../templates/basic.sass */
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+/* line 22, ../templates/basic.sass */
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+/* line 1, ../templates/_partial.sass */
+#foo {
+ background-color: #bbaaff;
+}
+
+/* line 8, ../templates/scss_import.scss */
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/27-test_element_unification_with_simple_target.css b/theme-compiler/tests/resources/sasslang/css/27-test_element_unification_with_simple_target.css
new file mode 100644
index 0000000000..2e960f3aef
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/27-test_element_unification_with_simple_target.css
@@ -0,0 +1,3 @@
+-a .foo, -a a {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/270-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/270-update_stylesheet.css
new file mode 100644
index 0000000000..dd142651a4
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/270-update_stylesheet.css
@@ -0,0 +1,4 @@
+/* line 1, ../templates/scss_importee.scss */
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/271-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/271-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/271-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/272-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/272-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/272-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/273-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/273-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/273-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/274-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/274-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/274-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/275-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/275-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/275-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/276-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/276-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/276-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/277-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/277-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/277-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/278-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/278-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/278-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/279-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/279-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/279-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/28-test_extend_cross_branch_redundancy_elimination.css b/theme-compiler/tests/resources/sasslang/css/28-test_extend_cross_branch_redundancy_elimination.css
new file mode 100644
index 0000000000..54120b20c2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/28-test_extend_cross_branch_redundancy_elimination.css
@@ -0,0 +1,3 @@
+a c d, b c a d {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/280-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/280-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/280-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/281-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/281-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/281-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/282-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/282-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/282-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/283-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/283-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/283-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/284-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/284-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/284-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/285-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/285-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/285-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/286-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/286-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/286-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/287-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/287-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/287-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/288-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/288-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/288-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/289-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/289-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/289-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.css b/theme-compiler/tests/resources/sasslang/css/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.css
new file mode 100644
index 0000000000..47d93c5dc1
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.css
@@ -0,0 +1,7 @@
+a.bar {
+ a: b;
+}
+
+.bar, b.foo {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/290-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/290-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/290-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/291-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/291-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/291-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/292-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/292-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/292-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/293-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/293-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/293-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/294-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/294-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/294-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/295-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/295-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/295-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/296-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/296-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/296-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/297-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/297-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/297-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/298-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/298-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/298-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/299-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/299-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/299-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/3-test_basic_extend_loop.css b/theme-compiler/tests/resources/sasslang/css/3-test_basic_extend_loop.css
new file mode 100644
index 0000000000..bcf45b83aa
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/3-test_basic_extend_loop.css
@@ -0,0 +1,7 @@
+.bar, .foo {
+ a: b;
+}
+
+.foo, .bar {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/30-test_extend_out_of_media.css b/theme-compiler/tests/resources/sasslang/css/30-test_extend_out_of_media.css
new file mode 100644
index 0000000000..234d524066
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/30-test_extend_out_of_media.css
@@ -0,0 +1,3 @@
+.foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/300-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/300-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/300-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/301-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/301-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/301-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/302-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/302-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/302-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/303-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/303-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/303-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/304-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/304-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/304-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/305-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/305-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/305-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/306-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/306-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/306-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/307-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/307-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/307-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/308-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/308-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/308-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/309-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/309-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/309-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/31-test_extend_out_of_nested_directives.css b/theme-compiler/tests/resources/sasslang/css/31-test_extend_out_of_nested_directives.css
new file mode 100644
index 0000000000..c4d681dac3
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/31-test_extend_out_of_nested_directives.css
@@ -0,0 +1,7 @@
+@media screen {
+ .foo {
+ a: b;
+ }
+
+ @flooblehoof {}
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/310-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/310-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/310-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/311-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/311-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/311-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/312-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/312-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/312-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/313-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/313-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/313-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/314-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/314-update_stylesheet.css
new file mode 100644
index 0000000000..61903b39ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/314-update_stylesheet.css
@@ -0,0 +1,11 @@
+filename {
+ imported: /test/sass/templates/_filename_fn_import.scss;
+}
+
+filename {
+ local: /test/sass/templates/filename_fn.scss;
+ local-mixin: /test/sass/templates/filename_fn.scss;
+ local-function: /test/sass/templates/filename_fn.scss;
+ imported-mixin: /test/sass/templates/_filename_fn_import.scss;
+ imported-function: /test/sass/templates/_filename_fn_import.scss;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/315-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/315-update_stylesheet.css
new file mode 100644
index 0000000000..f5e45c8df5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/315-update_stylesheet.css
@@ -0,0 +1,79 @@
+@import url(basic.css);
+@import url(../results/complex.css);
+imported {
+ otherconst: hello;
+ myconst: goodbye;
+ pre-mixin: here;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+midrule {
+ inthe: middle;
+}
+
+scss {
+ imported: yes;
+}
+
+body {
+ font: Arial;
+ background: blue;
+}
+
+#page {
+ width: 700px;
+ height: 100;
+}
+#page #header {
+ height: 300px;
+}
+#page #header h1 {
+ font-size: 50px;
+ color: blue;
+}
+
+#content.user.show #container.top #column.left {
+ width: 100px;
+}
+#content.user.show #container.top #column.right {
+ width: 600px;
+}
+#content.user.show #container.bottom {
+ background: brown;
+}
+
+#foo {
+ background-color: #bbaaff;
+}
+
+nonimported {
+ myconst: hello;
+ otherconst: goodbye;
+ post-mixin: here;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/316-update_stylesheet.css b/theme-compiler/tests/resources/sasslang/css/316-update_stylesheet.css
new file mode 100644
index 0000000000..371c2aba44
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/316-update_stylesheet.css
@@ -0,0 +1,3 @@
+scss {
+ imported: yes;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/317-test_almost_ambiguous_nested_rules_and_declarations.css b/theme-compiler/tests/resources/sasslang/css/317-test_almost_ambiguous_nested_rules_and_declarations.css
new file mode 100644
index 0000000000..0a3fb76183
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/317-test_almost_ambiguous_nested_rules_and_declarations.css
@@ -0,0 +1,9 @@
+foo {
+ bar: baz bang bop biddle woo look at all these elems;
+}
+foo bar:baz:bang:bop:biddle:woo:look:at:all:these:pseudoclasses {
+ a: b;
+}
+foo bar:baz bang bop biddle woo look at all these elems {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/318-test_basic_function.css b/theme-compiler/tests/resources/sasslang/css/318-test_basic_function.css
new file mode 100644
index 0000000000..1f390ad5fd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/318-test_basic_function.css
@@ -0,0 +1,3 @@
+bar {
+ a: 3;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/319-test_basic_mixins.css b/theme-compiler/tests/resources/sasslang/css/319-test_basic_mixins.css
new file mode 100644
index 0000000000..234d524066
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/319-test_basic_mixins.css
@@ -0,0 +1,3 @@
+.foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/32-test_extend_out_of_unknown_directive.css b/theme-compiler/tests/resources/sasslang/css/32-test_extend_out_of_unknown_directive.css
new file mode 100644
index 0000000000..31bf52065a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/32-test_extend_out_of_unknown_directive.css
@@ -0,0 +1,5 @@
+.foo {
+ a: b;
+}
+
+@flooblehoof {}
diff --git a/theme-compiler/tests/resources/sasslang/css/320-test_basic_prop_name_interpolation.css b/theme-compiler/tests/resources/sasslang/css/320-test_basic_prop_name_interpolation.css
new file mode 100644
index 0000000000..d347fe1f64
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/320-test_basic_prop_name_interpolation.css
@@ -0,0 +1,3 @@
+foo {
+ barbazbang: blip;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/321-test_basic_selector_interpolation.css b/theme-compiler/tests/resources/sasslang/css/321-test_basic_selector_interpolation.css
new file mode 100644
index 0000000000..f999940ceb
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/321-test_basic_selector_interpolation.css
@@ -0,0 +1,3 @@
+foo 3 baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/322-test_block_comment_in_script.css b/theme-compiler/tests/resources/sasslang/css/322-test_block_comment_in_script.css
new file mode 100644
index 0000000000..d3cb0d033d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/322-test_block_comment_in_script.css
@@ -0,0 +1,3 @@
+foo {
+ a: 1bar;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/323-test_comment_after_if_directive.css b/theme-compiler/tests/resources/sasslang/css/323-test_comment_after_if_directive.css
new file mode 100644
index 0000000000..6728c23263
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/323-test_comment_after_if_directive.css
@@ -0,0 +1,5 @@
+foo {
+ a: b;
+ /* This is a comment */
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/324-test_css_import_directive.css b/theme-compiler/tests/resources/sasslang/css/324-test_css_import_directive.css
new file mode 100644
index 0000000000..0d876d06e8
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/324-test_css_import_directive.css
@@ -0,0 +1 @@
+@import url(foo.css);
diff --git a/theme-compiler/tests/resources/sasslang/css/325-test_css_import_directive.css b/theme-compiler/tests/resources/sasslang/css/325-test_css_import_directive.css
new file mode 100644
index 0000000000..0d876d06e8
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/325-test_css_import_directive.css
@@ -0,0 +1 @@
+@import url(foo.css);
diff --git a/theme-compiler/tests/resources/sasslang/css/326-test_css_import_directive.css b/theme-compiler/tests/resources/sasslang/css/326-test_css_import_directive.css
new file mode 100644
index 0000000000..e2bde2649a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/326-test_css_import_directive.css
@@ -0,0 +1 @@
+@import url("foo.css");
diff --git a/theme-compiler/tests/resources/sasslang/css/327-test_css_import_directive.css b/theme-compiler/tests/resources/sasslang/css/327-test_css_import_directive.css
new file mode 100644
index 0000000000..e2bde2649a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/327-test_css_import_directive.css
@@ -0,0 +1 @@
+@import url("foo.css");
diff --git a/theme-compiler/tests/resources/sasslang/css/328-test_css_import_directive.css b/theme-compiler/tests/resources/sasslang/css/328-test_css_import_directive.css
new file mode 100644
index 0000000000..0d876d06e8
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/328-test_css_import_directive.css
@@ -0,0 +1 @@
+@import url(foo.css);
diff --git a/theme-compiler/tests/resources/sasslang/css/329-test_debug_directive.css b/theme-compiler/tests/resources/sasslang/css/329-test_debug_directive.css
new file mode 100644
index 0000000000..d7a4a88fb1
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/329-test_debug_directive.css
@@ -0,0 +1,7 @@
+foo {
+ a: b;
+}
+
+bar {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/33-test_extend_redundancy_elimination_never_eliminates_base_selector.css b/theme-compiler/tests/resources/sasslang/css/33-test_extend_redundancy_elimination_never_eliminates_base_selector.css
new file mode 100644
index 0000000000..4a4aa6d222
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/33-test_extend_redundancy_elimination_never_eliminates_base_selector.css
@@ -0,0 +1,3 @@
+a.foo, .foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/330-test_directive_interpolation.css b/theme-compiler/tests/resources/sasslang/css/330-test_directive_interpolation.css
new file mode 100644
index 0000000000..4401c2734c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/330-test_directive_interpolation.css
@@ -0,0 +1,3 @@
+@foo bar12 qux {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/331-test_dynamic_media_import.css b/theme-compiler/tests/resources/sasslang/css/331-test_dynamic_media_import.css
new file mode 100644
index 0000000000..e76d990805
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/331-test_dynamic_media_import.css
@@ -0,0 +1 @@
+@import "foo" print and (-webkit-min-device-pixel-ratio-foo: 25);
diff --git a/theme-compiler/tests/resources/sasslang/css/332-test_each_directive.css b/theme-compiler/tests/resources/sasslang/css/332-test_each_directive.css
new file mode 100644
index 0000000000..849fd4a906
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/332-test_each_directive.css
@@ -0,0 +1,13 @@
+a {
+ b: 1px;
+ b: 2px;
+ b: 3px;
+ b: 4px;
+}
+
+c {
+ d: foo;
+ d: bar;
+ d: baz;
+ d: bang;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/333-test_empty_content.css b/theme-compiler/tests/resources/sasslang/css/333-test_empty_content.css
new file mode 100644
index 0000000000..f1c0f6c996
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/333-test_empty_content.css
@@ -0,0 +1,3 @@
+a {
+ b: c;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/334-test_for_directive.css b/theme-compiler/tests/resources/sasslang/css/334-test_for_directive.css
new file mode 100644
index 0000000000..1de8f29fb6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/334-test_for_directive.css
@@ -0,0 +1,6 @@
+.foo {
+ a: 1;
+ a: 2;
+ a: 3;
+ a: 4;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/335-test_function_args.css b/theme-compiler/tests/resources/sasslang/css/335-test_function_args.css
new file mode 100644
index 0000000000..1f390ad5fd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/335-test_function_args.css
@@ -0,0 +1,3 @@
+bar {
+ a: 3;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/336-test_function_empty_var_args.css b/theme-compiler/tests/resources/sasslang/css/336-test_function_empty_var_args.css
new file mode 100644
index 0000000000..3ac4e6c2e0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/336-test_function_empty_var_args.css
@@ -0,0 +1,3 @@
+.foo {
+ val: "a: 1, b: 0";
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/337-test_function_splat_args.css b/theme-compiler/tests/resources/sasslang/css/337-test_function_splat_args.css
new file mode 100644
index 0000000000..49a0b9e87e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/337-test_function_splat_args.css
@@ -0,0 +1,3 @@
+.foo {
+ val: "a: 1, b: 2, c: 3, d: 4";
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/338-test_function_splat_args_with_var_args.css b/theme-compiler/tests/resources/sasslang/css/338-test_function_splat_args_with_var_args.css
new file mode 100644
index 0000000000..070626c15d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/338-test_function_splat_args_with_var_args.css
@@ -0,0 +1,3 @@
+.foo {
+ val: "a: 1, b: 2, 3, 4";
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/339-test_function_splat_args_with_var_args_and_normal_args.css b/theme-compiler/tests/resources/sasslang/css/339-test_function_splat_args_with_var_args_and_normal_args.css
new file mode 100644
index 0000000000..50bf9e3e41
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/339-test_function_splat_args_with_var_args_and_normal_args.css
@@ -0,0 +1,3 @@
+.foo {
+ val: "a: 1, b: 2, c: 3, 4";
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.css b/theme-compiler/tests/resources/sasslang/css/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.css
new file mode 100644
index 0000000000..77b7586abb
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.css
@@ -0,0 +1,3 @@
+.bar a {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/340-test_function_splat_args_with_var_args_preserves_separator.css b/theme-compiler/tests/resources/sasslang/css/340-test_function_splat_args_with_var_args_preserves_separator.css
new file mode 100644
index 0000000000..a461cb47ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/340-test_function_splat_args_with_var_args_preserves_separator.css
@@ -0,0 +1,3 @@
+.foo {
+ val: "a: 1, b: 2 3 4 5";
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/341-test_function_splat_expression.css b/theme-compiler/tests/resources/sasslang/css/341-test_function_splat_expression.css
new file mode 100644
index 0000000000..49a0b9e87e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/341-test_function_splat_expression.css
@@ -0,0 +1,3 @@
+.foo {
+ val: "a: 1, b: 2, c: 3, d: 4";
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/342-test_function_var_and_splat_args_pass_through_keywords.css b/theme-compiler/tests/resources/sasslang/css/342-test_function_var_and_splat_args_pass_through_keywords.css
new file mode 100644
index 0000000000..2e7063d719
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/342-test_function_var_and_splat_args_pass_through_keywords.css
@@ -0,0 +1,3 @@
+.foo {
+ val: "a: 3, b: 1, c: 2";
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/343-test_function_var_args.css b/theme-compiler/tests/resources/sasslang/css/343-test_function_var_args.css
new file mode 100644
index 0000000000..070626c15d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/343-test_function_var_args.css
@@ -0,0 +1,3 @@
+.foo {
+ val: "a: 1, b: 2, 3, 4";
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/344-test_function_var_args_act_like_list.css b/theme-compiler/tests/resources/sasslang/css/344-test_function_var_args_act_like_list.css
new file mode 100644
index 0000000000..6aef32956b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/344-test_function_var_args_act_like_list.css
@@ -0,0 +1,3 @@
+.foo {
+ val: "a: 3, b: 3";
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/345-test_function_var_args_passed_to_native.css b/theme-compiler/tests/resources/sasslang/css/345-test_function_var_args_passed_to_native.css
new file mode 100644
index 0000000000..68a88d7db9
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/345-test_function_var_args_passed_to_native.css
@@ -0,0 +1,3 @@
+.foo {
+ val: #102035;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/346-test_guard_assign.css b/theme-compiler/tests/resources/sasslang/css/346-test_guard_assign.css
new file mode 100644
index 0000000000..1f3372e4de
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/346-test_guard_assign.css
@@ -0,0 +1,3 @@
+foo {
+ a: 1;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/347-test_http_import.css b/theme-compiler/tests/resources/sasslang/css/347-test_http_import.css
new file mode 100644
index 0000000000..89e12cb973
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/347-test_http_import.css
@@ -0,0 +1 @@
+@import "http://fonts.googleapis.com/css?family=Droid+Sans";
diff --git a/theme-compiler/tests/resources/sasslang/css/348-test_if_directive.css b/theme-compiler/tests/resources/sasslang/css/348-test_if_directive.css
new file mode 100644
index 0000000000..d489ae6554
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/348-test_if_directive.css
@@ -0,0 +1,3 @@
+foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/349-test_import_with_interpolation.css b/theme-compiler/tests/resources/sasslang/css/349-test_import_with_interpolation.css
new file mode 100644
index 0000000000..51cc2bfca2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/349-test_import_with_interpolation.css
@@ -0,0 +1 @@
+@import url("http://fonts.googleapis.com/css?family=Droid+Sans");
diff --git a/theme-compiler/tests/resources/sasslang/css/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.css b/theme-compiler/tests/resources/sasslang/css/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.css
new file mode 100644
index 0000000000..eb28eca8fa
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.css
@@ -0,0 +1,3 @@
+a, a.foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/350-test_interpolation.css b/theme-compiler/tests/resources/sasslang/css/350-test_interpolation.css
new file mode 100644
index 0000000000..8b44646800
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/350-test_interpolation.css
@@ -0,0 +1,3 @@
+ul li#foo a span.label {
+ foo: bar;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/351-test_interpolation_with_bracket_on_next_line.css b/theme-compiler/tests/resources/sasslang/css/351-test_interpolation_with_bracket_on_next_line.css
new file mode 100644
index 0000000000..1d6eda12d4
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/351-test_interpolation_with_bracket_on_next_line.css
@@ -0,0 +1,3 @@
+a.foo b {
+ color: red;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/352-test_keyword_args_in_functions.css b/theme-compiler/tests/resources/sasslang/css/352-test_keyword_args_in_functions.css
new file mode 100644
index 0000000000..e3d175a831
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/352-test_keyword_args_in_functions.css
@@ -0,0 +1,3 @@
+.keyed {
+ color: rgba(170, 119, 204, 0.4);
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/353-test_line_comment_in_script.css b/theme-compiler/tests/resources/sasslang/css/353-test_line_comment_in_script.css
new file mode 100644
index 0000000000..62a194463e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/353-test_line_comment_in_script.css
@@ -0,0 +1,3 @@
+foo {
+ a: 1blang;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/354-test_media_import.css b/theme-compiler/tests/resources/sasslang/css/354-test_media_import.css
new file mode 100644
index 0000000000..09f590534e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/354-test_media_import.css
@@ -0,0 +1 @@
+@import "./fonts.sass" all;
diff --git a/theme-compiler/tests/resources/sasslang/css/355-test_media_interpolation.css b/theme-compiler/tests/resources/sasslang/css/355-test_media_interpolation.css
new file mode 100644
index 0000000000..86123395dc
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/355-test_media_interpolation.css
@@ -0,0 +1,3 @@
+@media bar12 {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/356-test_media_interpolation_with_reparse.css b/theme-compiler/tests/resources/sasslang/css/356-test_media_interpolation_with_reparse.css
new file mode 100644
index 0000000000..e94041a035
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/356-test_media_interpolation_with_reparse.css
@@ -0,0 +1,12 @@
+@media screen and (max-width: 300px) {
+ a: b;
+}
+@media screen and (max-width: 300px) {
+ a: b;
+}
+@media screen and (max-width: 300px) {
+ a: b;
+}
+@media screen and (max-width: 300px), print and (max-width: 300px) {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/357-test_mixin_content.css b/theme-compiler/tests/resources/sasslang/css/357-test_mixin_content.css
new file mode 100644
index 0000000000..fdeaf9c315
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/357-test_mixin_content.css
@@ -0,0 +1,9 @@
+.parent {
+ background-color: red;
+ border-color: red;
+}
+.parent .child {
+ background-color: yellow;
+ color: blue;
+ border-color: yellow;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/358-test_mixin_empty_var_args.css b/theme-compiler/tests/resources/sasslang/css/358-test_mixin_empty_var_args.css
new file mode 100644
index 0000000000..402e0ec7b4
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/358-test_mixin_empty_var_args.css
@@ -0,0 +1,4 @@
+.foo {
+ a: 1;
+ b: 0;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/359-test_mixin_splat_args.css b/theme-compiler/tests/resources/sasslang/css/359-test_mixin_splat_args.css
new file mode 100644
index 0000000000..aa9df915c6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/359-test_mixin_splat_args.css
@@ -0,0 +1,6 @@
+.foo {
+ a: 1;
+ b: 2;
+ c: 3;
+ d: 4;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/36-test_extend_self_loop.css b/theme-compiler/tests/resources/sasslang/css/36-test_extend_self_loop.css
new file mode 100644
index 0000000000..234d524066
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/36-test_extend_self_loop.css
@@ -0,0 +1,3 @@
+.foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/360-test_mixin_splat_args_with_var_args.css b/theme-compiler/tests/resources/sasslang/css/360-test_mixin_splat_args_with_var_args.css
new file mode 100644
index 0000000000..bd3cc2df37
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/360-test_mixin_splat_args_with_var_args.css
@@ -0,0 +1,4 @@
+.foo {
+ a: 1;
+ b: 2, 3, 4;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/361-test_mixin_splat_args_with_var_args_and_normal_args.css b/theme-compiler/tests/resources/sasslang/css/361-test_mixin_splat_args_with_var_args_and_normal_args.css
new file mode 100644
index 0000000000..4b63311227
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/361-test_mixin_splat_args_with_var_args_and_normal_args.css
@@ -0,0 +1,5 @@
+.foo {
+ a: 1;
+ b: 2;
+ c: 3, 4;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/362-test_mixin_splat_args_with_var_args_preserves_separator.css b/theme-compiler/tests/resources/sasslang/css/362-test_mixin_splat_args_with_var_args_preserves_separator.css
new file mode 100644
index 0000000000..ae369739a6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/362-test_mixin_splat_args_with_var_args_preserves_separator.css
@@ -0,0 +1,4 @@
+.foo {
+ a: 1;
+ b: 2 3 4 5;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/363-test_mixin_splat_expression.css b/theme-compiler/tests/resources/sasslang/css/363-test_mixin_splat_expression.css
new file mode 100644
index 0000000000..aa9df915c6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/363-test_mixin_splat_expression.css
@@ -0,0 +1,6 @@
+.foo {
+ a: 1;
+ b: 2;
+ c: 3;
+ d: 4;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/364-test_mixin_var_and_splat_args_pass_through_keywords.css b/theme-compiler/tests/resources/sasslang/css/364-test_mixin_var_and_splat_args_pass_through_keywords.css
new file mode 100644
index 0000000000..a5fed46d00
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/364-test_mixin_var_and_splat_args_pass_through_keywords.css
@@ -0,0 +1,5 @@
+.foo {
+ a: 3;
+ b: 1;
+ c: 2;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/365-test_mixin_var_args.css b/theme-compiler/tests/resources/sasslang/css/365-test_mixin_var_args.css
new file mode 100644
index 0000000000..bd3cc2df37
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/365-test_mixin_var_args.css
@@ -0,0 +1,4 @@
+.foo {
+ a: 1;
+ b: 2, 3, 4;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/366-test_mixin_var_args_act_like_list.css b/theme-compiler/tests/resources/sasslang/css/366-test_mixin_var_args_act_like_list.css
new file mode 100644
index 0000000000..51f4696dae
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/366-test_mixin_var_args_act_like_list.css
@@ -0,0 +1,4 @@
+.foo {
+ a: 3;
+ b: 3;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/367-test_mixin_with_keyword_args.css b/theme-compiler/tests/resources/sasslang/css/367-test_mixin_with_keyword_args.css
new file mode 100644
index 0000000000..a9cc14d472
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/367-test_mixin_with_keyword_args.css
@@ -0,0 +1,5 @@
+.mixed {
+ required: foo;
+ arg1: default-val1;
+ arg2: non-default-val2;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/368-test_mixins_with_args.css b/theme-compiler/tests/resources/sasslang/css/368-test_mixins_with_args.css
new file mode 100644
index 0000000000..318a3f6ffb
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/368-test_mixins_with_args.css
@@ -0,0 +1,3 @@
+.foo {
+ a: bar;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/369-test_mixins_with_empty_args.css b/theme-compiler/tests/resources/sasslang/css/369-test_mixins_with_empty_args.css
new file mode 100644
index 0000000000..234d524066
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/369-test_mixins_with_empty_args.css
@@ -0,0 +1,3 @@
+.foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/37-test_extend_warns_when_extendee_doesnt_exist.css b/theme-compiler/tests/resources/sasslang/css/37-test_extend_warns_when_extendee_doesnt_exist.css
new file mode 100644
index 0000000000..8b13789179
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/37-test_extend_warns_when_extendee_doesnt_exist.css
@@ -0,0 +1 @@
+
diff --git a/theme-compiler/tests/resources/sasslang/css/370-test_moz_document_interpolation.css b/theme-compiler/tests/resources/sasslang/css/370-test_moz_document_interpolation.css
new file mode 100644
index 0000000000..c79efac96d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/370-test_moz_document_interpolation.css
@@ -0,0 +1,8 @@
+@-moz-document url(http://sass-lang.com/),
+ url-prefix(http://sass-lang.com/docs),
+ domain(sass-lang.com),
+ domain("sass-lang.com") {
+ .foo {
+ a: b;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/371-test_multiline_var.css b/theme-compiler/tests/resources/sasslang/css/371-test_multiline_var.css
new file mode 100644
index 0000000000..408ac525b0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/371-test_multiline_var.css
@@ -0,0 +1,5 @@
+foo {
+ a: 3;
+ b: false;
+ c: a b c;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/372-test_namespace_properties.css b/theme-compiler/tests/resources/sasslang/css/372-test_namespace_properties.css
new file mode 100644
index 0000000000..63104cf615
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/372-test_namespace_properties.css
@@ -0,0 +1,5 @@
+foo {
+ bar: baz;
+ bang-bip: 1px;
+ bang-bop: bar;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/373-test_namespace_properties_with_script_value.css b/theme-compiler/tests/resources/sasslang/css/373-test_namespace_properties_with_script_value.css
new file mode 100644
index 0000000000..8703334aca
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/373-test_namespace_properties_with_script_value.css
@@ -0,0 +1,5 @@
+foo {
+ bar: bazbang;
+ bar-bip: bop;
+ bar-bing: bop;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/374-test_namespace_properties_with_value.css b/theme-compiler/tests/resources/sasslang/css/374-test_namespace_properties_with_value.css
new file mode 100644
index 0000000000..afca3126ac
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/374-test_namespace_properties_with_value.css
@@ -0,0 +1,5 @@
+foo {
+ bar: baz;
+ bar-bip: bop;
+ bar-bing: bop;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/375-test_nested_function_def.css b/theme-compiler/tests/resources/sasslang/css/375-test_nested_function_def.css
new file mode 100644
index 0000000000..ddda4dd1d0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/375-test_nested_function_def.css
@@ -0,0 +1,7 @@
+foo {
+ a: 1;
+}
+
+bar {
+ b: foo();
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/376-test_nested_function_shadow.css b/theme-compiler/tests/resources/sasslang/css/376-test_nested_function_shadow.css
new file mode 100644
index 0000000000..beb02efb32
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/376-test_nested_function_shadow.css
@@ -0,0 +1,7 @@
+foo {
+ a: 2;
+}
+
+baz {
+ b: 1;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/377-test_nested_mixin_def.css b/theme-compiler/tests/resources/sasslang/css/377-test_nested_mixin_def.css
new file mode 100644
index 0000000000..d489ae6554
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/377-test_nested_mixin_def.css
@@ -0,0 +1,3 @@
+foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/378-test_nested_mixin_shadow.css b/theme-compiler/tests/resources/sasslang/css/378-test_nested_mixin_shadow.css
new file mode 100644
index 0000000000..4cfbdd8028
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/378-test_nested_mixin_shadow.css
@@ -0,0 +1,7 @@
+foo {
+ c: d;
+}
+
+baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/379-test_nested_namespace_properties.css b/theme-compiler/tests/resources/sasslang/css/379-test_nested_namespace_properties.css
new file mode 100644
index 0000000000..0b5b46772e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/379-test_nested_namespace_properties.css
@@ -0,0 +1,6 @@
+foo {
+ bar: baz;
+ bang-bip: 1px;
+ bang-bop: bar;
+ bang-blat-baf: bort;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/38-test_extend_warns_when_extension_fails.css b/theme-compiler/tests/resources/sasslang/css/38-test_extend_warns_when_extension_fails.css
new file mode 100644
index 0000000000..29116d880b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/38-test_extend_warns_when_extension_fails.css
@@ -0,0 +1,3 @@
+a.bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/380-test_nested_rules.css b/theme-compiler/tests/resources/sasslang/css/380-test_nested_rules.css
new file mode 100644
index 0000000000..429820f069
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/380-test_nested_rules.css
@@ -0,0 +1,3 @@
+foo bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/381-test_nested_rules_with_declarations.css b/theme-compiler/tests/resources/sasslang/css/381-test_nested_rules_with_declarations.css
new file mode 100644
index 0000000000..81d426c62f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/381-test_nested_rules_with_declarations.css
@@ -0,0 +1,6 @@
+foo {
+ a: b;
+}
+foo bar {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/382-test_nested_rules_with_fancy_selectors.css b/theme-compiler/tests/resources/sasslang/css/382-test_nested_rules_with_fancy_selectors.css
new file mode 100644
index 0000000000..2d39afb85b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/382-test_nested_rules_with_fancy_selectors.css
@@ -0,0 +1,9 @@
+foo .bar {
+ a: b;
+}
+foo :baz {
+ c: d;
+}
+foo bang:bop {
+ e: f;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/383-test_newline_selector_rendered_multiple_times.css b/theme-compiler/tests/resources/sasslang/css/383-test_newline_selector_rendered_multiple_times.css
new file mode 100644
index 0000000000..b3be4147d3
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/383-test_newline_selector_rendered_multiple_times.css
@@ -0,0 +1,9 @@
+form input,
+form select {
+ color: white;
+}
+
+form input,
+form select {
+ color: white;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/384-test_newlines_in_selectors.css b/theme-compiler/tests/resources/sasslang/css/384-test_newlines_in_selectors.css
new file mode 100644
index 0000000000..91fe7da62c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/384-test_newlines_in_selectors.css
@@ -0,0 +1,4 @@
+foo
+bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/385-test_newlines_removed_from_selectors_when_compressed.css b/theme-compiler/tests/resources/sasslang/css/385-test_newlines_removed_from_selectors_when_compressed.css
new file mode 100644
index 0000000000..5032ec877d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/385-test_newlines_removed_from_selectors_when_compressed.css
@@ -0,0 +1,4 @@
+z a
+, z b {
+ display: block;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/386-test_no_buffer_overflow.css b/theme-compiler/tests/resources/sasslang/css/386-test_no_buffer_overflow.css
new file mode 100644
index 0000000000..f500b39da9
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/386-test_no_buffer_overflow.css
@@ -0,0 +1,7 @@
+.aaa, .bbb, .xxx, .yyy, .zzz {
+ background-color: white;
+}
+
+.aaa .aaa .aaa, .bbb .aaa .aaa, .xxx .aaa .aaa, .yyy .aaa .aaa, .zzz .aaa .aaa, .aaa .bbb .aaa, .bbb .bbb .aaa, .xxx .bbb .aaa, .yyy .bbb .aaa, .zzz .bbb .aaa, .aaa .xxx .aaa, .bbb .xxx .aaa, .xxx .xxx .aaa, .yyy .xxx .aaa, .zzz .xxx .aaa, .aaa .yyy .aaa, .bbb .yyy .aaa, .xxx .yyy .aaa, .yyy .yyy .aaa, .zzz .yyy .aaa, .aaa .zzz .aaa, .bbb .zzz .aaa, .xxx .zzz .aaa, .yyy .zzz .aaa, .zzz .zzz .aaa, .aaa .aaa .bbb, .bbb .aaa .bbb, .xxx .aaa .bbb, .yyy .aaa .bbb, .zzz .aaa .bbb, .aaa .bbb .bbb, .bbb .bbb .bbb, .xxx .bbb .bbb, .yyy .bbb .bbb, .zzz .bbb .bbb, .aaa .xxx .bbb, .bbb .xxx .bbb, .xxx .xxx .bbb, .yyy .xxx .bbb, .zzz .xxx .bbb, .aaa .yyy .bbb, .bbb .yyy .bbb, .xxx .yyy .bbb, .yyy .yyy .bbb, .zzz .yyy .bbb, .aaa .zzz .bbb, .bbb .zzz .bbb, .xxx .zzz .bbb, .yyy .zzz .bbb, .zzz .zzz .bbb, .aaa .aaa .xxx, .bbb .aaa .xxx, .xxx .aaa .xxx, .yyy .aaa .xxx, .zzz .aaa .xxx, .aaa .bbb .xxx, .bbb .bbb .xxx, .xxx .bbb .xxx, .yyy .bbb .xxx, .zzz .bbb .xxx, .aaa .xxx .xxx, .bbb .xxx .xxx, .xxx .xxx .xxx, .yyy .xxx .xxx, .zzz .xxx .xxx, .aaa .yyy .xxx, .bbb .yyy .xxx, .xxx .yyy .xxx, .yyy .yyy .xxx, .zzz .yyy .xxx, .aaa .zzz .xxx, .bbb .zzz .xxx, .xxx .zzz .xxx, .yyy .zzz .xxx, .zzz .zzz .xxx, .aaa .aaa .yyy, .bbb .aaa .yyy, .xxx .aaa .yyy, .yyy .aaa .yyy, .zzz .aaa .yyy, .aaa .bbb .yyy, .bbb .bbb .yyy, .xxx .bbb .yyy, .yyy .bbb .yyy, .zzz .bbb .yyy, .aaa .xxx .yyy, .bbb .xxx .yyy, .xxx .xxx .yyy, .yyy .xxx .yyy, .zzz .xxx .yyy, .aaa .yyy .yyy, .bbb .yyy .yyy, .xxx .yyy .yyy, .yyy .yyy .yyy, .zzz .yyy .yyy, .aaa .zzz .yyy, .bbb .zzz .yyy, .xxx .zzz .yyy, .yyy .zzz .yyy, .zzz .zzz .yyy, .aaa .aaa .zzz, .bbb .aaa .zzz, .xxx .aaa .zzz, .yyy .aaa .zzz, .zzz .aaa .zzz, .aaa .bbb .zzz, .bbb .bbb .zzz, .xxx .bbb .zzz, .yyy .bbb .zzz, .zzz .bbb .zzz, .aaa .xxx .zzz, .bbb .xxx .zzz, .xxx .xxx .zzz, .yyy .xxx .zzz, .zzz .xxx .zzz, .aaa .yyy .zzz, .bbb .yyy .zzz, .xxx .yyy .zzz, .yyy .yyy .zzz, .zzz .yyy .zzz, .aaa .zzz .zzz, .bbb .zzz .zzz, .xxx .zzz .zzz, .yyy .zzz .zzz, .zzz .zzz .zzz {
+ background-color: black;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/387-test_no_namespace_properties_without_space.css b/theme-compiler/tests/resources/sasslang/css/387-test_no_namespace_properties_without_space.css
new file mode 100644
index 0000000000..5e3b26b04c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/387-test_no_namespace_properties_without_space.css
@@ -0,0 +1,3 @@
+foo bar:baz {
+ bip: bop;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/388-test_one_line_comments.css b/theme-compiler/tests/resources/sasslang/css/388-test_one_line_comments.css
new file mode 100644
index 0000000000..371683ff40
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/388-test_one_line_comments.css
@@ -0,0 +1,3 @@
+.foo {
+ baz: bang;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/389-test_options_passed_to_script.css b/theme-compiler/tests/resources/sasslang/css/389-test_options_passed_to_script.css
new file mode 100644
index 0000000000..7a5603c1fd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/389-test_options_passed_to_script.css
@@ -0,0 +1,3 @@
+foo {
+ color: black;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/39-test_extend_with_subject_fails_with_conflicting_subject.css b/theme-compiler/tests/resources/sasslang/css/39-test_extend_with_subject_fails_with_conflicting_subject.css
new file mode 100644
index 0000000000..19d3397495
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/39-test_extend_with_subject_fails_with_conflicting_subject.css
@@ -0,0 +1,3 @@
+x! .bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/390-test_parent_selector_with_parent_and_subject.css b/theme-compiler/tests/resources/sasslang/css/390-test_parent_selector_with_parent_and_subject.css
new file mode 100644
index 0000000000..234fea7aa5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/390-test_parent_selector_with_parent_and_subject.css
@@ -0,0 +1,3 @@
+bar foo.baz! .bip {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/391-test_parent_selector_with_subject.css b/theme-compiler/tests/resources/sasslang/css/391-test_parent_selector_with_subject.css
new file mode 100644
index 0000000000..60108ad3c7
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/391-test_parent_selector_with_subject.css
@@ -0,0 +1,7 @@
+bar foo.baz! .bip {
+ a: b;
+}
+
+bar foo bar.baz! .bip {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/392-test_parent_selectors.css b/theme-compiler/tests/resources/sasslang/css/392-test_parent_selectors.css
new file mode 100644
index 0000000000..99dfe63b61
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/392-test_parent_selectors.css
@@ -0,0 +1,6 @@
+foo:hover {
+ a: b;
+}
+bar foo.baz {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/393-test_passing_all_as_keyword_args_in_opposite_order.css b/theme-compiler/tests/resources/sasslang/css/393-test_passing_all_as_keyword_args_in_opposite_order.css
new file mode 100644
index 0000000000..589a8796bc
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/393-test_passing_all_as_keyword_args_in_opposite_order.css
@@ -0,0 +1,5 @@
+.mixed {
+ required: foo;
+ arg1: non-default-val1;
+ arg2: non-default-val2;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/394-test_passing_required_args_as_a_keyword_arg.css b/theme-compiler/tests/resources/sasslang/css/394-test_passing_required_args_as_a_keyword_arg.css
new file mode 100644
index 0000000000..caec7ba57f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/394-test_passing_required_args_as_a_keyword_arg.css
@@ -0,0 +1,5 @@
+.mixed {
+ required: foo;
+ arg1: default-val1;
+ arg2: default-val2;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/395-test_prop_name_interpolation_after_hyphen.css b/theme-compiler/tests/resources/sasslang/css/395-test_prop_name_interpolation_after_hyphen.css
new file mode 100644
index 0000000000..b6dcbf37b9
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/395-test_prop_name_interpolation_after_hyphen.css
@@ -0,0 +1,3 @@
+a {
+ -foo-bar: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/396-test_prop_name_only_interpolation.css b/theme-compiler/tests/resources/sasslang/css/396-test_prop_name_only_interpolation.css
new file mode 100644
index 0000000000..83af4a4d42
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/396-test_prop_name_only_interpolation.css
@@ -0,0 +1,3 @@
+foo {
+ bazbang: blip;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/397-test_random_directive_interpolation.css b/theme-compiler/tests/resources/sasslang/css/397-test_random_directive_interpolation.css
new file mode 100644
index 0000000000..19d6bf6ede
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/397-test_random_directive_interpolation.css
@@ -0,0 +1,8 @@
+@foo url(http://sass-lang.com/),
+ domain("sass-lang.com"),
+ "foobarbaz",
+ foobarbaz {
+ .foo {
+ a: b;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/398-test_reference_combinator_with_parent_ref.css b/theme-compiler/tests/resources/sasslang/css/398-test_reference_combinator_with_parent_ref.css
new file mode 100644
index 0000000000..897e2f07f2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/398-test_reference_combinator_with_parent_ref.css
@@ -0,0 +1,3 @@
+a /foo/ b {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/399-test_sass_script.css b/theme-compiler/tests/resources/sasslang/css/399-test_sass_script.css
new file mode 100644
index 0000000000..d826c15454
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/399-test_sass_script.css
@@ -0,0 +1,6 @@
+foo {
+ a: 3;
+ b: -1;
+ c: foobar;
+ d: 12px;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/4-test_basic_placeholder_selector.css b/theme-compiler/tests/resources/sasslang/css/4-test_basic_placeholder_selector.css
new file mode 100644
index 0000000000..d1c124f286
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/4-test_basic_placeholder_selector.css
@@ -0,0 +1,3 @@
+.bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/40-test_extend_with_subject_retains_subject_on_extender.css b/theme-compiler/tests/resources/sasslang/css/40-test_extend_with_subject_retains_subject_on_extender.css
new file mode 100644
index 0000000000..440569a99a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/40-test_extend_with_subject_retains_subject_on_extender.css
@@ -0,0 +1,3 @@
+.foo .bar, .foo .bip! .bap, .bip! .foo .bap {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/400-test_script_in_media.css b/theme-compiler/tests/resources/sasslang/css/400-test_script_in_media.css
new file mode 100644
index 0000000000..4096c3934c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/400-test_script_in_media.css
@@ -0,0 +1,3 @@
+@media screen and (-webkit-min-device-pixel-ratio: 20), only print {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/401-test_selector_interpolation_at_attr_beginning.css b/theme-compiler/tests/resources/sasslang/css/401-test_selector_interpolation_at_attr_beginning.css
new file mode 100644
index 0000000000..ecd3a962a0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/401-test_selector_interpolation_at_attr_beginning.css
@@ -0,0 +1,3 @@
+[zzz=foo] {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/402-test_selector_interpolation_at_attr_end.css b/theme-compiler/tests/resources/sasslang/css/402-test_selector_interpolation_at_attr_end.css
new file mode 100644
index 0000000000..938f3620e0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/402-test_selector_interpolation_at_attr_end.css
@@ -0,0 +1,3 @@
+[foo=zzz] {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/403-test_selector_interpolation_at_class_begininng.css b/theme-compiler/tests/resources/sasslang/css/403-test_selector_interpolation_at_class_begininng.css
new file mode 100644
index 0000000000..a84e7f451f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/403-test_selector_interpolation_at_class_begininng.css
@@ -0,0 +1,3 @@
+.zzz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/404-test_selector_interpolation_at_dashes.css b/theme-compiler/tests/resources/sasslang/css/404-test_selector_interpolation_at_dashes.css
new file mode 100644
index 0000000000..5d49713cfc
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/404-test_selector_interpolation_at_dashes.css
@@ -0,0 +1,3 @@
+div {
+ -foo-a-b-foo: foo;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/405-test_selector_interpolation_at_id_begininng.css b/theme-compiler/tests/resources/sasslang/css/405-test_selector_interpolation_at_id_begininng.css
new file mode 100644
index 0000000000..899ed83213
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/405-test_selector_interpolation_at_id_begininng.css
@@ -0,0 +1,3 @@
+#zzz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/406-test_selector_interpolation_at_pseudo_begininng.css b/theme-compiler/tests/resources/sasslang/css/406-test_selector_interpolation_at_pseudo_begininng.css
new file mode 100644
index 0000000000..9b4f111b9c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/406-test_selector_interpolation_at_pseudo_begininng.css
@@ -0,0 +1,3 @@
+:zzz::zzz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/407-test_selector_interpolation_before_element_name.css b/theme-compiler/tests/resources/sasslang/css/407-test_selector_interpolation_before_element_name.css
new file mode 100644
index 0000000000..d270f5575c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/407-test_selector_interpolation_before_element_name.css
@@ -0,0 +1,3 @@
+foo barbaz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/408-test_selector_interpolation_in_pseudoclass.css b/theme-compiler/tests/resources/sasslang/css/408-test_selector_interpolation_in_pseudoclass.css
new file mode 100644
index 0000000000..ddd5eb983f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/408-test_selector_interpolation_in_pseudoclass.css
@@ -0,0 +1,3 @@
+foo:nth-child(5n) {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/409-test_selector_interpolation_in_reference_combinator.css b/theme-compiler/tests/resources/sasslang/css/409-test_selector_interpolation_in_reference_combinator.css
new file mode 100644
index 0000000000..4a6a56ac6a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/409-test_selector_interpolation_in_reference_combinator.css
@@ -0,0 +1,3 @@
+.foo /a/ .bar /b|c/ .baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/41-test_extend_with_subject_retains_subject_on_target.css b/theme-compiler/tests/resources/sasslang/css/41-test_extend_with_subject_retains_subject_on_target.css
new file mode 100644
index 0000000000..d322bf1c84
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/41-test_extend_with_subject_retains_subject_on_target.css
@@ -0,0 +1,3 @@
+.foo! .bar, .foo! .bip .bap, .bip .foo! .bap {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/410-test_selector_interpolation_in_string.css b/theme-compiler/tests/resources/sasslang/css/410-test_selector_interpolation_in_string.css
new file mode 100644
index 0000000000..e0813204d5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/410-test_selector_interpolation_in_string.css
@@ -0,0 +1,3 @@
+foo[val="bar foo bar baz"] {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/411-test_selector_only_interpolation.css b/theme-compiler/tests/resources/sasslang/css/411-test_selector_only_interpolation.css
new file mode 100644
index 0000000000..429820f069
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/411-test_selector_only_interpolation.css
@@ -0,0 +1,3 @@
+foo bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/412-test_several_namespace_properties.css b/theme-compiler/tests/resources/sasslang/css/412-test_several_namespace_properties.css
new file mode 100644
index 0000000000..be43bed998
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/412-test_several_namespace_properties.css
@@ -0,0 +1,7 @@
+foo {
+ bar: baz;
+ bang-bip: 1px;
+ bang-bop: bar;
+ buzz-fram: "foo";
+ buzz-frum: moo;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/413-test_star_plus_and_parent.css b/theme-compiler/tests/resources/sasslang/css/413-test_star_plus_and_parent.css
new file mode 100644
index 0000000000..cc9f4cd410
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/413-test_star_plus_and_parent.css
@@ -0,0 +1,3 @@
+* + html foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/414-test_supports_bubbling.css b/theme-compiler/tests/resources/sasslang/css/414-test_supports_bubbling.css
new file mode 100644
index 0000000000..821b077c54
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/414-test_supports_bubbling.css
@@ -0,0 +1,10 @@
+@supports (foo: bar) {
+ a {
+ b: c;
+ }
+ @supports (baz: bang) {
+ a {
+ d: e;
+ }
+}
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/415-test_supports_with_expressions.css b/theme-compiler/tests/resources/sasslang/css/415-test_supports_with_expressions.css
new file mode 100644
index 0000000000..56f9ef9c5e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/415-test_supports_with_expressions.css
@@ -0,0 +1,5 @@
+@supports (feature1: val) and (feature2: val) or (not (feature23: val4)) {
+ foo {
+ a: b;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/416-test_trailing_comma_in_selector.css b/theme-compiler/tests/resources/sasslang/css/416-test_trailing_comma_in_selector.css
new file mode 100644
index 0000000000..c92ba0730e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/416-test_trailing_comma_in_selector.css
@@ -0,0 +1,8 @@
+#foo #bar,
+#baz #boom {
+ a: b;
+}
+
+#bip #bop {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/417-test_unicode_variables.css b/theme-compiler/tests/resources/sasslang/css/417-test_unicode_variables.css
new file mode 100644
index 0000000000..4eb3cf2b9c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/417-test_unicode_variables.css
@@ -0,0 +1,3 @@
+blat {
+ a: foo;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/418-test_url_import.css b/theme-compiler/tests/resources/sasslang/css/418-test_url_import.css
new file mode 100644
index 0000000000..e4ebe59e66
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/418-test_url_import.css
@@ -0,0 +1 @@
+@import url(fonts.sass);
diff --git a/theme-compiler/tests/resources/sasslang/css/419-test_variables.css b/theme-compiler/tests/resources/sasslang/css/419-test_variables.css
new file mode 100644
index 0000000000..4eb3cf2b9c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/419-test_variables.css
@@ -0,0 +1,3 @@
+blat {
+ a: foo;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/42-test_extend_with_subject_transfers_subject_to_extender.css b/theme-compiler/tests/resources/sasslang/css/42-test_extend_with_subject_transfers_subject_to_extender.css
new file mode 100644
index 0000000000..cc32146eea
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/42-test_extend_with_subject_transfers_subject_to_extender.css
@@ -0,0 +1,3 @@
+foo bar! baz, foo .bip .bap! baz, .bip foo .bap! baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/420-test_warn_directive.css b/theme-compiler/tests/resources/sasslang/css/420-test_warn_directive.css
new file mode 100644
index 0000000000..6d661f2404
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/420-test_warn_directive.css
@@ -0,0 +1,3 @@
+bar {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/421-test_weird_added_space.css b/theme-compiler/tests/resources/sasslang/css/421-test_weird_added_space.css
new file mode 100644
index 0000000000..1f53f9af54
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/421-test_weird_added_space.css
@@ -0,0 +1,3 @@
+foo {
+ bar: -moz-bip;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/422-test_while_directive.css b/theme-compiler/tests/resources/sasslang/css/422-test_while_directive.css
new file mode 100644
index 0000000000..1de8f29fb6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/422-test_while_directive.css
@@ -0,0 +1,6 @@
+.foo {
+ a: 1;
+ a: 2;
+ a: 3;
+ a: 4;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/43-test_extend_with_subject_transfers_subject_to_target.css b/theme-compiler/tests/resources/sasslang/css/43-test_extend_with_subject_transfers_subject_to_target.css
new file mode 100644
index 0000000000..fb6d2bd6f1
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/43-test_extend_with_subject_transfers_subject_to_target.css
@@ -0,0 +1,3 @@
+a.foo .bar, .bip a.bap! .bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/44-test_extend_within_and_without_media.css b/theme-compiler/tests/resources/sasslang/css/44-test_extend_within_and_without_media.css
new file mode 100644
index 0000000000..b998a711ab
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/44-test_extend_within_and_without_media.css
@@ -0,0 +1,9 @@
+.foo {
+ a: b;
+}
+
+@media screen {
+ .foo, .bar {
+ c: d;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/45-test_extend_within_and_without_nested_directives.css b/theme-compiler/tests/resources/sasslang/css/45-test_extend_within_and_without_nested_directives.css
new file mode 100644
index 0000000000..b4fc7986bd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/45-test_extend_within_and_without_nested_directives.css
@@ -0,0 +1,11 @@
+@media screen {
+ .foo {
+ a: b;
+ }
+
+ @flooblehoof {
+ .foo, .bar {
+ c: d;
+ }
+}
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/46-test_extend_within_and_without_unknown_directive.css b/theme-compiler/tests/resources/sasslang/css/46-test_extend_within_and_without_unknown_directive.css
new file mode 100644
index 0000000000..98d2611aae
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/46-test_extend_within_and_without_unknown_directive.css
@@ -0,0 +1,9 @@
+.foo {
+ a: b;
+}
+
+@flooblehoof {
+ .foo, .bar {
+ c: d;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/47-test_extend_within_disparate_media.css b/theme-compiler/tests/resources/sasslang/css/47-test_extend_within_disparate_media.css
new file mode 100644
index 0000000000..4859d7f8db
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/47-test_extend_within_disparate_media.css
@@ -0,0 +1,5 @@
+@media screen {
+ .foo, .bar {
+ a: b;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/48-test_extend_within_disparate_nested_directives.css b/theme-compiler/tests/resources/sasslang/css/48-test_extend_within_disparate_nested_directives.css
new file mode 100644
index 0000000000..c86be425ef
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/48-test_extend_within_disparate_nested_directives.css
@@ -0,0 +1,10 @@
+@media screen {
+ @flooblehoof {
+ .foo, .bar {
+ a: b;
+ }
+}
+}
+@media screen {
+ @flooblehoof {}
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/49-test_extend_within_disparate_unknown_directive.css b/theme-compiler/tests/resources/sasslang/css/49-test_extend_within_disparate_unknown_directive.css
new file mode 100644
index 0000000000..0fa146ad7c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/49-test_extend_within_disparate_unknown_directive.css
@@ -0,0 +1,7 @@
+@flooblehoof {
+ .foo, .bar {
+ a: b;
+ }
+}
+
+@flooblehoof {}
diff --git a/theme-compiler/tests/resources/sasslang/css/5-test_chained_extends.css b/theme-compiler/tests/resources/sasslang/css/5-test_chained_extends.css
new file mode 100644
index 0000000000..cc2d11c42e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/5-test_chained_extends.css
@@ -0,0 +1,3 @@
+.foo, .bar, .baz, .bip {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/50-test_extend_within_media.css b/theme-compiler/tests/resources/sasslang/css/50-test_extend_within_media.css
new file mode 100644
index 0000000000..4859d7f8db
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/50-test_extend_within_media.css
@@ -0,0 +1,5 @@
+@media screen {
+ .foo, .bar {
+ a: b;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/51-test_extend_within_nested_directives.css b/theme-compiler/tests/resources/sasslang/css/51-test_extend_within_nested_directives.css
new file mode 100644
index 0000000000..bca0b78c32
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/51-test_extend_within_nested_directives.css
@@ -0,0 +1,7 @@
+@media screen {
+ @flooblehoof {
+ .foo, .bar {
+ a: b;
+ }
+}
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/52-test_extend_within_unknown_directive.css b/theme-compiler/tests/resources/sasslang/css/52-test_extend_within_unknown_directive.css
new file mode 100644
index 0000000000..49ed91dd90
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/52-test_extend_within_unknown_directive.css
@@ -0,0 +1,5 @@
+@flooblehoof {
+ .foo, .bar {
+ a: b;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/53-test_extended_parent_and_child_redundancy_elimination.css b/theme-compiler/tests/resources/sasslang/css/53-test_extended_parent_and_child_redundancy_elimination.css
new file mode 100644
index 0000000000..bbff77d84c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/53-test_extended_parent_and_child_redundancy_elimination.css
@@ -0,0 +1,3 @@
+a b, d b, a c, d c {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/54-test_id_unification.css b/theme-compiler/tests/resources/sasslang/css/54-test_id_unification.css
new file mode 100644
index 0000000000..fb22aea30a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/54-test_id_unification.css
@@ -0,0 +1,3 @@
+-a .foo.bar, -a .bar#baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/55-test_long_extendee.css b/theme-compiler/tests/resources/sasslang/css/55-test_long_extendee.css
new file mode 100644
index 0000000000..0d6bd2ec98
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/55-test_long_extendee.css
@@ -0,0 +1,3 @@
+.foo.bar, .baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/56-test_long_extendee_matches_supersets.css b/theme-compiler/tests/resources/sasslang/css/56-test_long_extendee_matches_supersets.css
new file mode 100644
index 0000000000..56d65aa266
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/56-test_long_extendee_matches_supersets.css
@@ -0,0 +1,3 @@
+.foo.bar.bap, .bap.baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/57-test_long_extendee_requires_all_selectors.css b/theme-compiler/tests/resources/sasslang/css/57-test_long_extendee_requires_all_selectors.css
new file mode 100644
index 0000000000..234d524066
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/57-test_long_extendee_requires_all_selectors.css
@@ -0,0 +1,3 @@
+.foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/58-test_long_extendee_runs_unification.css b/theme-compiler/tests/resources/sasslang/css/58-test_long_extendee_runs_unification.css
new file mode 100644
index 0000000000..79f0b904ec
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/58-test_long_extendee_runs_unification.css
@@ -0,0 +1,3 @@
+ns|*.foo.bar, ns|a.baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/59-test_long_extender.css b/theme-compiler/tests/resources/sasslang/css/59-test_long_extender.css
new file mode 100644
index 0000000000..410daf4682
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/59-test_long_extender.css
@@ -0,0 +1,3 @@
+.foo.bar, .bar.baz.bang {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/6-test_class_unification.css b/theme-compiler/tests/resources/sasslang/css/6-test_class_unification.css
new file mode 100644
index 0000000000..d5ea698c0e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/6-test_class_unification.css
@@ -0,0 +1,3 @@
+-a .foo.bar, -a .bar.baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/60-test_long_extender_aborts_unification.css b/theme-compiler/tests/resources/sasslang/css/60-test_long_extender_aborts_unification.css
new file mode 100644
index 0000000000..18bc24e7cd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/60-test_long_extender_aborts_unification.css
@@ -0,0 +1,3 @@
+a.foo#bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/61-test_long_extender_runs_unification.css b/theme-compiler/tests/resources/sasslang/css/61-test_long_extender_runs_unification.css
new file mode 100644
index 0000000000..9aa28bb9e0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/61-test_long_extender_runs_unification.css
@@ -0,0 +1,3 @@
+ns|*.foo.bar, ns|a.bar.baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/62-test_media_in_placeholder_selector.css b/theme-compiler/tests/resources/sasslang/css/62-test_media_in_placeholder_selector.css
new file mode 100644
index 0000000000..05e9307986
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/62-test_media_in_placeholder_selector.css
@@ -0,0 +1,3 @@
+.baz {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/63-test_multiple_extendees.css b/theme-compiler/tests/resources/sasslang/css/63-test_multiple_extendees.css
new file mode 100644
index 0000000000..d3fae7600f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/63-test_multiple_extendees.css
@@ -0,0 +1,7 @@
+.foo, .baz {
+ a: b;
+}
+
+.bar, .baz {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/64-test_multiple_extender_merges_with_superset_selector.css b/theme-compiler/tests/resources/sasslang/css/64-test_multiple_extender_merges_with_superset_selector.css
new file mode 100644
index 0000000000..e52ae8e7f2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/64-test_multiple_extender_merges_with_superset_selector.css
@@ -0,0 +1,3 @@
+a.bar.baz, a.foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/65-test_multiple_extends_with_multiple_extenders_and_single_target.css b/theme-compiler/tests/resources/sasslang/css/65-test_multiple_extends_with_multiple_extenders_and_single_target.css
new file mode 100644
index 0000000000..44196e6602
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/65-test_multiple_extends_with_multiple_extenders_and_single_target.css
@@ -0,0 +1,3 @@
+.foo .bar, .baz .bar, .foo .bang, .baz .bang {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/66-test_multiple_extends_with_single_extender_and_single_target.css b/theme-compiler/tests/resources/sasslang/css/66-test_multiple_extends_with_single_extender_and_single_target.css
new file mode 100644
index 0000000000..9b5770d7c5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/66-test_multiple_extends_with_single_extender_and_single_target.css
@@ -0,0 +1,3 @@
+.foo .bar, .baz .bar, .foo .baz, .baz .baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/67-test_multiple_targets.css b/theme-compiler/tests/resources/sasslang/css/67-test_multiple_targets.css
new file mode 100644
index 0000000000..779bd00f75
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/67-test_multiple_targets.css
@@ -0,0 +1,7 @@
+.foo, .bar {
+ a: b;
+}
+
+.blip .foo, .blip .bar {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/68-test_negation_unification.css b/theme-compiler/tests/resources/sasslang/css/68-test_negation_unification.css
new file mode 100644
index 0000000000..81d4d500e0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/68-test_negation_unification.css
@@ -0,0 +1,3 @@
+-a :not(.foo).baz, -a :not(.foo):not(.bar) {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/69-test_nested_extend_loop.css b/theme-compiler/tests/resources/sasslang/css/69-test_nested_extend_loop.css
new file mode 100644
index 0000000000..09d0b12541
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/69-test_nested_extend_loop.css
@@ -0,0 +1,6 @@
+.bar, .bar .foo {
+ a: b;
+}
+.bar .foo {
+ c: d;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/7-test_combinator_unification_angle_sibling.css b/theme-compiler/tests/resources/sasslang/css/7-test_combinator_unification_angle_sibling.css
new file mode 100644
index 0000000000..657d1ec2f6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/7-test_combinator_unification_angle_sibling.css
@@ -0,0 +1,3 @@
+.a > x, .a > .b ~ y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/70-test_nested_extender.css b/theme-compiler/tests/resources/sasslang/css/70-test_nested_extender.css
new file mode 100644
index 0000000000..1c4e604b71
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/70-test_nested_extender.css
@@ -0,0 +1,3 @@
+.foo, foo bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/71-test_nested_extender_aborts_unification.css b/theme-compiler/tests/resources/sasslang/css/71-test_nested_extender_aborts_unification.css
new file mode 100644
index 0000000000..2337e9af40
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/71-test_nested_extender_aborts_unification.css
@@ -0,0 +1,3 @@
+baz.foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/72-test_nested_extender_alternates_parents.css b/theme-compiler/tests/resources/sasslang/css/72-test_nested_extender_alternates_parents.css
new file mode 100644
index 0000000000..ab567bcadf
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/72-test_nested_extender_alternates_parents.css
@@ -0,0 +1,3 @@
+.baz .bip .foo, .baz .bip foo .grank bar, foo .grank .baz .bip bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/73-test_nested_extender_chooses_first_subseq.css b/theme-compiler/tests/resources/sasslang/css/73-test_nested_extender_chooses_first_subseq.css
new file mode 100644
index 0000000000..08a07c34b6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/73-test_nested_extender_chooses_first_subseq.css
@@ -0,0 +1,3 @@
+.a .b .c .d .foo, .a .b .c .d .a .b .bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/74-test_nested_extender_counts_extended_subselectors.css b/theme-compiler/tests/resources/sasslang/css/74-test_nested_extender_counts_extended_subselectors.css
new file mode 100644
index 0000000000..54a621a541
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/74-test_nested_extender_counts_extended_subselectors.css
@@ -0,0 +1,3 @@
+.a .bip.bop .foo, .a .b .bip.bop .bar, .b .a .bip.bop .bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/75-test_nested_extender_counts_extended_superselectors.css b/theme-compiler/tests/resources/sasslang/css/75-test_nested_extender_counts_extended_superselectors.css
new file mode 100644
index 0000000000..f87e17f088
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/75-test_nested_extender_counts_extended_superselectors.css
@@ -0,0 +1,3 @@
+.a .bip .foo, .a .b .bip.bop .bar, .b .a .bip.bop .bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/76-test_nested_extender_doesnt_find_common_selectors_around_adjacent_sibling_selector.css b/theme-compiler/tests/resources/sasslang/css/76-test_nested_extender_doesnt_find_common_selectors_around_adjacent_sibling_selector.css
new file mode 100644
index 0000000000..0b1ccdb14b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/76-test_nested_extender_doesnt_find_common_selectors_around_adjacent_sibling_selector.css
@@ -0,0 +1,3 @@
+a + b c .c1, a + b a c .c2, a a + b c .c2 {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/77-test_nested_extender_doesnt_find_common_selectors_around_reference_selector.css b/theme-compiler/tests/resources/sasslang/css/77-test_nested_extender_doesnt_find_common_selectors_around_reference_selector.css
new file mode 100644
index 0000000000..b994ae4480
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/77-test_nested_extender_doesnt_find_common_selectors_around_reference_selector.css
@@ -0,0 +1,3 @@
+a /for/ b c .c1, a /for/ b a c .c2, a a /for/ b c .c2 {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/78-test_nested_extender_doesnt_find_common_selectors_around_sibling_selector.css b/theme-compiler/tests/resources/sasslang/css/78-test_nested_extender_doesnt_find_common_selectors_around_sibling_selector.css
new file mode 100644
index 0000000000..19ad09e516
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/78-test_nested_extender_doesnt_find_common_selectors_around_sibling_selector.css
@@ -0,0 +1,3 @@
+a ~ b c .c1, a ~ b a c .c2, a a ~ b c .c2 {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/79-test_nested_extender_finds_common_selectors_around_child_selector.css b/theme-compiler/tests/resources/sasslang/css/79-test_nested_extender_finds_common_selectors_around_child_selector.css
new file mode 100644
index 0000000000..f6142a5fc3
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/79-test_nested_extender_finds_common_selectors_around_child_selector.css
@@ -0,0 +1,3 @@
+a > b c .c1, a > b c .c2 {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/8-test_combinator_unification_angle_space.css b/theme-compiler/tests/resources/sasslang/css/8-test_combinator_unification_angle_space.css
new file mode 100644
index 0000000000..c85d1df73a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/8-test_combinator_unification_angle_space.css
@@ -0,0 +1,3 @@
+.a.b > x, .a.b > y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/80-test_nested_extender_merges_with_same_selector.css b/theme-compiler/tests/resources/sasslang/css/80-test_nested_extender_merges_with_same_selector.css
new file mode 100644
index 0000000000..d1a50d50e3
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/80-test_nested_extender_merges_with_same_selector.css
@@ -0,0 +1,3 @@
+.foo .bar, .foo .baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/81-test_nested_extender_runs_unification.css b/theme-compiler/tests/resources/sasslang/css/81-test_nested_extender_runs_unification.css
new file mode 100644
index 0000000000..9aa8d14958
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/81-test_nested_extender_runs_unification.css
@@ -0,0 +1,3 @@
+.foo.bar, foo bar.bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/82-test_nested_extender_unifies_common_subseq.css b/theme-compiler/tests/resources/sasslang/css/82-test_nested_extender_unifies_common_subseq.css
new file mode 100644
index 0000000000..2161e02144
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/82-test_nested_extender_unifies_common_subseq.css
@@ -0,0 +1,3 @@
+.a .x .b .y .foo, .a .x .n .b .y .m bar, .a .n .x .b .y .m bar, .a .x .n .b .m .y bar, .a .n .x .b .m .y bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/83-test_nested_extender_unifies_common_substring.css b/theme-compiler/tests/resources/sasslang/css/83-test_nested_extender_unifies_common_substring.css
new file mode 100644
index 0000000000..d11fb34cbc
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/83-test_nested_extender_unifies_common_substring.css
@@ -0,0 +1,3 @@
+.baz .bip .bap .bink .foo, .baz .brat .bip .bap .bink bar, .brat .baz .bip .bap .bink bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/84-test_nested_extender_unifies_identical_parents.css b/theme-compiler/tests/resources/sasslang/css/84-test_nested_extender_unifies_identical_parents.css
new file mode 100644
index 0000000000..8792a32601
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/84-test_nested_extender_unifies_identical_parents.css
@@ -0,0 +1,3 @@
+.baz .bip .foo, .baz .bip bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/85-test_nested_extender_with_child_selector.css b/theme-compiler/tests/resources/sasslang/css/85-test_nested_extender_with_child_selector.css
new file mode 100644
index 0000000000..f7bd620245
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/85-test_nested_extender_with_child_selector.css
@@ -0,0 +1,3 @@
+.baz .foo, .baz foo > bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/86-test_nested_extender_with_child_selector_merges_with_same_selector.css b/theme-compiler/tests/resources/sasslang/css/86-test_nested_extender_with_child_selector_merges_with_same_selector.css
new file mode 100644
index 0000000000..75561708b3
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/86-test_nested_extender_with_child_selector_merges_with_same_selector.css
@@ -0,0 +1,3 @@
+.foo > .bar .baz, .foo > .bar .bang {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/87-test_nested_extender_with_child_selector_unifies.css b/theme-compiler/tests/resources/sasslang/css/87-test_nested_extender_with_child_selector_unifies.css
new file mode 100644
index 0000000000..81681200d0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/87-test_nested_extender_with_child_selector_unifies.css
@@ -0,0 +1,3 @@
+.baz.foo, foo > bar.baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.css b/theme-compiler/tests/resources/sasslang/css/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.css
new file mode 100644
index 0000000000..4285daf8dd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.css
@@ -0,0 +1,3 @@
+.foo .bar, .foo .bip > .baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/89-test_nested_extender_with_hacky_selector.css b/theme-compiler/tests/resources/sasslang/css/89-test_nested_extender_with_hacky_selector.css
new file mode 100644
index 0000000000..8473c6a398
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/89-test_nested_extender_with_hacky_selector.css
@@ -0,0 +1,3 @@
+.baz .foo, .baz foo + > > + bar, foo .baz + > > + bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/9-test_combinator_unification_double_angle.css b/theme-compiler/tests/resources/sasslang/css/9-test_combinator_unification_double_angle.css
new file mode 100644
index 0000000000..cafe6d3860
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/9-test_combinator_unification_double_angle.css
@@ -0,0 +1,3 @@
+.a.b > x, .b.a > y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/90-test_nested_extender_with_sibling_selector.css b/theme-compiler/tests/resources/sasslang/css/90-test_nested_extender_with_sibling_selector.css
new file mode 100644
index 0000000000..e9fe832391
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/90-test_nested_extender_with_sibling_selector.css
@@ -0,0 +1,3 @@
+.baz .foo, .baz foo + bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/91-test_nested_selector_with_child_selector_hack_extendee.css b/theme-compiler/tests/resources/sasslang/css/91-test_nested_selector_with_child_selector_hack_extendee.css
new file mode 100644
index 0000000000..5556837892
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/91-test_nested_selector_with_child_selector_hack_extendee.css
@@ -0,0 +1,3 @@
+> .foo, > foo bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/92-test_nested_selector_with_child_selector_hack_extender.css b/theme-compiler/tests/resources/sasslang/css/92-test_nested_selector_with_child_selector_hack_extender.css
new file mode 100644
index 0000000000..f4722e330d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/92-test_nested_selector_with_child_selector_hack_extender.css
@@ -0,0 +1,3 @@
+.foo .bar, > .foo foo bar, > foo .foo bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/93-test_nested_selector_with_child_selector_hack_extender_and_extendee.css b/theme-compiler/tests/resources/sasslang/css/93-test_nested_selector_with_child_selector_hack_extender_and_extendee.css
new file mode 100644
index 0000000000..5556837892
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/93-test_nested_selector_with_child_selector_hack_extender_and_extendee.css
@@ -0,0 +1,3 @@
+> .foo, > foo bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/94-test_nested_selector_with_child_selector_hack_extender_and_extendee_and_newline.css b/theme-compiler/tests/resources/sasslang/css/94-test_nested_selector_with_child_selector_hack_extender_and_extendee_and_newline.css
new file mode 100644
index 0000000000..d8d4aa39fa
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/94-test_nested_selector_with_child_selector_hack_extender_and_extendee_and_newline.css
@@ -0,0 +1,4 @@
+> .foo, > flip,
+> foo bar {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.css b/theme-compiler/tests/resources/sasslang/css/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.css
new file mode 100644
index 0000000000..09b4ccac27
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.css
@@ -0,0 +1,3 @@
+~ .foo {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/96-test_nested_target.css b/theme-compiler/tests/resources/sasslang/css/96-test_nested_target.css
new file mode 100644
index 0000000000..d1a50d50e3
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/96-test_nested_target.css
@@ -0,0 +1,3 @@
+.foo .bar, .foo .baz {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/97-test_newline_near_combinator.css b/theme-compiler/tests/resources/sasslang/css/97-test_newline_near_combinator.css
new file mode 100644
index 0000000000..8ed7a9aa7c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/97-test_newline_near_combinator.css
@@ -0,0 +1,6 @@
+.a +
+.b x, .a +
+.b .c y, .c .a +
+.b y {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/98-test_not_remains_at_end_of_selector.css b/theme-compiler/tests/resources/sasslang/css/98-test_not_remains_at_end_of_selector.css
new file mode 100644
index 0000000000..540e6f8bf4
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/98-test_not_remains_at_end_of_selector.css
@@ -0,0 +1,3 @@
+.foo:not(.bar), .baz:not(.bar) {
+ a: b;
+}
diff --git a/theme-compiler/tests/resources/sasslang/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css b/theme-compiler/tests/resources/sasslang/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css
new file mode 100644
index 0000000000..8b13789179
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css
@@ -0,0 +1 @@
+
diff --git a/theme-compiler/tests/resources/sasslang/scss/1-test_attribute_unification.scss b/theme-compiler/tests/resources/sasslang/scss/1-test_attribute_unification.scss
new file mode 100644
index 0000000000..33c77486b3
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/1-test_attribute_unification.scss
@@ -0,0 +1,2 @@
+%-a [foo=bar].baz {a: b}
+[foo=baz] {@extend .baz} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/10-test_combinator_unification_double_plus.scss b/theme-compiler/tests/resources/sasslang/scss/10-test_combinator_unification_double_plus.scss
new file mode 100644
index 0000000000..66aa84db77
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/10-test_combinator_unification_double_plus.scss
@@ -0,0 +1,2 @@
+.a.b + x {a: b}
+.b + y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss b/theme-compiler/tests/resources/sasslang/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss
new file mode 100644
index 0000000000..6d707236f2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss
@@ -0,0 +1,2 @@
+a.bar {a: b}
+b.foo {@extend .bar !optional}
diff --git a/theme-compiler/tests/resources/sasslang/scss/101-test_placeholder_descendant_selector.scss b/theme-compiler/tests/resources/sasslang/scss/101-test_placeholder_descendant_selector.scss
new file mode 100644
index 0000000000..32c4bbd164
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/101-test_placeholder_descendant_selector.scss
@@ -0,0 +1,2 @@
+#context %foo a {a: b}
+.bar {@extend %foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/102-test_placeholder_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/102-test_placeholder_interpolation.scss
new file mode 100644
index 0000000000..cbf572e4bb
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/102-test_placeholder_interpolation.scss
@@ -0,0 +1,4 @@
+$foo: foo;
+
+%#{$foo} {color: blue}
+.bar {@extend %foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/103-test_placeholder_selector_as_modifier.scss b/theme-compiler/tests/resources/sasslang/scss/103-test_placeholder_selector_as_modifier.scss
new file mode 100644
index 0000000000..16efb9ecdf
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/103-test_placeholder_selector_as_modifier.scss
@@ -0,0 +1,3 @@
+a%foo.baz {color: blue}
+.bar {@extend %foo}
+div {@extend %foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/104-test_placeholder_selector_with_multiple_extenders.scss b/theme-compiler/tests/resources/sasslang/scss/104-test_placeholder_selector_with_multiple_extenders.scss
new file mode 100644
index 0000000000..16c35af632
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/104-test_placeholder_selector_with_multiple_extenders.scss
@@ -0,0 +1,3 @@
+%foo {color: blue}
+.bar {@extend %foo}
+.baz {@extend %foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/105-test_pseudo_unification.scss b/theme-compiler/tests/resources/sasslang/scss/105-test_pseudo_unification.scss
new file mode 100644
index 0000000000..b14b24b026
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/105-test_pseudo_unification.scss
@@ -0,0 +1,2 @@
+%-a :foo.baz {a: b}
+:foo(2n+1) {@extend .baz} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/106-test_pseudoclass_remains_at_end_of_selector.scss b/theme-compiler/tests/resources/sasslang/scss/106-test_pseudoclass_remains_at_end_of_selector.scss
new file mode 100644
index 0000000000..619bbb51cd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/106-test_pseudoclass_remains_at_end_of_selector.scss
@@ -0,0 +1,2 @@
+.foo:bar {a: b}
+.baz {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/107-test_pseudoelement_goes_lefter_than_not.scss b/theme-compiler/tests/resources/sasslang/scss/107-test_pseudoelement_goes_lefter_than_not.scss
new file mode 100644
index 0000000000..f50ad04b12
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/107-test_pseudoelement_goes_lefter_than_not.scss
@@ -0,0 +1,2 @@
+.foo::bar {a: b}
+.baz:not(.bang) {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/108-test_pseudoelement_goes_lefter_than_pseudoclass.scss b/theme-compiler/tests/resources/sasslang/scss/108-test_pseudoelement_goes_lefter_than_pseudoclass.scss
new file mode 100644
index 0000000000..230f925a10
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/108-test_pseudoelement_goes_lefter_than_pseudoclass.scss
@@ -0,0 +1,2 @@
+.foo::bar {a: b}
+.baz:bang {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/109-test_pseudoelement_remains_at_end_of_selector.scss b/theme-compiler/tests/resources/sasslang/scss/109-test_pseudoelement_remains_at_end_of_selector.scss
new file mode 100644
index 0000000000..cd588ed24a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/109-test_pseudoelement_remains_at_end_of_selector.scss
@@ -0,0 +1,2 @@
+.foo::bar {a: b}
+.baz {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/11-test_combinator_unification_double_tilde.scss b/theme-compiler/tests/resources/sasslang/scss/11-test_combinator_unification_double_tilde.scss
new file mode 100644
index 0000000000..6f5c90d1e2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/11-test_combinator_unification_double_tilde.scss
@@ -0,0 +1,2 @@
+.a.b ~ x {a: b}
+.a ~ y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/110-test_redundant_selector_elimination.scss b/theme-compiler/tests/resources/sasslang/scss/110-test_redundant_selector_elimination.scss
new file mode 100644
index 0000000000..ab8ba4845f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/110-test_redundant_selector_elimination.scss
@@ -0,0 +1,3 @@
+.foo.bar {a: b}
+.x {@extend .foo, .bar}
+.y {@extend .foo, .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/111-test_semi_placeholder_selector.scss b/theme-compiler/tests/resources/sasslang/scss/111-test_semi_placeholder_selector.scss
new file mode 100644
index 0000000000..ee864ae54d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/111-test_semi_placeholder_selector.scss
@@ -0,0 +1 @@
+#context %foo, .bar .baz {color: blue}
diff --git a/theme-compiler/tests/resources/sasslang/scss/112-test_target_with_child.scss b/theme-compiler/tests/resources/sasslang/scss/112-test_target_with_child.scss
new file mode 100644
index 0000000000..3748f64233
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/112-test_target_with_child.scss
@@ -0,0 +1,2 @@
+.foo .bar {a: b}
+.baz {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/113-test_three_level_extend_loop.scss b/theme-compiler/tests/resources/sasslang/scss/113-test_three_level_extend_loop.scss
new file mode 100644
index 0000000000..b3905b57d2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/113-test_three_level_extend_loop.scss
@@ -0,0 +1,3 @@
+.foo {a: b; @extend .bar}
+.bar {c: d; @extend .baz}
+.baz {e: f; @extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/114-test_universal_unification_with_namespaced_element_target.scss b/theme-compiler/tests/resources/sasslang/scss/114-test_universal_unification_with_namespaced_element_target.scss
new file mode 100644
index 0000000000..5863cb2bb9
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/114-test_universal_unification_with_namespaced_element_target.scss
@@ -0,0 +1,2 @@
+%-a ns|a.foo {a: b}
+* {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/115-test_universal_unification_with_namespaced_universal_target.scss b/theme-compiler/tests/resources/sasslang/scss/115-test_universal_unification_with_namespaced_universal_target.scss
new file mode 100644
index 0000000000..bb8cb04933
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/115-test_universal_unification_with_namespaced_universal_target.scss
@@ -0,0 +1,2 @@
+%-a ns|*.foo {a: b}
+* {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/116-test_universal_unification_with_namespaceless_element_target.scss b/theme-compiler/tests/resources/sasslang/scss/116-test_universal_unification_with_namespaceless_element_target.scss
new file mode 100644
index 0000000000..f0da6e39a5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/116-test_universal_unification_with_namespaceless_element_target.scss
@@ -0,0 +1,2 @@
+%-a a.foo {a: b}
+* {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/117-test_universal_unification_with_namespaceless_universal_target.scss b/theme-compiler/tests/resources/sasslang/scss/117-test_universal_unification_with_namespaceless_universal_target.scss
new file mode 100644
index 0000000000..cf7771152d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/117-test_universal_unification_with_namespaceless_universal_target.scss
@@ -0,0 +1,2 @@
+%-a *.foo {a: b}
+* {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/118-test_universal_unification_with_simple_target.scss b/theme-compiler/tests/resources/sasslang/scss/118-test_universal_unification_with_simple_target.scss
new file mode 100644
index 0000000000..1aa11eff9b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/118-test_universal_unification_with_simple_target.scss
@@ -0,0 +1,2 @@
+%-a .foo {a: b}
+* {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/119-test_unused_placeholder_selector.scss b/theme-compiler/tests/resources/sasslang/scss/119-test_unused_placeholder_selector.scss
new file mode 100644
index 0000000000..5b7b5b95dd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/119-test_unused_placeholder_selector.scss
@@ -0,0 +1,3 @@
+%foo {color: blue}
+%bar {color: red}
+.baz {@extend %foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/12-test_combinator_unification_for_hacky_combinators.scss b/theme-compiler/tests/resources/sasslang/scss/12-test_combinator_unification_for_hacky_combinators.scss
new file mode 100644
index 0000000000..3059f3e5b4
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/12-test_combinator_unification_for_hacky_combinators.scss
@@ -0,0 +1,2 @@
+.a > + x {a: b}
+.b y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/120-test_can_resolve_generated_imports.scss b/theme-compiler/tests/resources/sasslang/scss/120-test_can_resolve_generated_imports.scss
new file mode 100644
index 0000000000..0ec4e0eac0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/120-test_can_resolve_generated_imports.scss
@@ -0,0 +1,7 @@
+
+ $pear-color: green;
+ @import "fruits/apple"; @import "fruits/orange"; @import "fruits/pear";
+ .apple { @include apple; }
+ .orange { @include orange; }
+ .pear { @include pear; }
+
diff --git a/theme-compiler/tests/resources/sasslang/scss/121-test_extension_overrides.scss b/theme-compiler/tests/resources/sasslang/scss/121-test_extension_overrides.scss
new file mode 100644
index 0000000000..20708486db
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/121-test_extension_overrides.scss
@@ -0,0 +1,4 @@
+
+ @import "foo", "bar";
+ @import "foo.ssas", "bar.sscs";
+
diff --git a/theme-compiler/tests/resources/sasslang/scss/122-test_staleness_check_across_importers.scss b/theme-compiler/tests/resources/sasslang/scss/122-test_staleness_check_across_importers.scss
new file mode 100644
index 0000000000..1468ac9362
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/122-test_staleness_check_across_importers.scss
@@ -0,0 +1 @@
+@import "apple";
diff --git a/theme-compiler/tests/resources/sasslang/scss/123-compile_file.scss b/theme-compiler/tests/resources/sasslang/scss/123-compile_file.scss
new file mode 100644
index 0000000000..77fb6bcbb5
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/123-compile_file.scss
@@ -0,0 +1 @@
+$who: world; div { hello: $who }
diff --git a/theme-compiler/tests/resources/sasslang/scss/124-test_multibyte_and_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/124-test_multibyte_and_interpolation.scss
new file mode 100644
index 0000000000..756aedd806
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/124-test_multibyte_and_interpolation.scss
@@ -0,0 +1,4 @@
+#bar {
+ // 
+ background: #{a} 0%;
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/125-test_original_filename_set.scss b/theme-compiler/tests/resources/sasslang/scss/125-test_original_filename_set.scss
new file mode 100644
index 0000000000..30d082666a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/125-test_original_filename_set.scss
@@ -0,0 +1 @@
+@import "imported"; div{color:blue}
diff --git a/theme-compiler/tests/resources/sasslang/scss/126-test_selector_tracing.scss b/theme-compiler/tests/resources/sasslang/scss/126-test_selector_tracing.scss
new file mode 100644
index 0000000000..89c077c199
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/126-test_selector_tracing.scss
@@ -0,0 +1,6 @@
+ @mixin mixed {
+ .mixed { color: red; }
+ }
+ .context {
+ @include mixed;
+ }
diff --git a/theme-compiler/tests/resources/sasslang/scss/127-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/127-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/127-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/128-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/128-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/128-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/129-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/129-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/129-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/13-test_combinator_unification_nested.scss b/theme-compiler/tests/resources/sasslang/scss/13-test_combinator_unification_nested.scss
new file mode 100644
index 0000000000..9df5ebcb23
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/13-test_combinator_unification_nested.scss
@@ -0,0 +1,2 @@
+.a > .b + x {a: b}
+.c > .d + y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/130-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/130-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/130-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/131-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/131-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/131-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/132-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/132-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/132-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/133-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/133-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/133-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/134-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/134-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/134-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/135-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/135-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/135-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/136-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/136-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/136-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/137-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/137-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/137-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/138-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/138-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/138-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/139-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/139-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/139-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/14-test_combinator_unification_plus_space.scss b/theme-compiler/tests/resources/sasslang/scss/14-test_combinator_unification_plus_space.scss
new file mode 100644
index 0000000000..9cfa958289
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/14-test_combinator_unification_plus_space.scss
@@ -0,0 +1,2 @@
+.a.b + x {a: b}
+.a y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/140-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/140-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/140-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/141-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/141-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/141-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/142-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/142-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/142-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/143-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/143-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/143-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/144-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/144-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/144-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/145-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/145-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/145-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/146-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/146-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/146-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/147-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/147-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/147-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/148-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/148-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/148-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/149-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/149-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/149-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/15-test_combinator_unification_tilde_plus.scss b/theme-compiler/tests/resources/sasslang/scss/15-test_combinator_unification_tilde_plus.scss
new file mode 100644
index 0000000000..c2dae3d6fc
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/15-test_combinator_unification_tilde_plus.scss
@@ -0,0 +1,2 @@
+.a.b + x {a: b}
+.a ~ y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/150-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/150-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/150-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/151-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/151-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/151-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/152-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/152-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/152-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/153-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/153-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/153-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/154-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/154-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/154-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/155-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/155-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/155-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/156-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/156-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/156-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/157-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/157-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/157-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/158-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/158-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/158-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/159-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/159-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/159-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/16-test_combinator_unification_with_newlines.scss b/theme-compiler/tests/resources/sasslang/scss/16-test_combinator_unification_with_newlines.scss
new file mode 100644
index 0000000000..e59198064e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/16-test_combinator_unification_with_newlines.scss
@@ -0,0 +1,6 @@
+.a >
+.b
++ x {a: b}
+.c
+> .d +
+y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/160-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/160-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/160-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/161-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/161-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/161-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/162-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/162-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/162-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/163-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/163-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/163-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/164-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/164-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/164-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/165-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/165-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/165-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/166-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/166-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/166-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/167-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/167-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/167-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/168-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/168-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/168-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/169-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/169-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/169-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/17-test_comma_extendee.scss b/theme-compiler/tests/resources/sasslang/scss/17-test_comma_extendee.scss
new file mode 100644
index 0000000000..ea96c2ba65
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/17-test_comma_extendee.scss
@@ -0,0 +1,3 @@
+.foo {a: b}
+.bar {c: d}
+.baz {@extend .foo, .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/170-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/170-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/170-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/171-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/171-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/171-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/172-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/172-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/172-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/173-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/173-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/173-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/174-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/174-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/174-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/175-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/175-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/175-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/176-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/176-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/176-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/177-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/177-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/177-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/178-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/178-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/178-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/179-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/179-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/179-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/18-test_control_flow_for.scss b/theme-compiler/tests/resources/sasslang/scss/18-test_control_flow_for.scss
new file mode 100644
index 0000000000..8e08e5ad05
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/18-test_control_flow_for.scss
@@ -0,0 +1,8 @@
+.base-0 { color: green; }
+.base-1 { display: block; }
+.base-2 { border: 1px solid blue; }
+.added {
+ @for $i from 0 to 3 {
+ @extend .base-#{$i};
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/180-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/180-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/180-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/181-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/181-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/181-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/182-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/182-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/182-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/183-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/183-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/183-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/184-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/184-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/184-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/185-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/185-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/185-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/186-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/186-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/186-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/187-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/187-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/187-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/188-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/188-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/188-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/189-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/189-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/189-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/19-test_control_flow_if.scss b/theme-compiler/tests/resources/sasslang/scss/19-test_control_flow_if.scss
new file mode 100644
index 0000000000..be53e52341
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/19-test_control_flow_if.scss
@@ -0,0 +1,10 @@
+.true { color: green; }
+.false { color: red; }
+.also-true {
+ @if true { @extend .true; }
+ @else { @extend .false; }
+}
+.also-false {
+ @if false { @extend .true; }
+ @else { @extend .false; }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/190-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/190-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/190-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/191-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/191-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/191-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/192-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/192-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/192-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/193-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/193-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/193-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/194-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/194-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/194-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/195-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/195-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/195-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/196-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/196-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/196-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/197-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/197-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/197-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/198-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/198-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/198-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/199-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/199-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/199-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/2-test_basic.scss b/theme-compiler/tests/resources/sasslang/scss/2-test_basic.scss
new file mode 100644
index 0000000000..9f3cde0011
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/2-test_basic.scss
@@ -0,0 +1,2 @@
+.foo {a: b}
+.bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/20-test_control_flow_while.scss b/theme-compiler/tests/resources/sasslang/scss/20-test_control_flow_while.scss
new file mode 100644
index 0000000000..8aa2616638
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/20-test_control_flow_while.scss
@@ -0,0 +1,10 @@
+.base-0 { color: green; }
+.base-1 { display: block; }
+.base-2 { border: 1px solid blue; }
+.added {
+ $i : 0;
+ @while $i < 3 {
+ @extend .base-#{$i};
+ $i : $i + 1;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/200-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/200-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/200-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/201-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/201-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/201-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/202-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/202-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/202-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/203-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/203-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/203-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/204-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/204-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/204-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/205-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/205-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/205-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/206-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/206-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/206-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/207-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/207-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/207-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/208-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/208-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/208-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/209-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/209-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/209-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/21-test_duplicated_selector_with_newlines.scss b/theme-compiler/tests/resources/sasslang/scss/21-test_duplicated_selector_with_newlines.scss
new file mode 100644
index 0000000000..4e22b4eda9
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/21-test_duplicated_selector_with_newlines.scss
@@ -0,0 +1,7 @@
+.example-1-1,
+.example-1-2,
+.example-1-3 {
+ a: b;
+}
+
+.my-page-1 .my-module-1-1 {@extend .example-1-2}
diff --git a/theme-compiler/tests/resources/sasslang/scss/210-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/210-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/210-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/211-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/211-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/211-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/212-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/212-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/212-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/213-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/213-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/213-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/214-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/214-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/214-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/215-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/215-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/215-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/216-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/216-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/216-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/217-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/217-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/217-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/218-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/218-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/218-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/219-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/219-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/219-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/22-test_dynamic_extendee.scss b/theme-compiler/tests/resources/sasslang/scss/22-test_dynamic_extendee.scss
new file mode 100644
index 0000000000..e9545143c7
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/22-test_dynamic_extendee.scss
@@ -0,0 +1,2 @@
+.foo {a: b}
+.bar {@extend #{".foo"}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/220-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/220-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/220-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/221-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/221-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/221-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/222-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/222-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/222-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/223-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/223-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/223-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/224-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/224-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/224-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/225-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/225-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/225-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/226-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/226-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/226-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/227-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/227-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/227-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/228-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/228-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/228-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/229-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/229-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/229-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/23-test_element_unification_with_namespaced_element_target.scss b/theme-compiler/tests/resources/sasslang/scss/23-test_element_unification_with_namespaced_element_target.scss
new file mode 100644
index 0000000000..6228dee87b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/23-test_element_unification_with_namespaced_element_target.scss
@@ -0,0 +1,2 @@
+%-a ns|a.foo {a: b}
+a {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/230-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/230-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/230-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/231-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/231-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/231-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/232-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/232-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/232-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/233-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/233-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/233-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/234-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/234-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/234-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/235-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/235-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/235-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/236-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/236-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/236-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/237-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/237-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/237-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/238-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/238-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/238-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/239-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/239-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/239-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/24-test_element_unification_with_namespaced_universal_target.scss b/theme-compiler/tests/resources/sasslang/scss/24-test_element_unification_with_namespaced_universal_target.scss
new file mode 100644
index 0000000000..7ad4cc2d46
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/24-test_element_unification_with_namespaced_universal_target.scss
@@ -0,0 +1,2 @@
+%-a ns|*.foo {a: b}
+a {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/240-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/240-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/240-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/241-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/241-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/241-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/242-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/242-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/242-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/243-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/243-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/243-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/244-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/244-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/244-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/245-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/245-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/245-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/246-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/246-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/246-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/247-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/247-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/247-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/248-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/248-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/248-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/249-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/249-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/249-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/25-test_element_unification_with_namespaceless_element_target.scss b/theme-compiler/tests/resources/sasslang/scss/25-test_element_unification_with_namespaceless_element_target.scss
new file mode 100644
index 0000000000..a144f79b3b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/25-test_element_unification_with_namespaceless_element_target.scss
@@ -0,0 +1,2 @@
+%-a a.foo {a: b}
+a {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/250-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/250-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/250-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/251-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/251-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/251-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/252-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/252-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/252-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/253-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/253-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/253-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/254-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/254-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/254-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/255-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/255-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/255-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/256-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/256-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/256-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/257-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/257-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/257-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/258-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/258-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/258-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/259-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/259-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/259-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/26-test_element_unification_with_namespaceless_universal_target.scss b/theme-compiler/tests/resources/sasslang/scss/26-test_element_unification_with_namespaceless_universal_target.scss
new file mode 100644
index 0000000000..94843f9b11
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/26-test_element_unification_with_namespaceless_universal_target.scss
@@ -0,0 +1,2 @@
+%-a *.foo {a: b}
+a {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/260-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/260-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/260-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/261-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/261-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/261-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/262-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/262-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/262-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/263-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/263-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/263-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/264-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/264-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/264-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/265-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/265-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/265-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/266-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/266-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/266-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/267-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/267-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/267-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/268-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/268-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/268-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/269-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/269-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/269-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/27-test_element_unification_with_simple_target.scss b/theme-compiler/tests/resources/sasslang/scss/27-test_element_unification_with_simple_target.scss
new file mode 100644
index 0000000000..b09b2fd558
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/27-test_element_unification_with_simple_target.scss
@@ -0,0 +1,2 @@
+%-a .foo {a: b}
+a {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/270-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/270-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/270-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/271-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/271-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/271-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/272-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/272-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/272-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/273-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/273-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/273-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/274-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/274-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/274-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/275-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/275-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/275-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/276-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/276-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/276-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/277-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/277-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/277-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/278-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/278-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/278-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/279-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/279-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/279-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/28-test_extend_cross_branch_redundancy_elimination.scss b/theme-compiler/tests/resources/sasslang/scss/28-test_extend_cross_branch_redundancy_elimination.scss
new file mode 100644
index 0000000000..0998fcae6e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/28-test_extend_cross_branch_redundancy_elimination.scss
@@ -0,0 +1,3 @@
+%x c %y {a: b}
+a, b {@extend %x}
+a d {@extend %y}
diff --git a/theme-compiler/tests/resources/sasslang/scss/280-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/280-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/280-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/281-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/281-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/281-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/282-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/282-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/282-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/283-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/283-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/283-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/284-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/284-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/284-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/285-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/285-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/285-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/286-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/286-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/286-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/287-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/287-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/287-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/288-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/288-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/288-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/289-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/289-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/289-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.scss b/theme-compiler/tests/resources/sasslang/scss/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.scss
new file mode 100644
index 0000000000..a5a0dff1d0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/29-test_extend_does_not_warn_when_one_extension_fails_but_others_dont.scss
@@ -0,0 +1,3 @@
+a.bar {a: b}
+.bar {c: d}
+b.foo {@extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/290-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/290-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/290-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/291-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/291-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/291-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/292-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/292-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/292-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/293-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/293-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/293-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/294-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/294-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/294-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/295-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/295-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/295-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/296-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/296-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/296-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/297-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/297-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/297-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/298-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/298-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/298-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/299-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/299-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/299-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/3-test_basic_extend_loop.scss b/theme-compiler/tests/resources/sasslang/scss/3-test_basic_extend_loop.scss
new file mode 100644
index 0000000000..f8b9df62de
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/3-test_basic_extend_loop.scss
@@ -0,0 +1,2 @@
+.foo {a: b; @extend .bar}
+.bar {c: d; @extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/30-test_extend_out_of_media.scss b/theme-compiler/tests/resources/sasslang/scss/30-test_extend_out_of_media.scss
new file mode 100644
index 0000000000..ad82f7c75f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/30-test_extend_out_of_media.scss
@@ -0,0 +1,4 @@
+.foo {a: b}
+@media screen {
+ .bar {@extend .foo}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/300-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/300-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/300-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/301-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/301-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/301-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/302-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/302-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/302-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/303-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/303-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/303-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/304-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/304-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/304-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/305-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/305-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/305-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/306-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/306-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/306-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/307-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/307-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/307-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/308-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/308-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/308-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/309-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/309-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/309-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/31-test_extend_out_of_nested_directives.scss b/theme-compiler/tests/resources/sasslang/scss/31-test_extend_out_of_nested_directives.scss
new file mode 100644
index 0000000000..694863b3ca
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/31-test_extend_out_of_nested_directives.scss
@@ -0,0 +1,6 @@
+@media screen {
+ .foo {a: b}
+ @flooblehoof {
+ .bar {@extend .foo}
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/310-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/310-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/310-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/311-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/311-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/311-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/312-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/312-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/312-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/313-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/313-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/313-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/314-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/314-update_stylesheet.scss
new file mode 100644
index 0000000000..e43d50813b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/314-update_stylesheet.scss
@@ -0,0 +1,18 @@
+@import "filename_fn_import";
+
+@mixin local-mixin {
+ local-mixin: filename();
+}
+
+@function local-function() {
+ @return filename();
+}
+
+filename {
+ local: filename();
+ @include local-mixin;
+ local-function: local-function();
+
+ @include imported-mixin;
+ imported-function: imported-function();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/315-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/315-update_stylesheet.scss
new file mode 100644
index 0000000000..f64d80bd19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/315-update_stylesheet.scss
@@ -0,0 +1,11 @@
+$preconst: hello;
+
+@mixin premixin {pre-mixin: here}
+
+@import "importee.sass", "scss_importee", "basic.sass", "basic.css", "../results/complex.css";
+@import "partial.sass";
+
+nonimported {
+ myconst: $preconst;
+ otherconst: $postconst;
+ @include postmixin; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/316-update_stylesheet.scss b/theme-compiler/tests/resources/sasslang/scss/316-update_stylesheet.scss
new file mode 100644
index 0000000000..df49e68944
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/316-update_stylesheet.scss
@@ -0,0 +1 @@
+scss {imported: yes}
diff --git a/theme-compiler/tests/resources/sasslang/scss/317-test_almost_ambiguous_nested_rules_and_declarations.scss b/theme-compiler/tests/resources/sasslang/scss/317-test_almost_ambiguous_nested_rules_and_declarations.scss
new file mode 100644
index 0000000000..c747226d98
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/317-test_almost_ambiguous_nested_rules_and_declarations.scss
@@ -0,0 +1,4 @@
+foo {
+ bar:baz:bang:bop:biddle:woo:look:at:all:these:pseudoclasses {a: b};
+ bar:baz bang bop biddle woo look at all these elems {a: b};
+ bar:baz bang bop biddle woo look at all these elems; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/318-test_basic_function.scss b/theme-compiler/tests/resources/sasslang/scss/318-test_basic_function.scss
new file mode 100644
index 0000000000..9c0d7d6125
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/318-test_basic_function.scss
@@ -0,0 +1,7 @@
+@function foo() {
+ @return 1 + 2;
+}
+
+bar {
+ a: foo();
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/319-test_basic_mixins.scss b/theme-compiler/tests/resources/sasslang/scss/319-test_basic_mixins.scss
new file mode 100644
index 0000000000..7542565d2b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/319-test_basic_mixins.scss
@@ -0,0 +1,4 @@
+@mixin foo {
+ .foo {a: b}}
+
+@include foo;
diff --git a/theme-compiler/tests/resources/sasslang/scss/32-test_extend_out_of_unknown_directive.scss b/theme-compiler/tests/resources/sasslang/scss/32-test_extend_out_of_unknown_directive.scss
new file mode 100644
index 0000000000..725de2b2d7
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/32-test_extend_out_of_unknown_directive.scss
@@ -0,0 +1,4 @@
+.foo {a: b}
+@flooblehoof {
+ .bar {@extend .foo}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/320-test_basic_prop_name_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/320-test_basic_prop_name_interpolation.scss
new file mode 100644
index 0000000000..5d9bc844ca
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/320-test_basic_prop_name_interpolation.scss
@@ -0,0 +1 @@
+foo {bar#{"baz" + "bang"}: blip}
diff --git a/theme-compiler/tests/resources/sasslang/scss/321-test_basic_selector_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/321-test_basic_selector_interpolation.scss
new file mode 100644
index 0000000000..03a49a19e9
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/321-test_basic_selector_interpolation.scss
@@ -0,0 +1 @@
+foo #{1 + 2} baz {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/322-test_block_comment_in_script.scss b/theme-compiler/tests/resources/sasslang/scss/322-test_block_comment_in_script.scss
new file mode 100644
index 0000000000..7de5663cdc
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/322-test_block_comment_in_script.scss
@@ -0,0 +1 @@
+foo {a: 1 + /* flang */ bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/323-test_comment_after_if_directive.scss b/theme-compiler/tests/resources/sasslang/scss/323-test_comment_after_if_directive.scss
new file mode 100644
index 0000000000..ff0ece9add
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/323-test_comment_after_if_directive.scss
@@ -0,0 +1,4 @@
+foo {
+ @if true {a: b}
+ /* This is a comment */
+ c: d }
diff --git a/theme-compiler/tests/resources/sasslang/scss/324-test_css_import_directive.scss b/theme-compiler/tests/resources/sasslang/scss/324-test_css_import_directive.scss
new file mode 100644
index 0000000000..8d44575a6a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/324-test_css_import_directive.scss
@@ -0,0 +1 @@
+@import "foo.css";
diff --git a/theme-compiler/tests/resources/sasslang/scss/325-test_css_import_directive.scss b/theme-compiler/tests/resources/sasslang/scss/325-test_css_import_directive.scss
new file mode 100644
index 0000000000..a295e22711
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/325-test_css_import_directive.scss
@@ -0,0 +1 @@
+@import 'foo.css';
diff --git a/theme-compiler/tests/resources/sasslang/scss/326-test_css_import_directive.scss b/theme-compiler/tests/resources/sasslang/scss/326-test_css_import_directive.scss
new file mode 100644
index 0000000000..e2bde2649a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/326-test_css_import_directive.scss
@@ -0,0 +1 @@
+@import url("foo.css");
diff --git a/theme-compiler/tests/resources/sasslang/scss/327-test_css_import_directive.scss b/theme-compiler/tests/resources/sasslang/scss/327-test_css_import_directive.scss
new file mode 100644
index 0000000000..e2bde2649a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/327-test_css_import_directive.scss
@@ -0,0 +1 @@
+@import url("foo.css");
diff --git a/theme-compiler/tests/resources/sasslang/scss/328-test_css_import_directive.scss b/theme-compiler/tests/resources/sasslang/scss/328-test_css_import_directive.scss
new file mode 100644
index 0000000000..0d876d06e8
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/328-test_css_import_directive.scss
@@ -0,0 +1 @@
+@import url(foo.css);
diff --git a/theme-compiler/tests/resources/sasslang/scss/329-test_debug_directive.scss b/theme-compiler/tests/resources/sasslang/scss/329-test_debug_directive.scss
new file mode 100644
index 0000000000..59e43dd684
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/329-test_debug_directive.scss
@@ -0,0 +1,3 @@
+foo {a: b}
+@debug "hello world!";
+bar {c: d}
diff --git a/theme-compiler/tests/resources/sasslang/scss/33-test_extend_redundancy_elimination_never_eliminates_base_selector.scss b/theme-compiler/tests/resources/sasslang/scss/33-test_extend_redundancy_elimination_never_eliminates_base_selector.scss
new file mode 100644
index 0000000000..ac6ad58994
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/33-test_extend_redundancy_elimination_never_eliminates_base_selector.scss
@@ -0,0 +1,2 @@
+a.foo {a: b}
+.foo {@extend a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/330-test_directive_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/330-test_directive_interpolation.scss
new file mode 100644
index 0000000000..f9f5bb5820
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/330-test_directive_interpolation.scss
@@ -0,0 +1,2 @@
+$baz: 12;
+@foo bar#{$baz} qux {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/331-test_dynamic_media_import.scss b/theme-compiler/tests/resources/sasslang/scss/331-test_dynamic_media_import.scss
new file mode 100644
index 0000000000..1886cb8f77
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/331-test_dynamic_media_import.scss
@@ -0,0 +1,4 @@
+$media: print;
+$key: -webkit-min-device-pixel-ratio;
+$value: 20;
+@import "foo" #{$media} and ($key + "-foo": $value + 5);
diff --git a/theme-compiler/tests/resources/sasslang/scss/332-test_each_directive.scss b/theme-compiler/tests/resources/sasslang/scss/332-test_each_directive.scss
new file mode 100644
index 0000000000..fc1fb510bb
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/332-test_each_directive.scss
@@ -0,0 +1,10 @@
+a {
+ @each $number in 1px 2px 3px 4px {
+ b: $number;
+ }
+}
+c {
+ @each $str in foo, bar, baz, bang {
+ d: $str;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/333-test_empty_content.scss b/theme-compiler/tests/resources/sasslang/scss/333-test_empty_content.scss
new file mode 100644
index 0000000000..ad8df41f25
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/333-test_empty_content.scss
@@ -0,0 +1,2 @@
+@mixin foo { @content }
+a { b: c; @include foo {} }
diff --git a/theme-compiler/tests/resources/sasslang/scss/334-test_for_directive.scss b/theme-compiler/tests/resources/sasslang/scss/334-test_for_directive.scss
new file mode 100644
index 0000000000..d3f285c591
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/334-test_for_directive.scss
@@ -0,0 +1,3 @@
+.foo {
+ @for $var from 1 to 5 {a: $var;}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/335-test_function_args.scss b/theme-compiler/tests/resources/sasslang/scss/335-test_function_args.scss
new file mode 100644
index 0000000000..81c969f6a1
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/335-test_function_args.scss
@@ -0,0 +1,7 @@
+@function plus($var1, $var2) {
+ @return $var1 + $var2;
+}
+
+bar {
+ a: plus(1, 2);
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/336-test_function_empty_var_args.scss b/theme-compiler/tests/resources/sasslang/scss/336-test_function_empty_var_args.scss
new file mode 100644
index 0000000000..5340be365b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/336-test_function_empty_var_args.scss
@@ -0,0 +1,5 @@
+@function foo($a, $b...) {
+ @return "a: #{$a}, b: #{length($b)}";
+}
+
+.foo {val: foo(1)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/337-test_function_splat_args.scss b/theme-compiler/tests/resources/sasslang/scss/337-test_function_splat_args.scss
new file mode 100644
index 0000000000..6dfed0ae2d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/337-test_function_splat_args.scss
@@ -0,0 +1,6 @@
+@function foo($a, $b, $c, $d) {
+ @return "a: #{$a}, b: #{$b}, c: #{$c}, d: #{$d}";
+}
+
+$list: 2, 3, 4;
+.foo {val: foo(1, $list...)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/338-test_function_splat_args_with_var_args.scss b/theme-compiler/tests/resources/sasslang/scss/338-test_function_splat_args_with_var_args.scss
new file mode 100644
index 0000000000..d53ccee1ac
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/338-test_function_splat_args_with_var_args.scss
@@ -0,0 +1,6 @@
+@function foo($a, $b...) {
+ @return "a: #{$a}, b: #{$b}";
+}
+
+$list: 2, 3, 4;
+.foo {val: foo(1, $list...)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/339-test_function_splat_args_with_var_args_and_normal_args.scss b/theme-compiler/tests/resources/sasslang/scss/339-test_function_splat_args_with_var_args_and_normal_args.scss
new file mode 100644
index 0000000000..e01bfd84ed
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/339-test_function_splat_args_with_var_args_and_normal_args.scss
@@ -0,0 +1,6 @@
+@function foo($a, $b, $c...) {
+ @return "a: #{$a}, b: #{$b}, c: #{$c}";
+}
+
+$list: 2, 3, 4;
+.foo {val: foo(1, $list...)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.scss b/theme-compiler/tests/resources/sasslang/scss/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.scss
new file mode 100644
index 0000000000..713644b221
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/34-test_extend_redundancy_elimination_when_it_would_preserve_specificity.scss
@@ -0,0 +1,2 @@
+.bar a {a: b}
+a.foo {@extend a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/340-test_function_splat_args_with_var_args_preserves_separator.scss b/theme-compiler/tests/resources/sasslang/scss/340-test_function_splat_args_with_var_args_preserves_separator.scss
new file mode 100644
index 0000000000..e33cbeca0e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/340-test_function_splat_args_with_var_args_preserves_separator.scss
@@ -0,0 +1,6 @@
+@function foo($a, $b...) {
+ @return "a: #{$a}, b: #{$b}";
+}
+
+$list: 3 4 5;
+.foo {val: foo(1, 2, $list...)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/341-test_function_splat_expression.scss b/theme-compiler/tests/resources/sasslang/scss/341-test_function_splat_expression.scss
new file mode 100644
index 0000000000..7daa63618a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/341-test_function_splat_expression.scss
@@ -0,0 +1,5 @@
+@function foo($a, $b, $c, $d) {
+ @return "a: #{$a}, b: #{$b}, c: #{$c}, d: #{$d}";
+}
+
+.foo {val: foo(1, (2, 3, 4)...)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/342-test_function_var_and_splat_args_pass_through_keywords.scss b/theme-compiler/tests/resources/sasslang/scss/342-test_function_var_and_splat_args_pass_through_keywords.scss
new file mode 100644
index 0000000000..99841a75d2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/342-test_function_var_and_splat_args_pass_through_keywords.scss
@@ -0,0 +1,9 @@
+@function foo($a...) {
+ @return bar($a...);
+}
+
+@function bar($b, $c, $a) {
+ @return "a: #{$a}, b: #{$b}, c: #{$c}";
+}
+
+.foo {val: foo(1, $c: 2, $a: 3)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/343-test_function_var_args.scss b/theme-compiler/tests/resources/sasslang/scss/343-test_function_var_args.scss
new file mode 100644
index 0000000000..17fcb201a7
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/343-test_function_var_args.scss
@@ -0,0 +1,5 @@
+@function foo($a, $b...) {
+ @return "a: #{$a}, b: #{$b}";
+}
+
+.foo {val: foo(1, 2, 3, 4)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/344-test_function_var_args_act_like_list.scss b/theme-compiler/tests/resources/sasslang/scss/344-test_function_var_args_act_like_list.scss
new file mode 100644
index 0000000000..5d761edbbb
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/344-test_function_var_args_act_like_list.scss
@@ -0,0 +1,5 @@
+@function foo($a, $b...) {
+ @return "a: #{length($b)}, b: #{nth($b, 2)}";
+}
+
+.foo {val: foo(1, 2, 3, 4)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/345-test_function_var_args_passed_to_native.scss b/theme-compiler/tests/resources/sasslang/scss/345-test_function_var_args_passed_to_native.scss
new file mode 100644
index 0000000000..3dcb5473cd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/345-test_function_var_args_passed_to_native.scss
@@ -0,0 +1,5 @@
+@function foo($args...) {
+ @return adjust-color($args...);
+}
+
+.foo {val: foo(#102030, $blue: 5)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/346-test_guard_assign.scss b/theme-compiler/tests/resources/sasslang/scss/346-test_guard_assign.scss
new file mode 100644
index 0000000000..b230ee8f0c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/346-test_guard_assign.scss
@@ -0,0 +1,4 @@
+$var: 1;
+$var: 2 !default;
+
+foo {a: $var}
diff --git a/theme-compiler/tests/resources/sasslang/scss/347-test_http_import.scss b/theme-compiler/tests/resources/sasslang/scss/347-test_http_import.scss
new file mode 100644
index 0000000000..89e12cb973
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/347-test_http_import.scss
@@ -0,0 +1 @@
+@import "http://fonts.googleapis.com/css?family=Droid+Sans";
diff --git a/theme-compiler/tests/resources/sasslang/scss/348-test_if_directive.scss b/theme-compiler/tests/resources/sasslang/scss/348-test_if_directive.scss
new file mode 100644
index 0000000000..bcfc67a0de
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/348-test_if_directive.scss
@@ -0,0 +1,2 @@
+@if "foo" == "foo" {foo {a: b}}
+@if "foo" != "foo" {bar {a: b}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/349-test_import_with_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/349-test_import_with_interpolation.scss
new file mode 100644
index 0000000000..3d73357c60
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/349-test_import_with_interpolation.scss
@@ -0,0 +1,2 @@
+$family: unquote("Droid+Sans");
+@import url("http://fonts.googleapis.com/css?family=#{$family}");
diff --git a/theme-compiler/tests/resources/sasslang/scss/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.scss b/theme-compiler/tests/resources/sasslang/scss/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.scss
new file mode 100644
index 0000000000..30a9d092cb
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/35-test_extend_redundancy_elimination_when_it_would_reduce_specificity.scss
@@ -0,0 +1,2 @@
+a {a: b}
+a.foo {@extend a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/350-test_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/350-test_interpolation.scss
new file mode 100644
index 0000000000..bb9c9a2c8f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/350-test_interpolation.scss
@@ -0,0 +1,2 @@
+$bar : "#foo";
+ul li#{$bar} a span.label { foo: bar; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/351-test_interpolation_with_bracket_on_next_line.scss b/theme-compiler/tests/resources/sasslang/scss/351-test_interpolation_with_bracket_on_next_line.scss
new file mode 100644
index 0000000000..40c6bc3c30
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/351-test_interpolation_with_bracket_on_next_line.scss
@@ -0,0 +1,2 @@
+a.#{"foo"} b
+{color: red}
diff --git a/theme-compiler/tests/resources/sasslang/scss/352-test_keyword_args_in_functions.scss b/theme-compiler/tests/resources/sasslang/scss/352-test_keyword_args_in_functions.scss
new file mode 100644
index 0000000000..8b4feb6fcb
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/352-test_keyword_args_in_functions.scss
@@ -0,0 +1 @@
+.keyed { color: rgba($color: #a7c, $alpha: 0.4) }
diff --git a/theme-compiler/tests/resources/sasslang/scss/353-test_line_comment_in_script.scss b/theme-compiler/tests/resources/sasslang/scss/353-test_line_comment_in_script.scss
new file mode 100644
index 0000000000..ab0b69d5a7
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/353-test_line_comment_in_script.scss
@@ -0,0 +1,2 @@
+foo {a: 1 + // flang }
+ blang }
diff --git a/theme-compiler/tests/resources/sasslang/scss/354-test_media_import.scss b/theme-compiler/tests/resources/sasslang/scss/354-test_media_import.scss
new file mode 100644
index 0000000000..09f590534e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/354-test_media_import.scss
@@ -0,0 +1 @@
+@import "./fonts.sass" all;
diff --git a/theme-compiler/tests/resources/sasslang/scss/355-test_media_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/355-test_media_interpolation.scss
new file mode 100644
index 0000000000..92f58436dd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/355-test_media_interpolation.scss
@@ -0,0 +1,2 @@
+$baz: 12;
+@media bar#{$baz} {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/356-test_media_interpolation_with_reparse.scss b/theme-compiler/tests/resources/sasslang/scss/356-test_media_interpolation_with_reparse.scss
new file mode 100644
index 0000000000..abc579a3ef
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/356-test_media_interpolation_with_reparse.scss
@@ -0,0 +1,11 @@
+$constraint: "(max-width: 300px)";
+$fragment: "nd #{$constraint}";
+$comma: "een, pri";
+@media screen and #{$constraint} {a: b}
+@media screen {
+ @media #{$constraint} {a: b}
+}
+@media screen a#{$fragment} {a: b}
+@media scr#{$comma}nt {
+ @media #{$constraint} {a: b}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/357-test_mixin_content.scss b/theme-compiler/tests/resources/sasslang/scss/357-test_mixin_content.scss
new file mode 100644
index 0000000000..96f50a7f28
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/357-test_mixin_content.scss
@@ -0,0 +1,13 @@
+$color: blue;
+@mixin context($class, $color: red) {
+ .#{$class} {
+ background-color: $color;
+ @content;
+ border-color: $color;
+ }
+}
+@include context(parent) {
+ @include context(child, $color: yellow) {
+ color: $color;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/358-test_mixin_empty_var_args.scss b/theme-compiler/tests/resources/sasslang/scss/358-test_mixin_empty_var_args.scss
new file mode 100644
index 0000000000..862748d5cd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/358-test_mixin_empty_var_args.scss
@@ -0,0 +1,6 @@
+@mixin foo($a, $b...) {
+ a: $a;
+ b: length($b);
+}
+
+.foo {@include foo(1)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/359-test_mixin_splat_args.scss b/theme-compiler/tests/resources/sasslang/scss/359-test_mixin_splat_args.scss
new file mode 100644
index 0000000000..a543bce700
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/359-test_mixin_splat_args.scss
@@ -0,0 +1,9 @@
+@mixin foo($a, $b, $c, $d) {
+ a: $a;
+ b: $b;
+ c: $c;
+ d: $d;
+}
+
+$list: 2, 3, 4;
+.foo {@include foo(1, $list...)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/36-test_extend_self_loop.scss b/theme-compiler/tests/resources/sasslang/scss/36-test_extend_self_loop.scss
new file mode 100644
index 0000000000..ac40f00573
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/36-test_extend_self_loop.scss
@@ -0,0 +1 @@
+.foo {a: b; @extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/360-test_mixin_splat_args_with_var_args.scss b/theme-compiler/tests/resources/sasslang/scss/360-test_mixin_splat_args_with_var_args.scss
new file mode 100644
index 0000000000..fc614fa649
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/360-test_mixin_splat_args_with_var_args.scss
@@ -0,0 +1,7 @@
+@mixin foo($a, $b...) {
+ a: $a;
+ b: $b;
+}
+
+$list: 2, 3, 4;
+.foo {@include foo(1, $list...)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/361-test_mixin_splat_args_with_var_args_and_normal_args.scss b/theme-compiler/tests/resources/sasslang/scss/361-test_mixin_splat_args_with_var_args_and_normal_args.scss
new file mode 100644
index 0000000000..4e277b7988
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/361-test_mixin_splat_args_with_var_args_and_normal_args.scss
@@ -0,0 +1,8 @@
+@mixin foo($a, $b, $c...) {
+ a: $a;
+ b: $b;
+ c: $c;
+}
+
+$list: 2, 3, 4;
+.foo {@include foo(1, $list...)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/362-test_mixin_splat_args_with_var_args_preserves_separator.scss b/theme-compiler/tests/resources/sasslang/scss/362-test_mixin_splat_args_with_var_args_preserves_separator.scss
new file mode 100644
index 0000000000..c03d7e7612
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/362-test_mixin_splat_args_with_var_args_preserves_separator.scss
@@ -0,0 +1,7 @@
+@mixin foo($a, $b...) {
+ a: $a;
+ b: $b;
+}
+
+$list: 3 4 5;
+.foo {@include foo(1, 2, $list...)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/363-test_mixin_splat_expression.scss b/theme-compiler/tests/resources/sasslang/scss/363-test_mixin_splat_expression.scss
new file mode 100644
index 0000000000..aea2508caa
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/363-test_mixin_splat_expression.scss
@@ -0,0 +1,8 @@
+@mixin foo($a, $b, $c, $d) {
+ a: $a;
+ b: $b;
+ c: $c;
+ d: $d;
+}
+
+.foo {@include foo(1, (2, 3, 4)...)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/364-test_mixin_var_and_splat_args_pass_through_keywords.scss b/theme-compiler/tests/resources/sasslang/scss/364-test_mixin_var_and_splat_args_pass_through_keywords.scss
new file mode 100644
index 0000000000..7bc3249da1
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/364-test_mixin_var_and_splat_args_pass_through_keywords.scss
@@ -0,0 +1,11 @@
+@mixin foo($a...) {
+ @include bar($a...);
+}
+
+@mixin bar($b, $c, $a) {
+ a: $a;
+ b: $b;
+ c: $c;
+}
+
+.foo {@include foo(1, $c: 2, $a: 3)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/365-test_mixin_var_args.scss b/theme-compiler/tests/resources/sasslang/scss/365-test_mixin_var_args.scss
new file mode 100644
index 0000000000..0cf6efa77b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/365-test_mixin_var_args.scss
@@ -0,0 +1,6 @@
+@mixin foo($a, $b...) {
+ a: $a;
+ b: $b;
+}
+
+.foo {@include foo(1, 2, 3, 4)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/366-test_mixin_var_args_act_like_list.scss b/theme-compiler/tests/resources/sasslang/scss/366-test_mixin_var_args_act_like_list.scss
new file mode 100644
index 0000000000..a13332857d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/366-test_mixin_var_args_act_like_list.scss
@@ -0,0 +1,6 @@
+@mixin foo($a, $b...) {
+ a: length($b);
+ b: nth($b, 2);
+}
+
+.foo {@include foo(1, 2, 3, 4)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/367-test_mixin_with_keyword_args.scss b/theme-compiler/tests/resources/sasslang/scss/367-test_mixin_with_keyword_args.scss
new file mode 100644
index 0000000000..db6dd27f18
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/367-test_mixin_with_keyword_args.scss
@@ -0,0 +1,6 @@
+@mixin a-mixin($required, $arg1: default-val1, $arg2: default-val2) {
+ required: $required;
+ arg1: $arg1;
+ arg2: $arg2;
+}
+.mixed { @include a-mixin(foo, $arg2: non-default-val2); }
diff --git a/theme-compiler/tests/resources/sasslang/scss/368-test_mixins_with_args.scss b/theme-compiler/tests/resources/sasslang/scss/368-test_mixins_with_args.scss
new file mode 100644
index 0000000000..3ba39ecac2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/368-test_mixins_with_args.scss
@@ -0,0 +1,3 @@
+@mixin foo($a) {a: $a}
+
+.foo {@include foo(bar)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/369-test_mixins_with_empty_args.scss b/theme-compiler/tests/resources/sasslang/scss/369-test_mixins_with_empty_args.scss
new file mode 100644
index 0000000000..f608979293
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/369-test_mixins_with_empty_args.scss
@@ -0,0 +1,3 @@
+@mixin foo() {a: b}
+
+.foo {@include foo();}
diff --git a/theme-compiler/tests/resources/sasslang/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss b/theme-compiler/tests/resources/sasslang/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss
new file mode 100644
index 0000000000..cd54108c97
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss
@@ -0,0 +1 @@
+.foo {@extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/370-test_moz_document_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/370-test_moz_document_interpolation.scss
new file mode 100644
index 0000000000..fd76408d9f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/370-test_moz_document_interpolation.scss
@@ -0,0 +1,7 @@
+$domain: "sass-lang.com";
+@-moz-document url(http://#{$domain}/),
+ url-prefix(http://#{$domain}/docs),
+ domain(#{$domain}),
+ #{domain($domain)} {
+ .foo {a: b}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/371-test_multiline_var.scss b/theme-compiler/tests/resources/sasslang/scss/371-test_multiline_var.scss
new file mode 100644
index 0000000000..8d127a578f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/371-test_multiline_var.scss
@@ -0,0 +1,10 @@
+foo {
+ $var1: 1 +
+ 2;
+ $var2: true and
+ false;
+ $var3: a b
+ c;
+ a: $var1;
+ b: $var2;
+ c: $var3; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/372-test_namespace_properties.scss b/theme-compiler/tests/resources/sasslang/scss/372-test_namespace_properties.scss
new file mode 100644
index 0000000000..94e24fefdd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/372-test_namespace_properties.scss
@@ -0,0 +1,5 @@
+foo {
+ bar: baz;
+ bang: {
+ bip: 1px;
+ bop: bar;}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/373-test_namespace_properties_with_script_value.scss b/theme-compiler/tests/resources/sasslang/scss/373-test_namespace_properties_with_script_value.scss
new file mode 100644
index 0000000000..e99edfd640
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/373-test_namespace_properties_with_script_value.scss
@@ -0,0 +1,4 @@
+foo {
+ bar: baz + bang {
+ bip: bop;
+ bing: bop; }}
diff --git a/theme-compiler/tests/resources/sasslang/scss/374-test_namespace_properties_with_value.scss b/theme-compiler/tests/resources/sasslang/scss/374-test_namespace_properties_with_value.scss
new file mode 100644
index 0000000000..9d1985f4d8
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/374-test_namespace_properties_with_value.scss
@@ -0,0 +1,4 @@
+foo {
+ bar: baz {
+ bip: bop;
+ bing: bop; }}
diff --git a/theme-compiler/tests/resources/sasslang/scss/375-test_nested_function_def.scss b/theme-compiler/tests/resources/sasslang/scss/375-test_nested_function_def.scss
new file mode 100644
index 0000000000..b9a478d2ee
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/375-test_nested_function_def.scss
@@ -0,0 +1,5 @@
+foo {
+ @function foo() {@return 1}
+ a: foo(); }
+
+bar {b: foo()}
diff --git a/theme-compiler/tests/resources/sasslang/scss/376-test_nested_function_shadow.scss b/theme-compiler/tests/resources/sasslang/scss/376-test_nested_function_shadow.scss
new file mode 100644
index 0000000000..d69639668e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/376-test_nested_function_shadow.scss
@@ -0,0 +1,8 @@
+@function foo() {@return 1}
+
+foo {
+ @function foo() {@return 2}
+ a: foo();
+}
+
+baz {b: foo()}
diff --git a/theme-compiler/tests/resources/sasslang/scss/377-test_nested_mixin_def.scss b/theme-compiler/tests/resources/sasslang/scss/377-test_nested_mixin_def.scss
new file mode 100644
index 0000000000..6069639d02
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/377-test_nested_mixin_def.scss
@@ -0,0 +1,3 @@
+foo {
+ @mixin bar {a: b}
+ @include bar; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/378-test_nested_mixin_shadow.scss b/theme-compiler/tests/resources/sasslang/scss/378-test_nested_mixin_shadow.scss
new file mode 100644
index 0000000000..9b5870089a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/378-test_nested_mixin_shadow.scss
@@ -0,0 +1,8 @@
+@mixin bar {a: b}
+
+foo {
+ @mixin bar {c: d}
+ @include bar;
+}
+
+baz {@include bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/379-test_nested_namespace_properties.scss b/theme-compiler/tests/resources/sasslang/scss/379-test_nested_namespace_properties.scss
new file mode 100644
index 0000000000..7bfea39aa4
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/379-test_nested_namespace_properties.scss
@@ -0,0 +1,6 @@
+foo {
+ bar: baz;
+ bang: {
+ bip: 1px;
+ bop: bar;
+ blat:{baf:bort}}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/38-test_extend_warns_when_extension_fails.scss b/theme-compiler/tests/resources/sasslang/scss/38-test_extend_warns_when_extension_fails.scss
new file mode 100644
index 0000000000..8381c7279a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/38-test_extend_warns_when_extension_fails.scss
@@ -0,0 +1,2 @@
+a.bar {a: b}
+b.foo {@extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/380-test_nested_rules.scss b/theme-compiler/tests/resources/sasslang/scss/380-test_nested_rules.scss
new file mode 100644
index 0000000000..9ba420ee94
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/380-test_nested_rules.scss
@@ -0,0 +1 @@
+foo {bar {a: b}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/381-test_nested_rules_with_declarations.scss b/theme-compiler/tests/resources/sasslang/scss/381-test_nested_rules_with_declarations.scss
new file mode 100644
index 0000000000..3645322ad6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/381-test_nested_rules_with_declarations.scss
@@ -0,0 +1,3 @@
+foo {
+ a: b;
+ bar {c: d}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/382-test_nested_rules_with_fancy_selectors.scss b/theme-compiler/tests/resources/sasslang/scss/382-test_nested_rules_with_fancy_selectors.scss
new file mode 100644
index 0000000000..f4f7bd3445
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/382-test_nested_rules_with_fancy_selectors.scss
@@ -0,0 +1,4 @@
+foo {
+ .bar {a: b}
+ :baz {c: d}
+ bang:bop {e: f}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/383-test_newline_selector_rendered_multiple_times.scss b/theme-compiler/tests/resources/sasslang/scss/383-test_newline_selector_rendered_multiple_times.scss
new file mode 100644
index 0000000000..7d193aaa00
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/383-test_newline_selector_rendered_multiple_times.scss
@@ -0,0 +1,8 @@
+@for $i from 1 through 2 {
+ form {
+ input,
+ select {
+ color: white;
+ }
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/384-test_newlines_in_selectors.scss b/theme-compiler/tests/resources/sasslang/scss/384-test_newlines_in_selectors.scss
new file mode 100644
index 0000000000..e6872f75a8
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/384-test_newlines_in_selectors.scss
@@ -0,0 +1,2 @@
+foo
+bar {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/385-test_newlines_removed_from_selectors_when_compressed.scss b/theme-compiler/tests/resources/sasslang/scss/385-test_newlines_removed_from_selectors_when_compressed.scss
new file mode 100644
index 0000000000..c04a1ee63a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/385-test_newlines_removed_from_selectors_when_compressed.scss
@@ -0,0 +1,6 @@
+a
+, b {
+ z & {
+ display: block;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/386-test_no_buffer_overflow.scss b/theme-compiler/tests/resources/sasslang/scss/386-test_no_buffer_overflow.scss
new file mode 100644
index 0000000000..c56e4e5db2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/386-test_no_buffer_overflow.scss
@@ -0,0 +1,18 @@
+.aaa {
+ background-color: white;
+}
+.aaa .aaa .aaa {
+ background-color: black;
+}
+.bbb {
+ @extend .aaa;
+}
+.xxx {
+ @extend .bbb;
+}
+.yyy {
+ @extend .bbb;
+}
+.zzz {
+ @extend .bbb;
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/387-test_no_namespace_properties_without_space.scss b/theme-compiler/tests/resources/sasslang/scss/387-test_no_namespace_properties_without_space.scss
new file mode 100644
index 0000000000..b7184dea57
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/387-test_no_namespace_properties_without_space.scss
@@ -0,0 +1,3 @@
+foo {
+ bar:baz {
+ bip: bop }}
diff --git a/theme-compiler/tests/resources/sasslang/scss/388-test_one_line_comments.scss b/theme-compiler/tests/resources/sasslang/scss/388-test_one_line_comments.scss
new file mode 100644
index 0000000000..59f75b6777
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/388-test_one_line_comments.scss
@@ -0,0 +1,3 @@
+.foo {// bar: baz;}
+ baz: bang; //}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/389-test_options_passed_to_script.scss b/theme-compiler/tests/resources/sasslang/scss/389-test_options_passed_to_script.scss
new file mode 100644
index 0000000000..3d725d5d3f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/389-test_options_passed_to_script.scss
@@ -0,0 +1 @@
+foo {color: darken(black, 10%)}
diff --git a/theme-compiler/tests/resources/sasslang/scss/39-test_extend_with_subject_fails_with_conflicting_subject.scss b/theme-compiler/tests/resources/sasslang/scss/39-test_extend_with_subject_fails_with_conflicting_subject.scss
new file mode 100644
index 0000000000..bb47652161
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/39-test_extend_with_subject_fails_with_conflicting_subject.scss
@@ -0,0 +1,2 @@
+x! .bar {a: b}
+y! .bap {@extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/390-test_parent_selector_with_parent_and_subject.scss b/theme-compiler/tests/resources/sasslang/scss/390-test_parent_selector_with_parent_and_subject.scss
new file mode 100644
index 0000000000..646238f379
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/390-test_parent_selector_with_parent_and_subject.scss
@@ -0,0 +1,3 @@
+$subject: "!";
+foo {
+ bar &.baz#{$subject} .bip {c: d}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/391-test_parent_selector_with_subject.scss b/theme-compiler/tests/resources/sasslang/scss/391-test_parent_selector_with_subject.scss
new file mode 100644
index 0000000000..fad847940b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/391-test_parent_selector_with_subject.scss
@@ -0,0 +1,5 @@
+foo {
+ bar &.baz! .bip {a: b}}
+
+foo bar {
+ bar &.baz! .bip {c: d}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/392-test_parent_selectors.scss b/theme-compiler/tests/resources/sasslang/scss/392-test_parent_selectors.scss
new file mode 100644
index 0000000000..1106bdfcf2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/392-test_parent_selectors.scss
@@ -0,0 +1,3 @@
+foo {
+ &:hover {a: b}
+ bar &.baz {c: d}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/393-test_passing_all_as_keyword_args_in_opposite_order.scss b/theme-compiler/tests/resources/sasslang/scss/393-test_passing_all_as_keyword_args_in_opposite_order.scss
new file mode 100644
index 0000000000..8830d000b1
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/393-test_passing_all_as_keyword_args_in_opposite_order.scss
@@ -0,0 +1,5 @@
+@mixin a-mixin($required, $arg1: default-val1, $arg2: default-val2) {
+ required: $required;
+ arg1: $arg1;
+ arg2: $arg2; }
+.mixed { @include a-mixin($arg2: non-default-val2, $arg1: non-default-val1, $required: foo); }
diff --git a/theme-compiler/tests/resources/sasslang/scss/394-test_passing_required_args_as_a_keyword_arg.scss b/theme-compiler/tests/resources/sasslang/scss/394-test_passing_required_args_as_a_keyword_arg.scss
new file mode 100644
index 0000000000..2e5ef27a0d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/394-test_passing_required_args_as_a_keyword_arg.scss
@@ -0,0 +1,5 @@
+@mixin a-mixin($required, $arg1: default-val1, $arg2: default-val2) {
+ required: $required;
+ arg1: $arg1;
+ arg2: $arg2; }
+.mixed { @include a-mixin($required: foo); }
diff --git a/theme-compiler/tests/resources/sasslang/scss/395-test_prop_name_interpolation_after_hyphen.scss b/theme-compiler/tests/resources/sasslang/scss/395-test_prop_name_interpolation_after_hyphen.scss
new file mode 100644
index 0000000000..b5c95f6baa
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/395-test_prop_name_interpolation_after_hyphen.scss
@@ -0,0 +1 @@
+a { -#{"foo"}-bar: b; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/396-test_prop_name_only_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/396-test_prop_name_only_interpolation.scss
new file mode 100644
index 0000000000..ffa53d221d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/396-test_prop_name_only_interpolation.scss
@@ -0,0 +1 @@
+foo {#{"baz" + "bang"}: blip}
diff --git a/theme-compiler/tests/resources/sasslang/scss/397-test_random_directive_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/397-test_random_directive_interpolation.scss
new file mode 100644
index 0000000000..b03fc8f115
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/397-test_random_directive_interpolation.scss
@@ -0,0 +1,7 @@
+$domain: "sass-lang.com";
+@foo url(http://#{$domain}/),
+ #{domain($domain)},
+ "foo#{'ba' + 'r'}baz",
+ foo#{'ba' + 'r'}baz {
+ .foo {a: b}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/398-test_reference_combinator_with_parent_ref.scss b/theme-compiler/tests/resources/sasslang/scss/398-test_reference_combinator_with_parent_ref.scss
new file mode 100644
index 0000000000..fcef052421
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/398-test_reference_combinator_with_parent_ref.scss
@@ -0,0 +1 @@
+a {& /foo/ b {c: d}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/399-test_sass_script.scss b/theme-compiler/tests/resources/sasslang/scss/399-test_sass_script.scss
new file mode 100644
index 0000000000..a1fe64d4f7
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/399-test_sass_script.scss
@@ -0,0 +1,5 @@
+foo {
+ a: 1 + 2;
+ b: 1 - 2;
+ c: foo + bar;
+ d: floor(12.3px); }
diff --git a/theme-compiler/tests/resources/sasslang/scss/4-test_basic_placeholder_selector.scss b/theme-compiler/tests/resources/sasslang/scss/4-test_basic_placeholder_selector.scss
new file mode 100644
index 0000000000..affb7d91dd
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/4-test_basic_placeholder_selector.scss
@@ -0,0 +1,2 @@
+%foo {a: b}
+.bar {@extend %foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/40-test_extend_with_subject_retains_subject_on_extender.scss b/theme-compiler/tests/resources/sasslang/scss/40-test_extend_with_subject_retains_subject_on_extender.scss
new file mode 100644
index 0000000000..fd48ca58a9
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/40-test_extend_with_subject_retains_subject_on_extender.scss
@@ -0,0 +1,2 @@
+.foo .bar {a: b}
+.bip! .bap {@extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/400-test_script_in_media.scss b/theme-compiler/tests/resources/sasslang/scss/400-test_script_in_media.scss
new file mode 100644
index 0000000000..e9d6909213
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/400-test_script_in_media.scss
@@ -0,0 +1,5 @@
+$media1: screen;
+$media2: print;
+$var: -webkit-min-device-pixel-ratio;
+$val: 20;
+@media #{$media1} and ($var: $val), only #{$media2} {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/401-test_selector_interpolation_at_attr_beginning.scss b/theme-compiler/tests/resources/sasslang/scss/401-test_selector_interpolation_at_attr_beginning.scss
new file mode 100644
index 0000000000..16bf116364
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/401-test_selector_interpolation_at_attr_beginning.scss
@@ -0,0 +1,2 @@
+$zzz: zzz;
+[#{$zzz}=foo] { a: b; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/402-test_selector_interpolation_at_attr_end.scss b/theme-compiler/tests/resources/sasslang/scss/402-test_selector_interpolation_at_attr_end.scss
new file mode 100644
index 0000000000..503b146e3f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/402-test_selector_interpolation_at_attr_end.scss
@@ -0,0 +1,2 @@
+$zzz: zzz;
+[foo=#{$zzz}] { a: b; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/403-test_selector_interpolation_at_class_begininng.scss b/theme-compiler/tests/resources/sasslang/scss/403-test_selector_interpolation_at_class_begininng.scss
new file mode 100644
index 0000000000..b939dbf0a0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/403-test_selector_interpolation_at_class_begininng.scss
@@ -0,0 +1,2 @@
+$zzz: zzz;
+.#{$zzz} { a: b; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/404-test_selector_interpolation_at_dashes.scss b/theme-compiler/tests/resources/sasslang/scss/404-test_selector_interpolation_at_dashes.scss
new file mode 100644
index 0000000000..de8ced2a25
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/404-test_selector_interpolation_at_dashes.scss
@@ -0,0 +1,3 @@
+$a : a;
+$b : b;
+div { -foo-#{$a}-#{$b}-foo: foo }
diff --git a/theme-compiler/tests/resources/sasslang/scss/405-test_selector_interpolation_at_id_begininng.scss b/theme-compiler/tests/resources/sasslang/scss/405-test_selector_interpolation_at_id_begininng.scss
new file mode 100644
index 0000000000..6c5f2b017a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/405-test_selector_interpolation_at_id_begininng.scss
@@ -0,0 +1,2 @@
+$zzz: zzz;
+##{$zzz} { a: b; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/406-test_selector_interpolation_at_pseudo_begininng.scss b/theme-compiler/tests/resources/sasslang/scss/406-test_selector_interpolation_at_pseudo_begininng.scss
new file mode 100644
index 0000000000..4733bfd12a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/406-test_selector_interpolation_at_pseudo_begininng.scss
@@ -0,0 +1,2 @@
+$zzz: zzz;
+:#{$zzz}::#{$zzz} { a: b; }
diff --git a/theme-compiler/tests/resources/sasslang/scss/407-test_selector_interpolation_before_element_name.scss b/theme-compiler/tests/resources/sasslang/scss/407-test_selector_interpolation_before_element_name.scss
new file mode 100644
index 0000000000..12a2a9055a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/407-test_selector_interpolation_before_element_name.scss
@@ -0,0 +1 @@
+#{"foo" + " bar"}baz {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/408-test_selector_interpolation_in_pseudoclass.scss b/theme-compiler/tests/resources/sasslang/scss/408-test_selector_interpolation_in_pseudoclass.scss
new file mode 100644
index 0000000000..271ae20576
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/408-test_selector_interpolation_in_pseudoclass.scss
@@ -0,0 +1 @@
+foo:nth-child(#{5 + "n"}) {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/409-test_selector_interpolation_in_reference_combinator.scss b/theme-compiler/tests/resources/sasslang/scss/409-test_selector_interpolation_in_reference_combinator.scss
new file mode 100644
index 0000000000..867692ff24
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/409-test_selector_interpolation_in_reference_combinator.scss
@@ -0,0 +1,4 @@
+$a: a;
+$b: b;
+$c: c;
+.foo /#{$a}/ .bar /#{$b}|#{$c}/ .baz {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/41-test_extend_with_subject_retains_subject_on_target.scss b/theme-compiler/tests/resources/sasslang/scss/41-test_extend_with_subject_retains_subject_on_target.scss
new file mode 100644
index 0000000000..8fde815f1d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/41-test_extend_with_subject_retains_subject_on_target.scss
@@ -0,0 +1,2 @@
+.foo! .bar {a: b}
+.bip .bap {@extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/410-test_selector_interpolation_in_string.scss b/theme-compiler/tests/resources/sasslang/scss/410-test_selector_interpolation_in_string.scss
new file mode 100644
index 0000000000..185d9dcb13
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/410-test_selector_interpolation_in_string.scss
@@ -0,0 +1 @@
+foo[val="bar #{"foo" + " bar"} baz"] {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/411-test_selector_only_interpolation.scss b/theme-compiler/tests/resources/sasslang/scss/411-test_selector_only_interpolation.scss
new file mode 100644
index 0000000000..7f27bf073f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/411-test_selector_only_interpolation.scss
@@ -0,0 +1 @@
+#{"foo" + " bar"} {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/412-test_several_namespace_properties.scss b/theme-compiler/tests/resources/sasslang/scss/412-test_several_namespace_properties.scss
new file mode 100644
index 0000000000..d2a5232f95
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/412-test_several_namespace_properties.scss
@@ -0,0 +1,10 @@
+foo {
+ bar: baz;
+ bang: {
+ bip: 1px;
+ bop: bar;}
+ buzz: {
+ fram: "foo";
+ frum: moo;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/413-test_star_plus_and_parent.scss b/theme-compiler/tests/resources/sasslang/scss/413-test_star_plus_and_parent.scss
new file mode 100644
index 0000000000..7a28dd584d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/413-test_star_plus_and_parent.scss
@@ -0,0 +1 @@
+foo {*+html & {a: b}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/414-test_supports_bubbling.scss b/theme-compiler/tests/resources/sasslang/scss/414-test_supports_bubbling.scss
new file mode 100644
index 0000000000..86f75997b8
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/414-test_supports_bubbling.scss
@@ -0,0 +1,8 @@
+a {
+ @supports (foo: bar) {
+ b: c;
+ @supports (baz: bang) {
+ d: e;
+ }
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/415-test_supports_with_expressions.scss b/theme-compiler/tests/resources/sasslang/scss/415-test_supports_with_expressions.scss
new file mode 100644
index 0000000000..a131950d46
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/415-test_supports_with_expressions.scss
@@ -0,0 +1,6 @@
+$query: "(feature1: val)";
+$feature: feature2;
+$val: val;
+@supports #{$query} and ($feature: $val) or (not ($feature + 3: $val + 4)) {
+ foo {a: b}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/416-test_trailing_comma_in_selector.scss b/theme-compiler/tests/resources/sasslang/scss/416-test_trailing_comma_in_selector.scss
new file mode 100644
index 0000000000..5615804797
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/416-test_trailing_comma_in_selector.scss
@@ -0,0 +1,4 @@
+#foo #bar,,
+,#baz #boom, {a: b}
+
+#bip #bop, ,, {c: d}
diff --git a/theme-compiler/tests/resources/sasslang/scss/417-test_unicode_variables.scss b/theme-compiler/tests/resources/sasslang/scss/417-test_unicode_variables.scss
new file mode 100644
index 0000000000..374d498033
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/417-test_unicode_variables.scss
@@ -0,0 +1,3 @@
+$vär: foo;
+
+blat {a: $vär}
diff --git a/theme-compiler/tests/resources/sasslang/scss/418-test_url_import.scss b/theme-compiler/tests/resources/sasslang/scss/418-test_url_import.scss
new file mode 100644
index 0000000000..e4ebe59e66
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/418-test_url_import.scss
@@ -0,0 +1 @@
+@import url(fonts.sass);
diff --git a/theme-compiler/tests/resources/sasslang/scss/419-test_variables.scss b/theme-compiler/tests/resources/sasslang/scss/419-test_variables.scss
new file mode 100644
index 0000000000..90275fa67f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/419-test_variables.scss
@@ -0,0 +1,3 @@
+$var: foo;
+
+blat {a: $var}
diff --git a/theme-compiler/tests/resources/sasslang/scss/42-test_extend_with_subject_transfers_subject_to_extender.scss b/theme-compiler/tests/resources/sasslang/scss/42-test_extend_with_subject_transfers_subject_to_extender.scss
new file mode 100644
index 0000000000..6bc9174dde
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/42-test_extend_with_subject_transfers_subject_to_extender.scss
@@ -0,0 +1,2 @@
+foo bar! baz {a: b}
+.bip .bap {@extend bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/420-test_warn_directive.scss b/theme-compiler/tests/resources/sasslang/scss/420-test_warn_directive.scss
new file mode 100644
index 0000000000..53546355cc
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/420-test_warn_directive.scss
@@ -0,0 +1,3 @@
+@mixin foo { @warn "this is a mixin";}
+@warn "this is a warning";
+bar {c: d; @include foo;}
diff --git a/theme-compiler/tests/resources/sasslang/scss/421-test_weird_added_space.scss b/theme-compiler/tests/resources/sasslang/scss/421-test_weird_added_space.scss
new file mode 100644
index 0000000000..fc86eb4b32
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/421-test_weird_added_space.scss
@@ -0,0 +1,5 @@
+$value : bip;
+
+foo {
+ bar: -moz-#{$value};
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/422-test_while_directive.scss b/theme-compiler/tests/resources/sasslang/scss/422-test_while_directive.scss
new file mode 100644
index 0000000000..5058186ea0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/422-test_while_directive.scss
@@ -0,0 +1,8 @@
+$i: 1;
+
+.foo {
+ @while $i != 5 {
+ a: $i;
+ $i: $i + 1;
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/43-test_extend_with_subject_transfers_subject_to_target.scss b/theme-compiler/tests/resources/sasslang/scss/43-test_extend_with_subject_transfers_subject_to_target.scss
new file mode 100644
index 0000000000..1ad5c6e3be
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/43-test_extend_with_subject_transfers_subject_to_target.scss
@@ -0,0 +1,2 @@
+a.foo .bar {a: b}
+.bip .bap! {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/44-test_extend_within_and_without_media.scss b/theme-compiler/tests/resources/sasslang/scss/44-test_extend_within_and_without_media.scss
new file mode 100644
index 0000000000..27e00d314d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/44-test_extend_within_and_without_media.scss
@@ -0,0 +1,5 @@
+.foo {a: b}
+@media screen {
+ .foo {c: d}
+ .bar {@extend .foo}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/45-test_extend_within_and_without_nested_directives.scss b/theme-compiler/tests/resources/sasslang/scss/45-test_extend_within_and_without_nested_directives.scss
new file mode 100644
index 0000000000..139408946b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/45-test_extend_within_and_without_nested_directives.scss
@@ -0,0 +1,7 @@
+@media screen {
+ .foo {a: b}
+ @flooblehoof {
+ .foo {c: d}
+ .bar {@extend .foo}
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/46-test_extend_within_and_without_unknown_directive.scss b/theme-compiler/tests/resources/sasslang/scss/46-test_extend_within_and_without_unknown_directive.scss
new file mode 100644
index 0000000000..cdaa3a594d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/46-test_extend_within_and_without_unknown_directive.scss
@@ -0,0 +1,5 @@
+.foo {a: b}
+@flooblehoof {
+ .foo {c: d}
+ .bar {@extend .foo}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/47-test_extend_within_disparate_media.scss b/theme-compiler/tests/resources/sasslang/scss/47-test_extend_within_disparate_media.scss
new file mode 100644
index 0000000000..27390c4985
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/47-test_extend_within_disparate_media.scss
@@ -0,0 +1,2 @@
+@media screen {.foo {a: b}}
+@media screen {.bar {@extend .foo}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/48-test_extend_within_disparate_nested_directives.scss b/theme-compiler/tests/resources/sasslang/scss/48-test_extend_within_disparate_nested_directives.scss
new file mode 100644
index 0000000000..258109a1a9
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/48-test_extend_within_disparate_nested_directives.scss
@@ -0,0 +1,2 @@
+@media screen {@flooblehoof {.foo {a: b}}}
+@media screen {@flooblehoof {.bar {@extend .foo}}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/49-test_extend_within_disparate_unknown_directive.scss b/theme-compiler/tests/resources/sasslang/scss/49-test_extend_within_disparate_unknown_directive.scss
new file mode 100644
index 0000000000..d7350a9b33
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/49-test_extend_within_disparate_unknown_directive.scss
@@ -0,0 +1,2 @@
+@flooblehoof {.foo {a: b}}
+@flooblehoof {.bar {@extend .foo}}
diff --git a/theme-compiler/tests/resources/sasslang/scss/5-test_chained_extends.scss b/theme-compiler/tests/resources/sasslang/scss/5-test_chained_extends.scss
new file mode 100644
index 0000000000..36a2c1905c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/5-test_chained_extends.scss
@@ -0,0 +1,4 @@
+.foo {a: b}
+.bar {@extend .foo}
+.baz {@extend .bar}
+.bip {@extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/50-test_extend_within_media.scss b/theme-compiler/tests/resources/sasslang/scss/50-test_extend_within_media.scss
new file mode 100644
index 0000000000..037bfc4b19
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/50-test_extend_within_media.scss
@@ -0,0 +1,4 @@
+@media screen {
+ .foo {a: b}
+ .bar {@extend .foo}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/51-test_extend_within_nested_directives.scss b/theme-compiler/tests/resources/sasslang/scss/51-test_extend_within_nested_directives.scss
new file mode 100644
index 0000000000..41192701e1
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/51-test_extend_within_nested_directives.scss
@@ -0,0 +1,6 @@
+@media screen {
+ @flooblehoof {
+ .foo {a: b}
+ .bar {@extend .foo}
+ }
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/52-test_extend_within_unknown_directive.scss b/theme-compiler/tests/resources/sasslang/scss/52-test_extend_within_unknown_directive.scss
new file mode 100644
index 0000000000..fbaf90bacf
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/52-test_extend_within_unknown_directive.scss
@@ -0,0 +1,4 @@
+@flooblehoof {
+ .foo {a: b}
+ .bar {@extend .foo}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/53-test_extended_parent_and_child_redundancy_elimination.scss b/theme-compiler/tests/resources/sasslang/scss/53-test_extended_parent_and_child_redundancy_elimination.scss
new file mode 100644
index 0000000000..08306a50b4
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/53-test_extended_parent_and_child_redundancy_elimination.scss
@@ -0,0 +1,5 @@
+a {
+ b {a: b}
+ c {@extend b}
+}
+d {@extend a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/54-test_id_unification.scss b/theme-compiler/tests/resources/sasslang/scss/54-test_id_unification.scss
new file mode 100644
index 0000000000..a6e59ad4de
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/54-test_id_unification.scss
@@ -0,0 +1,2 @@
+%-a .foo.bar {a: b}
+#baz {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/55-test_long_extendee.scss b/theme-compiler/tests/resources/sasslang/scss/55-test_long_extendee.scss
new file mode 100644
index 0000000000..26ab65d344
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/55-test_long_extendee.scss
@@ -0,0 +1,2 @@
+.foo.bar {a: b}
+.baz {@extend .foo.bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/56-test_long_extendee_matches_supersets.scss b/theme-compiler/tests/resources/sasslang/scss/56-test_long_extendee_matches_supersets.scss
new file mode 100644
index 0000000000..aba9557471
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/56-test_long_extendee_matches_supersets.scss
@@ -0,0 +1,2 @@
+.foo.bar.bap {a: b}
+.baz {@extend .foo.bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/57-test_long_extendee_requires_all_selectors.scss b/theme-compiler/tests/resources/sasslang/scss/57-test_long_extendee_requires_all_selectors.scss
new file mode 100644
index 0000000000..011d26a83e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/57-test_long_extendee_requires_all_selectors.scss
@@ -0,0 +1,2 @@
+.foo {a: b}
+.baz {@extend .foo.bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/58-test_long_extendee_runs_unification.scss b/theme-compiler/tests/resources/sasslang/scss/58-test_long_extendee_runs_unification.scss
new file mode 100644
index 0000000000..6edc3cad9c
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/58-test_long_extendee_runs_unification.scss
@@ -0,0 +1,2 @@
+ns|*.foo.bar {a: b}
+a.baz {@extend .foo.bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/59-test_long_extender.scss b/theme-compiler/tests/resources/sasslang/scss/59-test_long_extender.scss
new file mode 100644
index 0000000000..8b25f60734
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/59-test_long_extender.scss
@@ -0,0 +1,2 @@
+.foo.bar {a: b}
+.baz.bang {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/6-test_class_unification.scss b/theme-compiler/tests/resources/sasslang/scss/6-test_class_unification.scss
new file mode 100644
index 0000000000..f3c5744858
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/6-test_class_unification.scss
@@ -0,0 +1,2 @@
+%-a .foo.bar {a: b}
+.baz {@extend .foo} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/60-test_long_extender_aborts_unification.scss b/theme-compiler/tests/resources/sasslang/scss/60-test_long_extender_aborts_unification.scss
new file mode 100644
index 0000000000..5238f3f93e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/60-test_long_extender_aborts_unification.scss
@@ -0,0 +1,2 @@
+a.foo#bar {a: b}
+h1.baz {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/61-test_long_extender_runs_unification.scss b/theme-compiler/tests/resources/sasslang/scss/61-test_long_extender_runs_unification.scss
new file mode 100644
index 0000000000..3239c26545
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/61-test_long_extender_runs_unification.scss
@@ -0,0 +1,2 @@
+ns|*.foo.bar {a: b}
+a.baz {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/62-test_media_in_placeholder_selector.scss b/theme-compiler/tests/resources/sasslang/scss/62-test_media_in_placeholder_selector.scss
new file mode 100644
index 0000000000..d8916e2eee
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/62-test_media_in_placeholder_selector.scss
@@ -0,0 +1,2 @@
+%foo {bar {@media screen {a: b}}}
+.baz {c: d}
diff --git a/theme-compiler/tests/resources/sasslang/scss/63-test_multiple_extendees.scss b/theme-compiler/tests/resources/sasslang/scss/63-test_multiple_extendees.scss
new file mode 100644
index 0000000000..2c0f5aa72a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/63-test_multiple_extendees.scss
@@ -0,0 +1,3 @@
+.foo {a: b}
+.bar {c: d}
+.baz {@extend .foo; @extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/64-test_multiple_extender_merges_with_superset_selector.scss b/theme-compiler/tests/resources/sasslang/scss/64-test_multiple_extender_merges_with_superset_selector.scss
new file mode 100644
index 0000000000..7041fd6ab2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/64-test_multiple_extender_merges_with_superset_selector.scss
@@ -0,0 +1,2 @@
+.foo {@extend .bar; @extend .baz}
+a.bar.baz {a: b}
diff --git a/theme-compiler/tests/resources/sasslang/scss/65-test_multiple_extends_with_multiple_extenders_and_single_target.scss b/theme-compiler/tests/resources/sasslang/scss/65-test_multiple_extends_with_multiple_extenders_and_single_target.scss
new file mode 100644
index 0000000000..4c2a4c59f8
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/65-test_multiple_extends_with_multiple_extenders_and_single_target.scss
@@ -0,0 +1,3 @@
+.foo .bar {a: b}
+.baz {@extend .foo}
+.bang {@extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/66-test_multiple_extends_with_single_extender_and_single_target.scss b/theme-compiler/tests/resources/sasslang/scss/66-test_multiple_extends_with_single_extender_and_single_target.scss
new file mode 100644
index 0000000000..48d9c5b733
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/66-test_multiple_extends_with_single_extender_and_single_target.scss
@@ -0,0 +1,2 @@
+.foo .bar {a: b}
+.baz {@extend .foo; @extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/67-test_multiple_targets.scss b/theme-compiler/tests/resources/sasslang/scss/67-test_multiple_targets.scss
new file mode 100644
index 0000000000..fdcba65999
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/67-test_multiple_targets.scss
@@ -0,0 +1,3 @@
+.foo {a: b}
+.bar {@extend .foo}
+.blip .foo {c: d}
diff --git a/theme-compiler/tests/resources/sasslang/scss/68-test_negation_unification.scss b/theme-compiler/tests/resources/sasslang/scss/68-test_negation_unification.scss
new file mode 100644
index 0000000000..05350cc706
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/68-test_negation_unification.scss
@@ -0,0 +1,2 @@
+%-a :not(.foo).baz {a: b}
+:not(.bar) {@extend .baz} -a {@extend %-a}
diff --git a/theme-compiler/tests/resources/sasslang/scss/69-test_nested_extend_loop.scss b/theme-compiler/tests/resources/sasslang/scss/69-test_nested_extend_loop.scss
new file mode 100644
index 0000000000..3143a1f078
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/69-test_nested_extend_loop.scss
@@ -0,0 +1,4 @@
+.bar {
+ a: b;
+ .foo {c: d; @extend .bar}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/7-test_combinator_unification_angle_sibling.scss b/theme-compiler/tests/resources/sasslang/scss/7-test_combinator_unification_angle_sibling.scss
new file mode 100644
index 0000000000..b0120ac34e
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/7-test_combinator_unification_angle_sibling.scss
@@ -0,0 +1,2 @@
+.a > x {a: b}
+.b ~ y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/70-test_nested_extender.scss b/theme-compiler/tests/resources/sasslang/scss/70-test_nested_extender.scss
new file mode 100644
index 0000000000..6245cdfda7
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/70-test_nested_extender.scss
@@ -0,0 +1,2 @@
+.foo {a: b}
+foo bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/71-test_nested_extender_aborts_unification.scss b/theme-compiler/tests/resources/sasslang/scss/71-test_nested_extender_aborts_unification.scss
new file mode 100644
index 0000000000..bcbb6e181d
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/71-test_nested_extender_aborts_unification.scss
@@ -0,0 +1,2 @@
+baz.foo {a: b}
+foo bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/72-test_nested_extender_alternates_parents.scss b/theme-compiler/tests/resources/sasslang/scss/72-test_nested_extender_alternates_parents.scss
new file mode 100644
index 0000000000..85975ffda2
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/72-test_nested_extender_alternates_parents.scss
@@ -0,0 +1,2 @@
+.baz .bip .foo {a: b}
+foo .grank bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/73-test_nested_extender_chooses_first_subseq.scss b/theme-compiler/tests/resources/sasslang/scss/73-test_nested_extender_chooses_first_subseq.scss
new file mode 100644
index 0000000000..07aa35bff3
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/73-test_nested_extender_chooses_first_subseq.scss
@@ -0,0 +1,2 @@
+.a .b .c .d .foo {a: b}
+.c .d .a .b .bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/74-test_nested_extender_counts_extended_subselectors.scss b/theme-compiler/tests/resources/sasslang/scss/74-test_nested_extender_counts_extended_subselectors.scss
new file mode 100644
index 0000000000..a3c07d48f9
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/74-test_nested_extender_counts_extended_subselectors.scss
@@ -0,0 +1,2 @@
+.a .bip.bop .foo {a: b}
+.b .bip .bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/75-test_nested_extender_counts_extended_superselectors.scss b/theme-compiler/tests/resources/sasslang/scss/75-test_nested_extender_counts_extended_superselectors.scss
new file mode 100644
index 0000000000..9828564b02
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/75-test_nested_extender_counts_extended_superselectors.scss
@@ -0,0 +1,2 @@
+.a .bip .foo {a: b}
+.b .bip.bop .bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/76-test_nested_extender_doesnt_find_common_selectors_around_adjacent_sibling_selector.scss b/theme-compiler/tests/resources/sasslang/scss/76-test_nested_extender_doesnt_find_common_selectors_around_adjacent_sibling_selector.scss
new file mode 100644
index 0000000000..388c74b3b0
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/76-test_nested_extender_doesnt_find_common_selectors_around_adjacent_sibling_selector.scss
@@ -0,0 +1,2 @@
+a + b c .c1 {a: b}
+a c .c2 {@extend .c1}
diff --git a/theme-compiler/tests/resources/sasslang/scss/77-test_nested_extender_doesnt_find_common_selectors_around_reference_selector.scss b/theme-compiler/tests/resources/sasslang/scss/77-test_nested_extender_doesnt_find_common_selectors_around_reference_selector.scss
new file mode 100644
index 0000000000..66772821e6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/77-test_nested_extender_doesnt_find_common_selectors_around_reference_selector.scss
@@ -0,0 +1,2 @@
+a /for/ b c .c1 {a: b}
+a c .c2 {@extend .c1}
diff --git a/theme-compiler/tests/resources/sasslang/scss/78-test_nested_extender_doesnt_find_common_selectors_around_sibling_selector.scss b/theme-compiler/tests/resources/sasslang/scss/78-test_nested_extender_doesnt_find_common_selectors_around_sibling_selector.scss
new file mode 100644
index 0000000000..65b65d7d73
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/78-test_nested_extender_doesnt_find_common_selectors_around_sibling_selector.scss
@@ -0,0 +1,2 @@
+a ~ b c .c1 {a: b}
+a c .c2 {@extend .c1}
diff --git a/theme-compiler/tests/resources/sasslang/scss/79-test_nested_extender_finds_common_selectors_around_child_selector.scss b/theme-compiler/tests/resources/sasslang/scss/79-test_nested_extender_finds_common_selectors_around_child_selector.scss
new file mode 100644
index 0000000000..9c0a3b7eaf
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/79-test_nested_extender_finds_common_selectors_around_child_selector.scss
@@ -0,0 +1,2 @@
+a > b c .c1 {a: b}
+a c .c2 {@extend .c1}
diff --git a/theme-compiler/tests/resources/sasslang/scss/8-test_combinator_unification_angle_space.scss b/theme-compiler/tests/resources/sasslang/scss/8-test_combinator_unification_angle_space.scss
new file mode 100644
index 0000000000..ca701f7c07
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/8-test_combinator_unification_angle_space.scss
@@ -0,0 +1,2 @@
+.a.b > x {a: b}
+.a y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/80-test_nested_extender_merges_with_same_selector.scss b/theme-compiler/tests/resources/sasslang/scss/80-test_nested_extender_merges_with_same_selector.scss
new file mode 100644
index 0000000000..d959cce374
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/80-test_nested_extender_merges_with_same_selector.scss
@@ -0,0 +1,3 @@
+.foo {
+ .bar {a: b}
+ .baz {@extend .bar} }
diff --git a/theme-compiler/tests/resources/sasslang/scss/81-test_nested_extender_runs_unification.scss b/theme-compiler/tests/resources/sasslang/scss/81-test_nested_extender_runs_unification.scss
new file mode 100644
index 0000000000..32c2c0cc62
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/81-test_nested_extender_runs_unification.scss
@@ -0,0 +1,2 @@
+.foo.bar {a: b}
+foo bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/82-test_nested_extender_unifies_common_subseq.scss b/theme-compiler/tests/resources/sasslang/scss/82-test_nested_extender_unifies_common_subseq.scss
new file mode 100644
index 0000000000..378af3bf83
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/82-test_nested_extender_unifies_common_subseq.scss
@@ -0,0 +1,2 @@
+.a .x .b .y .foo {a: b}
+.a .n .b .m bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/83-test_nested_extender_unifies_common_substring.scss b/theme-compiler/tests/resources/sasslang/scss/83-test_nested_extender_unifies_common_substring.scss
new file mode 100644
index 0000000000..67cae3ea5f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/83-test_nested_extender_unifies_common_substring.scss
@@ -0,0 +1,2 @@
+.baz .bip .bap .bink .foo {a: b}
+.brat .bip .bap bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/84-test_nested_extender_unifies_identical_parents.scss b/theme-compiler/tests/resources/sasslang/scss/84-test_nested_extender_unifies_identical_parents.scss
new file mode 100644
index 0000000000..b910f40896
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/84-test_nested_extender_unifies_identical_parents.scss
@@ -0,0 +1,2 @@
+.baz .bip .foo {a: b}
+.baz .bip bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/85-test_nested_extender_with_child_selector.scss b/theme-compiler/tests/resources/sasslang/scss/85-test_nested_extender_with_child_selector.scss
new file mode 100644
index 0000000000..da249ad564
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/85-test_nested_extender_with_child_selector.scss
@@ -0,0 +1,2 @@
+.baz .foo {a: b}
+foo > bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/86-test_nested_extender_with_child_selector_merges_with_same_selector.scss b/theme-compiler/tests/resources/sasslang/scss/86-test_nested_extender_with_child_selector_merges_with_same_selector.scss
new file mode 100644
index 0000000000..224945cd71
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/86-test_nested_extender_with_child_selector_merges_with_same_selector.scss
@@ -0,0 +1,2 @@
+.foo > .bar .baz {a: b}
+.foo > .bar .bang {@extend .baz}
diff --git a/theme-compiler/tests/resources/sasslang/scss/87-test_nested_extender_with_child_selector_unifies.scss b/theme-compiler/tests/resources/sasslang/scss/87-test_nested_extender_with_child_selector_unifies.scss
new file mode 100644
index 0000000000..747f3bed8a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/87-test_nested_extender_with_child_selector_unifies.scss
@@ -0,0 +1,2 @@
+.baz.foo {a: b}
+foo > bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.scss b/theme-compiler/tests/resources/sasslang/scss/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.scss
new file mode 100644
index 0000000000..f2b8c6c07b
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/88-test_nested_extender_with_early_child_selectors_doesnt_subseq_them.scss
@@ -0,0 +1,4 @@
+.foo {
+ .bar {a: b}
+ .bip > .baz {@extend .bar}
+}
diff --git a/theme-compiler/tests/resources/sasslang/scss/89-test_nested_extender_with_hacky_selector.scss b/theme-compiler/tests/resources/sasslang/scss/89-test_nested_extender_with_hacky_selector.scss
new file mode 100644
index 0000000000..82b4526fee
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/89-test_nested_extender_with_hacky_selector.scss
@@ -0,0 +1,2 @@
+.baz .foo {a: b}
+foo + > > + bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/9-test_combinator_unification_double_angle.scss b/theme-compiler/tests/resources/sasslang/scss/9-test_combinator_unification_double_angle.scss
new file mode 100644
index 0000000000..74191429eb
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/9-test_combinator_unification_double_angle.scss
@@ -0,0 +1,2 @@
+.a.b > x {a: b}
+.b > y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/90-test_nested_extender_with_sibling_selector.scss b/theme-compiler/tests/resources/sasslang/scss/90-test_nested_extender_with_sibling_selector.scss
new file mode 100644
index 0000000000..b9d495ce76
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/90-test_nested_extender_with_sibling_selector.scss
@@ -0,0 +1,2 @@
+.baz .foo {a: b}
+foo + bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/91-test_nested_selector_with_child_selector_hack_extendee.scss b/theme-compiler/tests/resources/sasslang/scss/91-test_nested_selector_with_child_selector_hack_extendee.scss
new file mode 100644
index 0000000000..928bc64f93
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/91-test_nested_selector_with_child_selector_hack_extendee.scss
@@ -0,0 +1,2 @@
+> .foo {a: b}
+foo bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/92-test_nested_selector_with_child_selector_hack_extender.scss b/theme-compiler/tests/resources/sasslang/scss/92-test_nested_selector_with_child_selector_hack_extender.scss
new file mode 100644
index 0000000000..d220fc8706
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/92-test_nested_selector_with_child_selector_hack_extender.scss
@@ -0,0 +1,2 @@
+.foo .bar {a: b}
+> foo bar {@extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/93-test_nested_selector_with_child_selector_hack_extender_and_extendee.scss b/theme-compiler/tests/resources/sasslang/scss/93-test_nested_selector_with_child_selector_hack_extender_and_extendee.scss
new file mode 100644
index 0000000000..9c890d9cb6
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/93-test_nested_selector_with_child_selector_hack_extender_and_extendee.scss
@@ -0,0 +1,2 @@
+> .foo {a: b}
+> foo bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/94-test_nested_selector_with_child_selector_hack_extender_and_extendee_and_newline.scss b/theme-compiler/tests/resources/sasslang/scss/94-test_nested_selector_with_child_selector_hack_extender_and_extendee_and_newline.scss
new file mode 100644
index 0000000000..b792d69f1f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/94-test_nested_selector_with_child_selector_hack_extender_and_extendee_and_newline.scss
@@ -0,0 +1,3 @@
+> .foo {a: b}
+flip,
+> foo bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.scss b/theme-compiler/tests/resources/sasslang/scss/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.scss
new file mode 100644
index 0000000000..73f6254f21
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/95-test_nested_selector_with_child_selector_hack_extender_and_sibling_selector_extendee.scss
@@ -0,0 +1,2 @@
+~ .foo {a: b}
+> foo bar {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/96-test_nested_target.scss b/theme-compiler/tests/resources/sasslang/scss/96-test_nested_target.scss
new file mode 100644
index 0000000000..6662dea791
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/96-test_nested_target.scss
@@ -0,0 +1,2 @@
+.foo .bar {a: b}
+.baz {@extend .bar}
diff --git a/theme-compiler/tests/resources/sasslang/scss/97-test_newline_near_combinator.scss b/theme-compiler/tests/resources/sasslang/scss/97-test_newline_near_combinator.scss
new file mode 100644
index 0000000000..b8a6026af4
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/97-test_newline_near_combinator.scss
@@ -0,0 +1,3 @@
+.a +
+.b x {a: b}
+.c y {@extend x}
diff --git a/theme-compiler/tests/resources/sasslang/scss/98-test_not_remains_at_end_of_selector.scss b/theme-compiler/tests/resources/sasslang/scss/98-test_not_remains_at_end_of_selector.scss
new file mode 100644
index 0000000000..c1af8b1b2a
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/98-test_not_remains_at_end_of_selector.scss
@@ -0,0 +1,2 @@
+.foo:not(.bar) {a: b}
+.baz {@extend .foo}
diff --git a/theme-compiler/tests/resources/sasslang/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss b/theme-compiler/tests/resources/sasslang/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss
new file mode 100644
index 0000000000..551764036f
--- /dev/null
+++ b/theme-compiler/tests/resources/sasslang/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss
@@ -0,0 +1 @@
+.foo {@extend .bar !optional}