Commit Graph

245 Commits

Author SHA1 Message Date
Marcin Kulik
ff153fff1a Make Terminal return already optimized snapshot 2013-09-20 23:05:34 +02:00
Marcin Kulik
0e2c1784c6 Use terminal binary as a base for Terminal 2013-09-20 23:05:33 +02:00
Marcin Kulik
e862acedb7 Animation frames generation on the backend 2013-09-10 21:29:17 +02:00
Marcin Kulik
9e152c3172 Sanitize all characters coming from TSM::Screen#draw
It happens that libtsm's screen_draw returns a character that can't be
properly encoded as utf-8. As what we get is only meant to be displayed
and not interpreted we can replace these invalid characters with a
questio mark, which is a common practice for printing invalid chars.
2013-08-29 15:10:46 +02:00
Marcin Kulik
26801d207f Make Asciicast use BufferedStdout instead of Stdout 2013-08-28 16:56:40 +02:00
Marcin Kulik
6962f49ec0 Fix spec for AsciicastDecorator#thumbnail 2013-08-27 20:39:42 +02:00
Marcin Kulik
b47fa27968 Refactor Snapshot to use Grid under the hood 2013-08-27 20:31:31 +02:00
Marcin Kulik
d324200b01 Add BufferedStdout class whose #each yields at 60 hz tops 2013-08-27 20:31:27 +02:00
Marcin Kulik
c775bc8b06 Use less spans for thumbnail rendering 2013-08-26 11:02:32 +02:00
Marcin Kulik
31a880b7aa Simplify Snapshot and its presenter 2013-08-25 20:49:23 +02:00
Marcin Kulik
34b39d0db3 Simplify the structure returned by Terminal#snapshot
Each screen character is in its own, separate cell now. In addition the char
attributes don't include attributes that are "falsy".
2013-08-25 17:41:04 +02:00
Marcin Kulik
b330f29dcd Define char encoding for a spec file 2013-08-25 17:17:20 +02:00
Marcin Kulik
731751650c Keep the lines shorther than 80 chars 2013-08-25 16:34:02 +02:00
Marcin Kulik
cdc2f01753 Find or build user from omniauth hash in the middleware 2013-08-19 17:08:13 +02:00
Marcin Kulik
40856933aa Support "blink" attribute in the thumbnails 2013-08-15 23:05:09 +02:00
Marcin Kulik
a53c8de5b9 Pass paths to decompressed stdout files to Stdout 2013-08-15 20:58:41 +02:00
Marcin Kulik
13119b2987 Display asciicast length on thumbnails 2013-08-14 20:40:24 +02:00
Marcin Kulik
2e9b0a4718 Remove boring empty trailing lines from thumbnails 2013-08-14 17:24:36 +02:00
Marcin Kulik
6acea6da70 Use tilde prefix for nickname only in profile url 2013-08-14 16:30:49 +02:00
Marcin Kulik
6db65b2a6c Serve asciicast as JSON in chunks 2013-08-13 19:52:54 +02:00
Marcin Kulik
d21be98a5c Adjust SnapshotCreator to the latest API changes in Terminal and Stdout 2013-08-13 19:52:54 +02:00
Marcin Kulik
0c3494d174 Require explicit call to Terminal#snapshot for getting the snapshot 2013-08-13 19:52:53 +02:00
Marcin Kulik
6c8dbf4173 Make Stdout provide data in chunks 2013-08-13 19:52:53 +02:00
Marcin Kulik
fa4c5e4664 Replace Bzip2Uploader#decompressed with #decompressed_path 2013-08-13 19:52:53 +02:00
Marcin Kulik
4e5468b54e Add feature spec for widget 2013-08-10 16:51:21 +02:00
Marcin Kulik
f5e47c3c8c Add request spec for asciicast upload 2013-08-08 15:41:57 +02:00
Marcin Kulik
9845802180 Use stub_model instead of rspec's double 2013-08-08 15:26:12 +02:00
Marcin Kulik
c22cb1cdcc Get rid of the asciicast comments that are not used anymore 2013-08-08 15:25:27 +02:00
Marcin Kulik
e1286b407e Use double instead of mock, stub instead of stub! to make rspec happy 2013-08-08 11:44:37 +02:00
Marcin Kulik
0a8cc6ff8a One more attempt to fix the memory leak 2013-08-06 12:50:38 +02:00
Marcin Kulik
4767442875 Make Snapshot#crop return the snapshot of exact requested height 2013-08-06 00:37:37 +02:00
Marcin Kulik
5ecf209a53 Add some TODO comments 2013-08-06 00:37:36 +02:00
Marcin Kulik
7d5a544650 Generate thumbnails from JSON snapshot via Snapshot/SnaphotPresenter 2013-08-06 00:37:36 +02:00
Marcin Kulik
148bd47756 Fix feature spec for visiting asciicast page 2013-08-06 00:37:35 +02:00
Marcin Kulik
ddf0e57b39 Update SnapshotWorker to generate colorful snapshots 2013-08-06 00:37:35 +02:00
Marcin Kulik
59e31baa1b Process incoming asciicast with AsciicastCreator 2013-08-06 00:37:35 +02:00
Marcin Kulik
86a4662fe5 Abstract stdout_data and stdout_timing as a single value object 2013-08-06 00:37:34 +02:00
Marcin Kulik
caa6c52759 Rename stdout to stdout_data, stdin to stdin_data 2013-08-06 00:37:34 +02:00
Marcin Kulik
55fe325ec4 Add Bzip2Uploader for uploading, retrieving and decompressing bzip2 files 2013-08-06 00:37:34 +02:00
Marcin Kulik
85f93a4490 Add spec for AsciicastSnapshotter 2013-08-06 00:37:33 +02:00
Marcin Kulik
1be93cac63 Use shortcut for #to_html stub on SnapshotPresenter 2013-08-06 00:37:33 +02:00
Marcin Kulik
56a2bb2378 Fix Snapshot#crop to not burn when height > line count 2013-08-06 00:37:33 +02:00
Marcin Kulik
d93ac84c21 Refactor AsciicastDecorator#thumbnail to render colorful thumbnail 2013-08-06 00:37:33 +02:00
Marcin Kulik
86f728364c Add Brush model 2013-08-06 00:37:32 +02:00
Marcin Kulik
e947524533 Add a simple model representing a terminal snapshot 2013-08-06 00:37:32 +02:00
Marcin Kulik
8daf2d0f7f Serialize Snapshot with Snapshot::Serializer 2013-08-06 00:37:32 +02:00
Marcin Kulik
a10a447c53 Make the snapshots the hashes 2013-08-06 00:37:32 +02:00
Marcin Kulik
9ef766f16b Don't require rspec/autorun in spec_helper
This is not really needed and conflicts with zeus
2013-08-06 00:37:31 +02:00
Marcin Kulik
50c3a7bca5 Remove the test that validates asciicast factory 2013-08-06 00:37:31 +02:00
Marcin Kulik
0b9ae12feb Use nice matcher for sidekiq job enqueues 2013-07-05 21:10:04 +02:00
Marcin Kulik
c5509c60b6 Update tests for Sidekiq 2013-07-05 19:50:42 +02:00
Marcin Kulik
2d6b60e027 Fix AsciicastDecorator#embed_script 2013-06-13 22:58:47 +02:00
Marcin Kulik
0f99198a1a Add spec for asciicasts#show as js 2013-06-13 22:41:06 +02:00
Marcin Kulik
df6bed3541 Merge branch 'master' into embed 2013-06-13 22:40:17 +02:00
Marcin Kulik
8a52605266 Add spec for AsciicastDecorator#embed_script 2013-06-13 22:39:34 +02:00
Marcin Kulik
013eade63c Count view only once in the same browser 2013-06-13 22:26:27 +02:00
Marcin Kulik
847f8a4a3a Run specs in random order 2013-06-06 17:06:02 +02:00
Marcin Kulik
fbbd182d39 Keep the lines < 80 chars long 2013-05-30 12:03:08 +02:00
Marcin Kulik
078b04e3a1 Fix asciicast page when its author has other asciicasts 2013-05-28 11:13:01 +02:00
Marcin Kulik
4c5c0c7d0e Fix logging in after draper upgrade 2013-05-28 11:13:01 +02:00
Marcin Kulik
634d0d5aec Rename expect_browse_section to expect_browse_links 2013-05-28 11:13:01 +02:00
Marcin Kulik
7659fe722e Fix UsersController#show 2013-05-28 11:13:01 +02:00
Marcin Kulik
3e2bc439a0 Make sure docs pages are fine 2013-05-28 11:13:01 +02:00
Marcin Kulik
61ac829715 Add missing feature specs 2013-05-28 11:13:01 +02:00
Marcin Kulik
f5a91c680b Fix draper vs kaminari issue 2013-05-28 11:13:00 +02:00
Marcin Kulik
fcc39cc1cd Inject factory_girl create/build methods into example groups 2013-05-28 11:13:00 +02:00
Marcin Kulik
6813755280 Use poltergeist as js driver for capybara 2013-05-28 11:13:00 +02:00
Marcin Kulik
f4c9122f74 Clean db before whole suite 2013-05-28 11:13:00 +02:00
Marcin Kulik
dda849a6a6 Generate coverage only when requested 2013-05-28 11:13:00 +02:00
Marcin Kulik
829d476495 Shorter Darwin-like uname 2012-12-11 00:58:45 +01:00
Marcin Kulik
b284781620 Cover all scenatios in asciicasts controller specs 2012-12-09 21:25:45 +01:00
Marcin Kulik
4a9036a9d9 Cover unauthenticated path in user_token controller spec 2012-12-09 21:24:57 +01:00
Marcin Kulik
b4095bd372 Use truncation cleaning strategy only for js tagged specs 2012-12-09 16:27:36 +01:00
Marcin Kulik
c0faca04f0 Namespace ControllerMacros module 2012-12-09 16:27:12 +01:00
Marcin Kulik
a6c06a3ce7 More AsciicastDecorator specs 2012-12-09 16:15:17 +01:00
Marcin Kulik
e236584458 Add explicit routing in ApplicationController spec 2012-12-01 21:31:59 +01:00
Marcin Kulik
edca2027ce Fix AsciicastsController#destroy spec 2012-12-01 20:38:22 +01:00
Marcin Kulik
26923b64a5 Do not use set_current_view_context for decorator specs 2012-12-01 20:06:33 +01:00
Marcin Kulik
92dde22afe Use proper verb in SessionsController specs 2012-12-01 19:18:34 +01:00
Marcin Kulik
d0e16853e0 Pass required action params in SessionsController spec 2012-12-01 19:06:20 +01:00
Marcin Kulik
67a182d6ca Use new FactoryGirl syntax exclusively 2012-12-01 18:45:06 +01:00
Marcin Kulik
dd59b7db32 Update AnsiInterpreter spec to reflect interface change 2012-12-01 16:15:00 +01:00
Marcin Kulik
243bffee82 Additional AnsiInterpreter specs 2012-11-29 18:44:42 +01:00
Marcin Kulik
318fa52d94 Update Brush specs 2012-11-29 18:44:42 +01:00
Marcin Kulik
70b1f27234 "Reverse video" support 2012-11-29 18:44:42 +01:00
Marcin Kulik
454228bc28 More specs for Brush 2012-11-29 18:44:42 +01:00
Marcin Kulik
78ecdcbe76 Remove old obsolete specs 2012-11-29 18:44:42 +01:00
Marcin Kulik
d95da9635a Update AnsiInterpreter specs to handle new implementation 2012-11-29 18:44:41 +01:00
Marcin Kulik
c201c510e7 Move sgr_interpreter_spec to vt dir 2012-11-29 18:44:41 +01:00
Marcin Kulik
2e06e9d39d More specs for Brush 2012-11-29 18:44:41 +01:00
Marcin Kulik
fa9d2637a8 Proper specs for SgrInterpreter 2012-11-29 18:44:41 +01:00
Marcin Kulik
1aad013bb3 jasmine config 2012-11-29 18:44:41 +01:00
Marcin Kulik
ab387e6fdf Use jasmine-rails and jasmine-headless-webkit for headless JS testing 2012-11-29 18:44:41 +01:00
Marcin Kulik
70af02102e 7 more full playback tests 2012-11-22 00:42:21 +01:00
Marcin Kulik
f39dc918f2 Use longer wait time for capybara in playback test 2012-11-22 00:06:22 +01:00
Marcin Kulik
a96c5e381b Move test helper methods inside the describe block 2012-11-21 23:53:48 +01:00
Marcin Kulik
92a09476e8 Check if playback succeeded in capybara test 2012-11-20 18:47:22 +01:00
Marcin Kulik
26a6979c8e Visit raw asciicast page 2012-11-19 23:15:43 +01:00
Marcin Kulik
a2ee3b1d10 Cut the lines 2012-11-19 00:37:25 +01:00
Marcin Kulik
0e535b4d43 Integration tests for player page 2012-11-19 00:19:42 +01:00