spec/xcpretty/formatters/formatter_spec.rb in xcpretty-0.1.7 vs spec/xcpretty/formatters/formatter_spec.rb in xcpretty-0.1.8
- old
+ new
@@ -10,63 +10,79 @@
before(:each) do
@formatter = Formatter.new(true, true)
end
it "initializes with unicode" do
- @formatter.use_unicode?.should be_true
+ @formatter.use_unicode?.should be_truthy
end
it "initializes with color" do
- @formatter.colorize?.should be_true
+ @formatter.colorize?.should be_truthy
end
it "outputs to new lines by default" do
@formatter.optional_newline.should == "\n"
end
it "formats cocoapods errors" do
@formatter.format_error("The sandbox is not in sync...").should ==
- "\n#{@formatter.red("⌦ The sandbox is not in sync...")}\n\n"
+ "\n#{@formatter.red("⌦ The sandbox is not in sync...")}\n\n"
end
it "formats compiling errors" do
@formatter.format_compile_error("file", "path/to/file", "expected valid syntax",
"[a should",
" ^").should ==
%Q(
-#{@formatter.red('⌦ ')}path/to/file: #{@formatter.red("expected valid syntax")}
+#{@formatter.red('⌦ ')}path/to/file: #{@formatter.red("expected valid syntax")}
[a should
#{@formatter.cyan(" ^")}
)
end
+ it "formats compiling warnings" do
+ reason = "format specifies type 'id' but the argument has type 'int' [-Wformat]"
+
+ @formatter.format_compile_warning( "file", "path/to/file", reason,
+%Q( NSLog(@"alsdkflsakdj %@", 1);),
+%Q( ~~ ^)).should ==
+
+%Q(
+#{@formatter.yellow('⚠️ ')}path/to/file: #{@formatter.yellow(reason)}
+
+ NSLog(@"alsdkflsakdj %@", 1);
+#{@formatter.cyan(" ~~ ^")}
+
+)
+ end
+
it "formats linker undefined symbols by default" do
@formatter.format_undefined_symbols("Undefined symbols for architecture x86_64",
'_OBJC_CLASS_$_CABasicAnimation',
'objc-class-ref in ATZRadialProgressControl.o').should == %Q(
-#{@formatter.red("⌦ Undefined symbols for architecture x86_64")}
+#{@formatter.red("⌦ Undefined symbols for architecture x86_64")}
> Symbol: _OBJC_CLASS_$_CABasicAnimation
> Referenced from: objc-class-ref in ATZRadialProgressControl.o
)
end
it "formats linker duplicate symbols by default" do
@formatter.format_duplicate_symbols("duplicate symbol _OBJC_IVAR_$ClassName._ivarName in",
['/Users/username/Library/Developer/Xcode/DerivedData/App-arcyyktezaigixbocjwfhsjllojz/Build/Intermediates/App.build/Debug-iphonesimulator/App.build/Objects-normal/i386/ClassName.o',
'/Users/username/Library/Developer/Xcode/DerivedData/App-arcyyktezaigixbocjwfhsjllojz/Build/Products/Debug-iphonesimulator/libPods.a(DuplicateClassName.o)']).should == %Q(
-#{@formatter.red("⌦ duplicate symbol _OBJC_IVAR_$ClassName._ivarName in")}
+#{@formatter.red("⌦ duplicate symbol _OBJC_IVAR_$ClassName._ivarName in")}
> ClassName.o
> libPods.a(DuplicateClassName.o)
)
end
if RUBY_VERSION > '1.8.7'
it "formats failures per suite" do
- Syntax.stub(:highlight) { |text| text }
+ Syntax.stub(:highlight) { |snippet| snippet.contents }
first_path = File.expand_path('spec/fixtures/NSStringTests.m:46')
second_path = File.expand_path('spec/fixtures/NSStringTests.m:57')
failures = {