Skip to content

Commit

Permalink
Test
Browse files Browse the repository at this point in the history
  • Loading branch information
rafaelfranca committed Dec 10, 2015
1 parent c35a637 commit 9e119cd
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 14 deletions.
1 change: 0 additions & 1 deletion lib/sprockets/loader.rb
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,6 @@ def load_from_unloaded(unloaded)
metadata: {
dependencies: dependencies,
map: [
{source: source_path, generated: [0, 0], original: [0, 0]}
]
}
})
Expand Down
2 changes: 1 addition & 1 deletion lib/sprockets/sass_processor.rb
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ def call(input)

map = SourceMapUtils.combine_source_maps(
input[:metadata][:map],
SourceMapUtils.decode_json_source_map(map.to_json(css_uri: ''))["mappings"]
SourceMapUtils.decode_json_source_map(map.to_json(css_uri: '', type: :inline))["mappings"]

This comment has been minimized.

Copy link
@schneems

schneems Dec 21, 2015

Member

What is going on in this line? I can't find the to_json docs.

This comment has been minimized.

Copy link
@rafaelfranca

rafaelfranca Dec 22, 2015

Author Member

This is telling to generate the source maps as inline file instead of as an external file. https://github.com/sass/sass/blob/bce9509f396225d721501ea1070a6871b708abb1/lib/sass/source/map.rb#L83

)

# Track all imported files
Expand Down
7 changes: 5 additions & 2 deletions lib/sprockets/sassc_processor.rb
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ def call(input)

map = SourceMapUtils.combine_source_maps(
input[:metadata][:map],
SourceMapUtils.decode_json_source_map(map)["mappings"]
change_source(SourceMapUtils.decode_json_source_map(map)["mappings"], input[:source_path])
)

context.metadata.merge(data: css, map: map)
Expand All @@ -44,14 +44,17 @@ def engine_options(input, context)
load_paths: input[:environment].paths,
importer: @importer_class,
source_map_embed: true,
source_map_file: '.',
sprockets: {
context: context,
environment: input[:environment],
dependencies: context.metadata[:dependencies]
}
}
end

def change_source(mappings, source)
mappings.each { |m| m[:source] = source }
end
end


Expand Down
7 changes: 6 additions & 1 deletion lib/sprockets/source_map_processor.rb
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,12 @@ def self.call(input)
map.map { |m| m[:source] }.uniq.compact.each do |source|
# TODO: Resolve should expect fingerprints
fingerprint = source[/-([0-9a-f]{7,128})\.[^.]+\z/, 1]
uri, _ = env.resolve!(source.sub("-#{fingerprint}", ""))

if fingerprint
source.sub!("-#{fingerprint}", "")
end

uri, _ = env.resolve!(source, pipeline: :source)
links << env.load(uri).uri
end

Expand Down
18 changes: 9 additions & 9 deletions test/test_source_maps.rb
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ def setup
assert_equal({
"version" => 3,
"file" => "coffee/main.js",
"mappings" => "AADA;AAAA,MAAA,sDAAA;IAAA;;EAAA,MAAA,GAAA;;EAAA,QAAA,GAAA;;EAAA,IAAA,QAAA;IAAA,MAAA,GAAA,CAAA,GAAA;;;EAAA,MAAA,GAAA,SAAA,CAAA;WAAA,CAAA,GAAA;EAAA;;EAAA,IAAA,GAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;EAAA,IAAA,GAAA;IAAA,IAAA,EAAA,IAAA,CAAA,IAAA;IAAA,MAAA,EAAA,MAAA;IAAA,IAAA,EAAA,SAAA,CAAA;aAAA,CAAA,GAAA,MAAA,CAAA,CAAA;IAAA,CAAA;;;EAAA,IAAA,GAAA,SAAA;AAAA,QAAA;IAAA,uBAAA;WAAA,KAAA,CAAA,MAAA,EAAA,OAAA;EAAA;;EAAA,IAAA,8CAAA;IAAA,KAAA,CAAA,YAAA,EAAA;;;EAAA,KAAA;;AAAA;SAAA,sCAAA;;mBAAA,IAAA,CAAA,IAAA,CAAA,GAAA;AAAA;;;AAAA",
"sources" => ["coffee/main.source-2ee93f5e7f3b843c3002478375432cf923860432879315335f4b987c205057db.coffee"],
"mappings" => "AACA;AAAA,MAAA,sDAAA;IAAA;;EAAA,MAAA,GAAW;;EACX,QAAA,GAAW;;EAGX,IAAgB,QAAhB;IAAA,MAAA,GAAS,CAAC,GAAV;;;EAGA,MAAA,GAAS,SAAC,CAAD;WAAO,CAAA,GAAI;EAAX;;EAGT,IAAA,GAAO,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,EAAU,CAAV,EAAa,CAAb;;EAGP,IAAA,GACE;IAAA,IAAA,EAAQ,IAAI,CAAC,IAAb;IACA,MAAA,EAAQ,MADR;IAEA,IAAA,EAAQ,SAAC,CAAD;aAAO,CAAA,GAAI,MAAA,CAAO,CAAP;IAAX,CAFR;;;EAKF,IAAA,GAAO,SAAA;AACL,QAAA;IADM,uBAAQ;WACd,KAAA,CAAM,MAAN,EAAc,OAAd;EADK;;EAIP,IAAsB,8CAAtB;IAAA,KAAA,CAAM,YAAN,EAAA;;;EAGA,KAAA;;AAAS;SAAA,sCAAA;;mBAAA,IAAI,CAAC,IAAL,CAAU,GAAV;AAAA;;;AA1BT",
"sources" => ["coffee/main.source.coffee"],
"names" => []
}, map)
end
Expand Down Expand Up @@ -115,8 +115,8 @@ def setup
assert_equal({
"version" => 3,
"file" => "babel/main.js",
"mappings" => ";;;;;;;;;;AADA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,CAAA,UAAA,CAAA;SAAA,CAAA,GAAA,CAAA;CAAA,CAAA,CAAA;AAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,CAAA,UAAA,CAAA,EAAA,CAAA;SAAA,CAAA,GAAA,CAAA;CAAA,CAAA,CAAA;;IAAA,WAAA;YAAA,WAAA;;AAAA,WAAA,WAAA,CAAA,QAAA,EAAA,SAAA,EAAA;0BAAA,WAAA;;AAAA,+BAAA,WAAA,6CAAA,QAAA,EAAA,SAAA,EAAA;GAAA;;eAAA,WAAA;;WAAA,gBAAA,MAAA,EAAA;AAAA,iCAAA,WAAA,wCAAA;KAAA;;;WAAA,yBAAA;AAAA,aAAA,IAAA,KAAA,CAAA,OAAA,EAAA,CAAA;KAAA;;;SAAA,WAAA;GAAA,KAAA,CAAA,IAAA;;AAAA,IAAA,SAAA,uBAAA,MAAA,CAAA,QAAA,0BAAA;MAAA,GAAA,EAAA,GAAA,EAAA,IAAA;;;;AAAA,WAAA,GAAA,CAAA,EAAA,GAAA,GAAA,CAAA;;;AAAA,YAAA,GAAA,GAAA;;AAAA,WAAA,GAAA,GAAA,CAAA;AAAA,WAAA,IAAA,IAAA,CAAA;;eAAA,GAAA;;;;;;;;;;;CAAA,EAAA,CAAA",
"sources" => ["babel/main.source-1acb9cf16a3e1ce0fe0a38491472a14a6a97281ceace4b67ec16a904be5fa1b9.es6"],
"mappings" => ";;;;;;;;;;AACA,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,UAAA,CAAC;SAAI,CAAC,GAAG,CAAC;CAAA,CAAC,CAAC;AACjC,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,UAAC,CAAC,EAAE,CAAC;SAAK,CAAC,GAAG,CAAC;CAAA,CAAC,CAAC;;IAEhC,WAAW;YAAX,WAAW;;AACJ,WADP,WAAW,CACH,QAAQ,EAAE,SAAS,EAAE;0BAD7B,WAAW;;AAEb,+BAFE,WAAW,6CAEP,QAAQ,EAAE,SAAS,EAAE;GAE5B;;eAJG,WAAW;;WAKT,gBAAC,MAAM,EAAE;AACb,iCANE,WAAW,wCAME;KAChB;;;WACmB,yBAAG;AACrB,aAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;KAC5B;;;SAVG,WAAW;GAAS,KAAK,CAAC,IAAI;;AAapC,IAAI,SAAS,uBACV,MAAM,CAAC,QAAQ,0BAAG;MACb,GAAG,EAAM,GAAG,EAEV,IAAI;;;;AAFN,WAAG,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC;;;AAEd,YAAI,GAAG,GAAG;;AACd,WAAG,GAAG,GAAG,CAAC;AACV,WAAG,IAAI,IAAI,CAAC;;eACN,GAAG;;;;;;;;;;;CAEZ,EACF,CAAA",
"sources" => ["babel/main.es6"],
"names"=>[]
}, map)
end
Expand Down Expand Up @@ -165,8 +165,8 @@ def setup
assert_equal({
"version" => 3,
"file" => "sass/main.css",
"mappings" => "AADA,MAAA;EAAA,MAAA,EAAA,CAAA;EAAA,OAAA,EAAA,CAAA;EAAA,UAAA,EAAA,IAAA;AAAA,MAAA;EAAA,OAAA,EAAA,YAAA;AAAA,KAAA;EAAA,OAAA,EAAA,KAAA;EAAA,OAAA,EAAA,QAAA;EAAA,eAAA,EAAA,IAAA",
"sources" => ["sass/main.source-86fe07ad89fecbab307d376bcadfa23d65ad108e3735b564510246b705f6ced1.scss"],
"mappings" => "AACE,MAAG;EACD,MAAM,EAAE,CAAC;EACT,OAAO,EAAE,CAAC;EACV,UAAU,EAAE,IAAI;AAGlB,MAAG;EAAE,OAAO,EAAE,YAAY;AAE1B,KAAE;EACA,OAAO,EAAE,KAAK;EACd,OAAO,EAAE,QAAQ;EACjB,eAAe,EAAE,IAAI",
"sources" => [fixture_path_for_uri('source-maps/sass/main.scss')],
"names" => []
}, map)
end
Expand Down Expand Up @@ -197,7 +197,7 @@ def setup
end


class TestSassSourceMaps < Sprockets::TestCase
class TestSasscSourceMaps < Sprockets::TestCase
def setup
@env = Sprockets::Environment.new
@env = Sprockets::Environment.new(".") do |env|
Expand Down Expand Up @@ -233,8 +233,8 @@ def setup
assert_equal({
"version" => 3,
"file" => "sass/main.css",
"mappings" => "AADA,GAAA,CAAA,EAAA,CAAA;EAAA,MAAA,EAAA,CAAA;EAAA,OAAA,EAAA,CAAA;EAAA,UAAA,EAAA,IAAA,GAAA;;AAAA,GAAA,CAAA,EAAA,CAAA;EAAA,OAAA,EAAA,YAAA,GAAA;;AAAA,GAAA,CAAA,CAAA,CAAA;EAAA,OAAA,EAAA,KAAA;EAAA,OAAA,EAAA,QAAA;EAAA,eAAA,EAAA,IAAA,GAAA",
"sources" => ["sass/main.source-86fe07ad89fecbab307d376bcadfa23d65ad108e3735b564510246b705f6ced1.scss"],
"mappings" => "AAAA,GAAG,CACD,EAAE,CAAC;EACD,MAAM,EAAE,CAAE;EACV,OAAO,EAAE,CAAE;EACX,UAAU,EAAE,IAAK,GAClB;;AALH,GAAG,CAOD,EAAE,CAAC;EAAE,OAAO,EAAE,YAAa,GAAI;;AAPjC,GAAG,CASD,CAAC,CAAC;EACA,OAAO,EAAE,KAAM;EACf,OAAO,EAAE,QAAS;EAClB,eAAe,EAAE,IAAK,GACvB",
"sources" => ["sass/main.source.scss"],
"names" => []
}, map)
end
Expand Down

0 comments on commit 9e119cd

Please sign in to comment.