Commit Graph

2921 Commits

Author SHA1 Message Date
John Scipione
dc0b0016ad StringSearchTest: Add unit tests for new methods 2017-02-21 18:03:03 -08:00
John Scipione
17a4134733 StringSearchTest: automatic whitespace cleanup 2017-02-21 18:03:03 -08:00
Augustin Cavalier
b6f76ebe71 s/OpenBeOS License/MIT License/ universally, as they're the same thing.
Fixes #8681.
2017-02-09 22:09:56 -05:00
Freeman Lou
aa3083e086 Style fixes to various parts of the system.
Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

This patch was never applied after GSoC 2012. Rebase the parts that
still apply so we can close the ticket.

Fixes #9490.
2017-01-29 22:47:28 +01:00
Andrew Aldridge
f31b1a2faf Implement scrypt-based password hashing
Signed-off-by: Axel Dörfler <axeld@pinc-software.de>
2017-01-17 23:09:04 +01:00
Dario Casalinuovo
7561d9ac5d Populate media/experimental with future media_kit classes
* Node implementations headers are move into src/kits/media.
2017-01-16 23:04:14 +01:00
Dario Casalinuovo
fdfd8a502e General MediaClient cleanup
* Avoid setting fRunning in different places.
* Fix SimpleMediaOutput kind mismatch.
* Other minor fixes.
2017-01-15 19:28:14 +01:00
Adrien Destugues
bdd02e0d9d BString: rename SetCharAt to SetByteAt
Makes it clear that it operates on bytes, not unicode codepoints.
Thanks to mmlr for remembering me of this subtlety.
2017-01-12 22:03:51 +01:00
Adrien Destugues
7556ae845b Fix unit tests for BString API change. 2017-01-11 21:54:31 +01:00
Dmytro Shynkevych
0e0f49e799 libroot: Implemented pthread barriers
This is an implementation of pthread barriers pursuant to the relevant specification.

Barriers are essentially a special case of conditional variables,
such that all threads waiting on one are woken up when the number of
waiters reaches a number provided at the initialization of the barrier.
In view of that, this implementation mimics the implementation of pthread_cond,
except it is more specialized and self-contained.

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2016-12-30 11:32:04 +01:00
Jérôme Duval
9969137ced fork(): Follow-up fix to 17b2a3cfc.
* Ingo rightly noticed that the defer_signals counter is reinitialized on
  thread's user area creation. Setting the flag THREAD_CREATION_FLAG_DEFER_SIGNALS
  indeed gives the expected behavior, deferring signals until undefer_signals() is
  called in the child thread. Thanks for the review and fix suggestion.
* Added a simple test showing the values of the defer_signals counter after fork().
2016-12-18 09:44:03 +01:00
Dario Casalinuovo
ecb395852e Introduce BSimpleMediaClient
* The idea is to move the callback based mechanism into a derived
class. The objects can be composed to create working systems.
* The BMediaClient class supply RegisterInput/RegisterOutput
and BeginInput/BeginOutput is moved to BSimpleMediaClient.
* Various minor fixes.
2016-11-29 01:22:35 +01:00
Dario Casalinuovo
6d0255216e MediaClient: Introduce BMediaInput and BMediaOutput 2016-11-25 17:38:44 +01:00
Dario Casalinuovo
8a8384b47f media_client test: Include debug header 2016-11-25 00:07:20 +01:00
Dario Casalinuovo
ace98a8db2 media_client test: Add delayed mode when debugging 2016-11-24 18:21:51 +01:00
Dario Casalinuovo
8e980a4066 media_client test: Set an actual format for connections 2016-11-24 00:27:58 +01:00
Dario Casalinuovo
5ec9bd1eff MediaClient: general cleanup 2016-11-18 17:46:19 +01:00
Dario Casalinuovo
ed0a5452c2 media_client_test: Add more complex tests 2016-11-17 18:47:38 +01:00
Dario Casalinuovo
63b4dd8cef Add simple BMediaClient test 2016-11-17 02:44:42 +01:00
Adrien Destugues
f4db7fdc68 BUrl: allow URLs without protocol or authority again.
Parsing an URL can never fail. The regexp is designed to match any
input. In the worst case, everything will end up in the "path"
component. WebPositive relies on this to generate file URLs from a plain
path.

URLs without a protocol are also possible, and can be used with an
implicit protocol. A typical example is network shares sometimes noted in
"//host.domain/path/file" form.

Add tests for these two cases and fix the parser to behave as expected.
2016-11-05 13:01:36 +01:00
Adrien Destugues
a9af524dbb BPrintJob test: build fix. But the app crashes. 2016-11-05 13:01:36 +01:00
Andrew Lindesay
cf65729463 Url: implement same URL parsing logic in C/C++ code
- Remove uses of group matching regular expression, not available on all
  build hosts,
- Parsing is faster than our old regexp engine.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

- Fixes #13002
- Fixed some indentation (tabs vs space), please configure your editor
  properly.
2016-10-31 09:14:44 +01:00
Adrien Destugues
f004acb098 HttpDate: fix parsing of 2-digit year dates.
Fixes #13043.
Added the affected cookies to the testsuite to avoid future regressions.
2016-10-31 08:59:23 +01:00
Dario Casalinuovo
0ba82236bd Streaming: Remove any pointer BUrl argument
* There's no need to pass BUrl by pointer, this is
potentially dangerous and leaky without any advantage,
copying is definitely safer.
2016-06-24 19:00:38 +02:00
Andrew Lindesay
fa2dd9c45f BPackageInfo::Parser: Validate URL strings.
Fixes #12710.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
I fixed the modifications to the Jamfiles in src/bin, they were all wrong
in the patch.
2016-06-18 18:40:07 -04:00
Dario Casalinuovo
2838795413 streamer_sniff_test: Little improvements
* Print tracks detected count.
* Delete media file before to exit.
2016-05-31 01:15:09 +02:00
Dario Casalinuovo
e7a7cd4eda Add streamer_sniff_test
* This is a simple test that open an url for streaming using
BMediaFile, the purpose is to test if streamers sniffing work
well.
2016-05-19 02:08:39 +02:00
Jérôme Duval
f022c304b0 readdir_r(): uses the logic of readdir()...
to retrieve more than one entry.
* readdir_r() is now affected by rewinddir(), thus fixing #12755.
* extends dirent_test with readdir_r().
2016-05-07 16:40:53 +02:00
Adrien Destugues
884412df8e Fix test_app_server build, again
- Interface Kit tests use a View class which is not BView, and has no
SetViewUIColor.
- Libexpat is now in a separate package.
- Shouldn't we add this to the buildbots so we can cath the breakage?
2016-02-14 21:12:33 +01:00
Kostadin Damyanov
00bb5b5957 unitests: fix the symlink to the resources directory
Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
2016-01-27 19:44:03 -05:00
Jessica Hamilton
b8878f83ca Build: adjust Jamfiles in unittests for libshared.a change. 2016-01-16 15:44:26 +13:00
Rene Gollent
8028ede7db Build: Add architecture rule for libshared.a.
- As suggested by Ingo, add libshared.a to the architecture name map.
  This allows it to be linked by its short name like other frequently
  used libraries.
- Adjust all Jamfiles referencing the lib accordingly.
2016-01-15 21:12:24 -05:00
looncraz
d231c2a7a5 tests: Convert to using Set*UIColor.
Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
Patches 0018-0019 from looncraz.
2016-01-04 07:15:57 -05:00
Augustin Cavalier
d8ca833a35 SliderTest: dos2unix. 2016-01-04 07:10:54 -05:00
Simon South
dbf060a3f7 libroot: Add brk() and sbrk().
This commit replaces the placeholder implementation of sbrk(), which
operated on a process' heap, with real implementations of brk() and
sbrk() that adjust a process' program break.

* unistd.h: Add standard definitions of brk() and sbrk(); include
  stdint.h for intptr_t.
* thread.cpp: Recognize RLIMIT_AS and RLIMIT_DATA resource limits
  (both currently unlimited); order limit identifiers alphabetically.
* arch-specific.cpp: Remove sbrk_hook().
* malloc_debug_api.cpp: Remove sbrk_hook().
* unistd/Jamfile: Build brk.c instead of sbrk.c.
* unistd/brk.c: Add.
* unistd/sbrk.c: Delete (placeholder implementation).
* libroot_stubs.c: Remove sbrk_hook().
* libroot_stubs_legacy.c: Remove sbrk_hook().
* src/tests/.../posix/Jamfile: Build brk_test.c.
* brk_test.c: Add (simple unit test that demonstrates behaviour of
  sbrk()).

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2015-11-22 17:59:22 +01:00
Julian Harnath
345d9bb4a2 test_app_server: fix build 2015-11-18 14:04:19 +01:00
Julian Harnath
6109a2086d Merge branch 'app_server'
Conflicts:
	src/kits/interface/PicturePlayer.cpp
	src/servers/app/ServerPicture.cpp

In addition, the following files were also adapted to master branch
BPicture changes during the merge:
	src/kits/interface/PicturePlayer.h
	src/servers/app/PictureBoundingBoxPlayer.cpp
2015-11-10 23:09:54 +01:00
Simon South
75c31ae28d system: Build using public elf.h header
Reduce duplication of code by

* Removing from elf_common.h definitions available in os/kernel/elf.h
* Deleting elf32.h and elf64.h
* Renaming elf_common.h to elf_private.h
* Updating source to build using public and private ELF header files
  together

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
2015-11-07 11:49:56 +13:00
Simon South
6abbd31061 unittests: Build copied BAppTest files
This adds to the "unittests" target a dependency on the
"AppTestRunApp3a" (etc.) files meant to be copied as part of the
BApplication test suite so they are generated when "jam unittests" is
run.

* TestsRules: Add "UnitTestDependency" rule.
* testapps/Jamfile: Make unit tests depend on copied files.

Fixes #12441.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2015-11-01 14:19:04 +01:00
Simon South
1a28be27e8 Fix unittests build.
Signed-off-by: John Scipione <jscipione@gmail.com>
2015-10-27 10:28:36 -07:00
Axel Dörfler
d9bb9513c5 launch_daemon: "file_exists" now resolves $HOME, and '~'. 2015-10-19 21:22:21 +02:00
Stefano Ceccherini
e5f9dfebd7 FlattenPictureTest: Add FillTriangle() with gradients test 2015-09-18 23:20:09 +02:00
Stefano Ceccherini
00c573d643 FlattenPictureTest: Add tests for FillRoundRect with gradients 2015-09-18 23:20:09 +02:00
Stefano Ceccherini
b8c65995cd FlattenPictureTest: Add tests for FillRegion with gradients 2015-09-18 23:20:08 +02:00
Stefano Ceccherini
7cf26360d9 FlattenPictureTest: Add failing test
InvertRect, when mixed with SetDrawingMode calls, fails to draw correctly
to a BPicture.
2015-09-18 23:20:08 +02:00
Stefano Ceccherini
abf565b12b FlattenPictureTest: add tests for Gradients.
None of the tests pass. BPicture currently doesn't have support for gradients.
Also add DrawString with offsets test.
2015-09-17 22:54:05 +02:00
Julian Harnath
71cc4d4998 Merge branch 'master' into app_server
Conflicts:
	src/kits/app/Roster.cpp
2015-09-01 20:07:21 +02:00
Michael Lotz
5ce7069d15 Add script that prints the uptime after waiting for all servers.
It waits for the message port of each application to become available
using waitfor and then waits for the application to actually reply
using hey. This establishes the criterion of the boot process being
complete as "all servers (and Tracker & Deskbar) are started and
respond to messages".
2015-08-29 19:15:47 +02:00
Julian Harnath
e3d7394869 app_server: fix test-app_server for launch_daemon changes
* Make test-app_server work again in a launch_daemon environment

* test_registrar gets a separate signature and port name again so the
  host system can distinguish it from the system registrar

* AppServer is normally a BServer now, however, there can't be two
  BApplications in one team. A class TestServerLoopAdapter is added,
  which becomes the base class of AppServer instead of BServer when
  compiling for libbe_test. It's an adapter class which looks towards
  AppServer as it if was a BServer, but internally it is derived from
  MessageLooper (like the old AppServer before the transition to
  BServer).

  This way, AppServer can stay a BServer in normal builds and it also
  avoids having to use too many #ifdefs to distinguish the two
  versions.
2015-08-23 01:00:32 +02:00
Michael Lotz
5d4501aa01 Assorted whitespace cleanup and typo fixes. 2015-08-20 21:54:41 +02:00
Julian Harnath
2a58d5432d Merge branch 'master' into app_server 2015-08-15 11:12:35 +02:00
Stefano Ceccherini
a361dc5a17 Update ChannelSliderTest to add limit labels for individual channels 2015-08-01 15:00:36 +02:00
Fredrik Holmqvist
0cd38980a3 Add unit tests specific for #12208. Pass depends on network.
NetworkAddressTest passes (most) tests when you have network.
When no network interface (ie -net none in QEMU) tests take forever and
more tests fail.
When network interface exists but is disabled in Haiku, tests are fast but
more tests fail.
2015-07-28 22:13:23 +02:00
Alexander von Gluck IV
89de782660 test/kits/net: Fix build of cookie_test 2015-07-26 09:55:45 -05:00
Alexander von Gluck IV
eef1c442a3 test/kits/net: Fix build of NetEndpointTest 2015-07-26 09:47:50 -05:00
Julian Harnath
551438b9be app_server: add new BView layers API
* Add new methods
    BView::BeginLayer(uint8 opacity)
    BView::EndLayer()

* All drawing between begin and end of a layer is redirected onto an
  intermediate bitmap. When ending the layer, this bitmap is
  composited onto the view with the opacity given when the layer was
  started.

* Layers can be nested arbitrarily and will be blended onto each
  other in order. There can also be any arbitrary interleaving of
  layer begin/end and drawing operations.

* Internally, drawing commands are redirected into a BPicture between
  BeginLayer and EndLayer (but client code need not know or care
  about this). Client code can also start/end other BPictures while
  inside a layer.

* Uses the PictureBoundingBoxPlayer to determine the size of the
  layer bitmap before allocating and drawing into it, so it does not
  allocate more memory than necessary and -- more importantly -- it
  will not alpha-composite more pixels than necessary.

* Drawing mode is always set to B_OP_ALPHA, blend mode to
  (B_PIXEL_ALPHA, B_ALPHA_COMPOSITE) while inside layers. This is
  necessary for (a) correct compositing output and (b) for
  redirection of drawing into the intermediate bitmap, which uses the
  renderer_region offset (in B_OP_COPY, the Painter does not use the
  AGG renderer methods, it directly accesses the pixel data. This
  would access out-of-bounds without the offset, so B_OP_COPY cannot
  be allowed.)
  To ensure these modes aren't changed, BView::SetDrawingMode()
  and BView::SetBlendingMode() are ignored while inside a layer.

* The main motivation behind this new API is WebKit, which internally
  expects such a layers functionality to be present. A performant and
  reusable implementation of this functionality can only be done
  server-side in app_server.
2015-07-25 16:35:52 +02:00
Julian Harnath
8511f6ac9b app_server: fix ServerPicture::SyncState pen size
* Should use the unscaled pen size here because we also write down
  the current scale, and we don't want to scale the pen twice.
2015-07-25 16:31:20 +02:00
Julian Harnath
ad53a0d999 app_server: add unit test add-on, test for SimpleTransform
* app_server currently does not have any real unit tests, making
  changes more difficult and riskier. A new directory unit_tests with
  a test add-on is added in app_server's tetsts directory to hold
  future unit tests.

* Add test for SimpleTransform class
2015-07-25 16:31:19 +02:00
Julian Harnath
ab1bd2fd07 app_server: rename DrawingContext to Canvas
* Better reflects the purpose of the class: an interface for things
  in which we can draw (e.g. a View)

* Accordingly rename OffscreenContext to OffscreenCanvas
2015-07-25 16:30:29 +02:00
Axel Dörfler
d54bb194d7 launch_daemon: Empty conditions are now NULL.
* Instead of an empty and-condition.
2015-07-22 20:45:06 +02:00
Axel Dörfler
95d93d2ea9 launch_daemon: Fixed empty on/if parsing.
* An extra empty message was mistakenly created.
2015-07-22 20:45:02 +02:00
Axel Dörfler
5a76694819 launch_daemon: Added events parsing.
* Including tests, also for the environment parsing.
2015-07-22 20:44:34 +02:00
Axel Dörfler
3888dd6e73 launch_daemon: Fixed condition tests build.
* ConditionContext changed.
2015-07-22 20:44:30 +02:00
Axel Dörfler
e0fc09b439 launch_daemon: Conditions now know if they are constant.
* This allows to remove a job in the init phase already, if its
  condition is not only constant, but also failing.
* Also removed the special Job::LaunchInSafeMode() method; this is now
  done using the conditions (the config option no_safemode remains,
  though).
2015-07-22 20:43:13 +02:00
Axel Dörfler
004cd6709d launch_daemon: Added run directive.
* Allows to conditionally (or unconditionally) launch targets.
* Including tests for the settings parser.
* FirstBootPrompt is now launched when deemed necessary (as in
  the Bootscript).
2015-07-22 20:43:08 +02:00
Axel Dörfler
0e347cb203 launch_daemon: Added condition tests. 2015-07-22 20:42:54 +02:00
Axel Dörfler
1e9c987102 launch_daemon: Added basic support for conditions.
* Admittedly not very well thought out, but it should be good
  enough for now; it doesn't really make sense to initialize jobs
  that is never run due to failed conditions.
* Job, and Target now have a common base class BaseJob that deals
  with the conditions.
2015-07-22 20:42:41 +02:00
Axel Dörfler
f7cf381a14 launch_daemon: Completed condition parser. 2015-07-22 20:42:36 +02:00
Axel Dörfler
e73c936699 launch_daemon: Started working on condition parsing.
* Moved related test code from DriverSettingsMessageAdapterTest to the
  SettingsParser class.
* Added SettingsParserTest class -- most tests already succeed, but not
  all; support for the flattened "not" is not working yet.
2015-07-22 20:42:32 +02:00
Axel Dörfler
c4b6278c02 DriverSettingsMessageAdapter: added "wildcard" support.
* You can now add arbitrarily named fields to the message as well,
  without having them all specified in the template.
* Also added a missing converter method that is called when there
  are no values to add, and implemented all methods in the base
  class, so that you only have to implement the methods you actually
  need.
2015-07-22 20:42:22 +02:00
Axel Dörfler
4bf862e368 syslog_daemon: Converted to BServer.
* Instead of letting the kernel search for the syslog port, the
  daemon now registers itself with the kernel (which even solves
  a TODO).
* A port is created for the actual log messages from the launch_daemon,
  and used on start.
* However, the SyslogTest does not yet work, due to the BMessage <->
  KMessage communication problems.
2015-07-22 20:40:47 +02:00
Dario Casalinuovo
fb6c8a0479 NodeTest: Add GetNodeAttributesFor test 2015-07-13 18:13:48 +02:00
Dario Casalinuovo
5720dfd49a MediaKit: Update NodeTest
* Update it to actual API and restore build.
* Add SyncToNode test.
2015-07-10 18:46:18 +02:00
Philippe Saint-Pierre
cdec47c927 Workaround timing issues in Chart
When run on a VM (VBox, vmware), the timing calculations done were giving weird
results (< 1ms), messing with the logic (div by zero introduced).

Should take care of ticket #89.
2015-07-02 16:12:32 -04:00
Augustin Cavalier
26de45da21 posixtestsuite: Delete from tree.
The Open POSIX Testsuite can now be found at
https://github.com/haiku/open_posix_testsuite - most of the patches
can be found in "master", and the full Git history of this directory
can be found in the "from_haiku_trunk" branch (the patches there
should eventually be merged to "master", whenever someone has time
to look at it.)
2015-06-29 16:46:10 -04:00
Augustin Cavalier
53711093fa BeServed: delete from tree.
Nobody did anything significant with it, so it now lives over at
https://github.com/HaikuArchives/BeServed.
2015-06-23 16:54:48 -04:00
Augustin Cavalier
4fe78e3499 tests: Convert a lot of RSRCs to RDEFs. 2015-06-22 15:39:47 -04:00
Adrien Destugues
a558d18527 Revert "filesystems: we aren't BeOS, so we can safely use -O2(+)."
This reverts commit ae495ca8fe.

My system volume was mysteriously corrupted while booting or shutting down today,
enough to make it unbootable and KDL on attempt to mount it. I'm assuming our gcc2
still isn't safe with regard to -O2 optimization of filesystems, and revert this,
until proven wrong (eg. by running test suites and FS stress tests and finding no
issues.

Axel comented on the commit saying it probably was not a good idea, but no action was
taken. Should we setup a better commit review system?
2015-06-22 18:51:03 +02:00
Augustin Cavalier
ae495ca8fe filesystems: we aren't BeOS, so we can safely use -O2(+). 2015-05-08 13:28:01 -04:00
Michael Lotz
ffba66060b UserlandFS: Make 64 bit clean and enable build for x86_64.
I did not bother to fix the BeOS kernel emulation, so this part is
still left out of the x86_64 build.
2015-03-29 16:25:17 +02:00
Jérôme Duval
9f543f8044 Fix unittests build. 2015-03-27 20:37:23 +01:00
Axel Dörfler
d044457531 BNetworkAddress::IsEmpty() now detects empty ipv4/6.
* Until now, only AF_UNSPEC addresses could be empty.
* Now, the unspecified IPV4/IPv6 address is considered empty, too.
* This corresponds to how the kernel modules handles this.
2015-03-27 13:25:29 +01:00
Axel Dörfler
687d0bc272 DriverSettingsMessageAdapter: fixed converter signature.
* The ConvertFromDriverSettings() method missed the current value
  index.
* Completed unit tests, and enabled them all.
2015-03-27 13:25:28 +01:00
Axel Dörfler
9f218b4e2d DriverSettingsMessageAdapter: fixed various issues.
* _AddParameter() would ignore all BMessage::Add*() errors.
* _ConvertFromDriverParameter() would ignore most intermediate error,
  but would fail badly over some incorrect settings file.
* Also, it checked for the parent value for each parameter, which
  doesn't make any sense, but would add as often as there are
  parameters -- which also may be none, in which case the value
  got ignored.
2015-03-27 13:25:28 +01:00
Michael Lotz
d0f53f151d StickIt: Don't close the app when closing a JoystickWindow.
Since it now actually works to open multiple windows for different
devices, don't close the app when closing the device window.
2015-02-15 10:07:08 +01:00
Michael Lotz
e2d7e6c4be StickIt: Construct a new BJoystick object to pass to the window.
Previously the same BJoystick object was reused when opening a new
window, which caused all windows to show the data of the same device.
2015-02-15 10:07:05 +01:00
Alexander von Gluck IV
1c646c0bcd tests/posix: Drop bonnie++, recipe exists and not api test 2015-02-02 18:24:01 +00:00
Alexander von Gluck IV
3b8ca9ebdf tests: math_test, use std:isnan vs isnan
* As far as I can tell, you're not supposed to
  use cmath isnan from cpp as the std namespace
  includes it
* libroot Tests now build again.
2015-02-02 18:06:13 +00:00
Alexander von Gluck IV
048ffc1b1e tests: Fix wording of echo. No func change 2015-02-02 16:51:59 +00:00
Alexander von Gluck IV
4a961136b7 tests: add cstring to math_test for str funcs 2015-02-02 16:47:20 +00:00
Alexander von Gluck IV
ad91a99198 tests: The wchar header actually looks for _GNU_SOURCE
* We we are pretty mixed here. See #11818
2015-02-02 16:30:23 +00:00
Alexander von Gluck IV
fc8aebca3b tests: fix signal_in_allocator_test printf type 2015-02-02 16:18:05 +00:00
Alexander von Gluck IV
f6faff8960 tests: check for _USE_GNU and define sighandler_t is not (matching signal.h logic) 2015-02-02 16:17:42 +00:00
Alexander von Gluck IV
2ea35f1cb3 tests: Skip setjmp_test2.S test on non-x86 platforms
* We'll need to rewrite this for each arch..
2015-02-02 15:55:10 +00:00
Alexander von Gluck IV
0d5cfeec92 tests: We can no longer open /bin/sh r/w due to PM for flock
* Use /etc/passwd
2015-02-02 15:47:23 +00:00
Alexander von Gluck IV
b8be4f7268 tests: Fix libroot flock pointer size on non-32bit platforms 2015-02-02 15:43:16 +00:00
Adrien Destugues
ed00de38d9 Midi test1: style fixes. 2015-02-02 08:56:38 +01:00
Adrien Destugues
3b520fdcd4 Fix missing include in NetworkInterfaceTest. 2015-01-21 11:18:55 +01:00
Axel Dörfler
7fb1396861 BFS B+tree test: use set to ensure string uniqueness.
* The previous solution was rather slow, and also could produce
  duplicates under some circumstance.
2015-01-15 20:30:50 +01:00
Axel Dörfler
758cfd808a BFS B+tree test: style cleanup. 2015-01-15 20:30:45 +01:00
Axel Dörfler
f982c9ed88 BFS btreeTest: fixed DEBUG build. 2015-01-15 20:30:43 +01:00
Adrien Destugues
a7d444d145 Remove old block cache implementation
This was not used anywhere except the tests written for it (which is
also removed).
2015-01-13 15:48:59 +01:00
Adrien Destugues
ace74964f1 Remove khash from the sources.
Fixes #9552.
2015-01-13 15:48:58 +01:00
Jérôme Duval
1d766e9dd3 mixerToy: fix build on gcc4 2015-01-08 21:21:42 +01:00
Axel Dörfler
c1f779e350 IMAP: FetchMessageEntriesCommand now also works without UIDs
* This will be used to solve the TODO in CheckMailboxesCommand::Process()
  when the initial message sizes/flags are retrieved.
* Also fixed imap_tester build.
2015-01-06 15:26:33 +01:00
Axel Dörfler
3302df142e imap: WIP of getting fetching headers to work.
* Changed the FetchListener mechanism quite a bit.
* Doesn't seem to work correctly yet, although most pieces are in
  place now.
2015-01-06 15:25:33 +01:00
Axel Dörfler
9234fd439e imap: Implemented encoding RFC3501 strings.
* Was completely missing so far.
* Fixed bug in decoding that handled the "&-" sequence incorrectly.
* Added small test application that should easily be convertible to
  a unit test.
2015-01-06 15:25:28 +01:00
Axel Dörfler
82f27de238 imap_tester: Fixed build after Protocol.GetFolders() changes. 2015-01-06 15:25:19 +01:00
Axel Dörfler
bfe83adcb2 imap_tester: Fixed SSL build. 2015-01-06 15:25:00 +01:00
Axel Dörfler
077338a9b8 Completed literal handling.
* LiteralHandler commands now receive the literal data as intended.
* The 'fetch' command in the imap_tester now uses this to print the literal
  to stdout.
2015-01-06 15:21:03 +01:00
Axel Dörfler
1704480100 Read some more specs, cleaned Protocol a bit.
* Added some TODO comments based on the various IMAP specs and extensions.
* Removed SelectMailbox() functionality from the Protocol class; it's not
  really useful to have it there.
* Removed some other methods that don't belong into the Protocol class.
2015-01-06 15:20:25 +01:00
Axel Dörfler
db0a4f2c00 More work in progress of the IMAP rework.
* Implemented FetchCommand, and some more.
* Improved and extended the imap_tester.
* The base to implement the new InboundProtocol on is now mostly done, at least
  for a start.
2015-01-06 15:20:20 +01:00
Axel Dörfler
37d26ae5e2 Work in progress of rewrite; IMAP doesn't even compile at this point. 2015-01-06 15:20:11 +01:00
Adrien Destugues
4c0fbf2e52 linprog test: fix build. 2014-12-24 11:52:01 +01:00
Alexander von Gluck IV
e2523ea3f2 tests/egl: Add egl test code.
* Early EGL support has been pushed into mesa
  thanks to the GCI work of Adrián Arroyo Calle.
* No, this isn't hardware rendering :-)
2014-12-23 15:42:02 -05:00
Adrien Destugues
459b8e9796 Cleanup midi tests directory
* synth_file_reader: TList to BObjectList.
* delete two old prototypes of MidiPlayer and the README noting that
they should be removed
* delete reference to PatchBay which was moved to src/apps in 2013.

Fixes #7027.
2014-12-22 13:00:17 +01:00
Adrien Destugues
216f305cea TeamMonitorTest: fix build, exit on window close. 2014-12-19 13:38:46 +01:00
Adrien Destugues
524288065b Test for #3970.
* This shows the problem in Haiku, it is not easily possible to change the
color of BStringItem.
* It also shows that the BeOS implementation doesn't restore the view
state after drawing items, so the last item in the list also draws
green, and selecting the first also makes it green.
2014-12-10 13:30:10 +01:00
Adrien Destugues
dca4966cd6 ScreenTest: style fixes. 2014-12-09 15:17:20 +01:00
Adrien Destugues
dab42bf05b MixerToy: do an initialisation run on the mixer
The Interpolating mixer has internal state which must be setup by a
previous frame (we assume 0 for the first frame). Since we work on
exactly a period of the wave here, sending the same data twice works as
it should.
2014-12-08 18:51:47 +01:00
Adrien Destugues
258fbe371b MixerToy: app for testing mixer resamplers.
* Shows a source wave (black), a sampled version of it (red), and a
resampled version of that using the mixer (green).
* Debugging tool for #9438. Shows that the drop/repeat resampler is
working ok, but interpolate is quite broken.
2014-12-08 18:10:31 +01:00
Adrien Destugues
96bac1b30b Add a test for #2945. 2014-12-05 14:51:47 +01:00
Theodore Kokkoris
249a4944c3 Removed dead code (CID: 1255314) 2014-12-03 21:14:24 +01:00
Adrien Destugues
1f8b3fdb7e Storage Kit tests: apply relevant parts of #7025
Patch by Karvjorm. Picked only the code changes as it seems the Jamfile
changes were not needed or already done.
* Use BObjectList instead of BList
* Add some more directory constants to FindDirectory tests.
2014-11-21 17:44:11 +01:00
Adrien Destugues
da8f008d15 Add a amfile to build cdda for userlandfs.
It crashes early after mounting in get_vnode, but the UserlandFS won't
build in DEBUG=1 (see #8422), making this not very helpful...
2014-11-17 17:36:53 +01:00
Adrien Destugues
e8ceef7357 Fix typo in getaddrinfo test. 2014-11-06 18:32:23 +01:00
Adrien Destugues
bca1813626 Add test for getaddrinfo on empty host.
* This should fail immediately, but it timeouts after 22 seconds when
the network interfaces are not configured properly.
2014-11-06 15:02:00 +01:00
Michael Lotz
f00353a519 posixtestsuite: Normalize line endings. 2014-11-01 15:43:43 +01:00
Adrien Destugues
1508dc5c41 network prefs: fix jamfiles and include into image.
* There are some rough edges, but the functions from the existing
preflet are all available now.
2014-10-30 15:49:08 +01:00
Adrien Destugues
a0c8a64b47 Move the new network preflet at the right place. 2014-10-30 15:49:07 +01:00
Adrien Destugues
446094bcb3 Implement saving DNS server list.
This makes the preflet good enough for replacing the current one.
2014-10-30 15:49:05 +01:00
Adrien Destugues
824404e31f NetworkSetup: add the Services tab
* UI still needs some tweaking
* The Services tab has a list of services. This currently include DNS
and will soon also include the services listed in xinetd.
* The DNS tab allows to manage DNS servers (settings can't be saved yet)
2014-10-30 11:27:38 +01:00
Michael Lotz
00460996cf btreeTest: Change include for debug helpers.
Including BPlusTree.h pulls in the common versions of the debug macros
(via the Debug.h from BFS) and therefore avoids redefinition warnings.
2014-10-30 00:42:50 +01:00
Michael Lotz
64bb360b8c btreeTest: Remove equal sign from preinclude argument.
No separator at all (no space and no equal sign) seems to be the only
version that is accepted by both GCC versions.
2014-10-30 00:42:50 +01:00
Michael Lotz
488289a4a9 btreeTest: Fix build with gcc2. 2014-10-29 23:47:37 +01:00
Adrien Destugues
524709ea2b Avoid space after -include.
This seems to make cpp unhappy. Note that other fixes seems to be needed
to get the build running with gcc2 (missing includes and the like.)
2014-10-29 23:19:49 +01:00
Adrien Destugues
de6278fec1 NetworkSetup: move renegociate and disable buttons to HardwareView
The idea is making the interface list a generic list to add some stuff
that are not interfaces there (ie services: DNS, FTP, SSH, ...)
2014-10-29 22:22:16 +01:00
Adrien Destugues
afc5d438a7 Add an app server test for stack&tile
Should help with debugging #8569.
2014-10-29 22:22:15 +01:00
Adrien Destugues
5d5ec05b1d B*Format: make immutable and remove locking
The language and formatting conventions can now only be set when
creating the objects. This removed the needs for locking them when
formatting to avoid some other thread changing the format while it's
being used.

Adjust tests and DeskBar TimeView to the API changes.
2014-10-27 14:08:42 +01:00
Adrien Destugues
96dbc7d533 Remove the workaround for #11018 in two other places.
The bug is fixed, the workaround can be removed.
2014-10-23 09:10:57 +02:00
Adrien Destugues
b137575c46 AreaTest: 64bit fix. 2014-10-22 19:36:05 +02:00
Adrien Destugues
5dbd0f48cc gcc4 fix. 2014-10-22 18:58:37 +02:00
Adrien Destugues
72d4735712 Register media add-ons on BMediaFormat::GetFormatFor().
* Fixes #11018.
* In this case the FormatManager format list is accessed without going
throught the AddOnManager, so we must tell the AddOnManager to register
the add-ons (as this is what populates the FormatManager format list).
* Remove now unneeded workaround in mp3_decoder_test.
2014-10-22 15:25:06 +02:00
Adrien Destugues
2d88b1bd33 convert mediaDescriptions test to cppunit. 2014-10-22 14:30:19 +02:00
Adrien Destugues
ce299207f8 Convert SizeofTest to cppunit. 2014-10-22 11:34:14 +02:00
Adrien Destugues
2521f8ea39 Convert BufferTest to cppunit. 2014-10-22 11:11:55 +02:00
Adrien Destugues
55935df47d Convert AreaTest to cppunit. 2014-10-22 10:26:37 +02:00
Adrien Destugues
d21b5a07e6 AreaTest: style fixes. 2014-10-22 10:12:24 +02:00
Adrien Destugues
9bf4e99477 BUrl: IDNA ToUnicode and ToASCII conversions.
* Since DNS are normally restricted to ASCII, the use of UTF-8 in domain
names is implemented using a "punycode" encoding.
* The request to the DNS server must be sent with the ASCII
representation of the domain name, however the Unicode one should be
used for user-visible parts.
* ICU provides an implementation of the conversion, which we use here.
* Conversion is currently done in-place and modifies the BUrl object
(this is similar to UrlEncode/UrlDecode).
* Adjust existing IDN test to make use of these methods. It's passing
now.
2014-10-21 14:43:13 +02:00
Adrien Destugues
d341a585ae Add more tests for BMessageFormat.
* Negative and null values, big values, thousands separators (in
different languages), string with no format, non-printable and non-utf8
charcaters, format not using # for the number.
2014-10-21 12:21:50 +02:00
Adrien Destugues
c06fd79574 Chart: fix endianness swap.
* This is most likely dead code currently (it is used only when the
framebuffer is big endian, and the the cpu is little endian)
* Fixes a warning.
* Can't confirm if B_SWAP_INT32 is really supposed to swap the value
in-place, or if this is a bug in Chart. Probably the latter.
2014-10-21 11:53:22 +02:00
Adrien Destugues
6da9451eba UrlTest: cleanup IDN tests. 2014-10-21 11:31:47 +02:00
Michael Lotz
24e159e1ac btreeTest: Revive test for BPlusTree implementation.
* Update pseudo cache with minimal set of block cache API.
* Update Inode, Journal and Volume stubs to current API.
* Add stubs for remaining VFS functions.
* Extend tests to also call BPlusTree::Validate() and bail on errors.
* Change duplicate tests to fill in the same value. While this isn't
  strictly allowed, the tree validation can't work unless the values
  match up.
* Lots of coding style cleanup, but much more should still be done...

The tests run through without errors.
2014-10-21 00:24:45 +02:00
Michael Lotz
9656eef895 libkernelland_emu: Fix wrong return in ModuleList::AddModule(). 2014-10-21 00:08:48 +02:00
Michael Lotz
04ed6105f1 libkernelland_emu: Fix missing using namespace std for GCC4. 2014-10-21 00:07:16 +02:00
Michael Lotz
893367cf30 libkernelland_emu: Sync _rw_lock_{read|write}_unlock API.
The threadsLocked parameter was removed from the kernel API.
2014-10-21 00:04:24 +02:00
Michael Lotz
4101aaedc7 libkernelland_emu: Remove deleted scheduler.cpp from build.
The file was removed in hrev47484, but the Jamfile wasn't updated.
2014-10-21 00:00:54 +02:00
Adrien Destugues
980b1bd045 Add more tests for the DateTimePatternGenerator
There are unexpected results in some cases, with the clock switching to
12 hours format even though the locale is set to use 24 hours.
2014-10-20 17:23:24 +02:00
Adrien Destugues
fc1d09374e MessageFormat: Add test for Russian and fix Polish ones. 2014-10-19 11:49:55 +02:00
Adrien Destugues
77342b3ad8 Chart: clear view when switiching to BDirectWindow
Even when BDirectWindow is used, the back buffer data can be copied to
the front buffer. This happens when resizing or moving the window, and
when moving the cursor above it.

Since Charts does not touch the whole window when redrawing (it only
erases previous stars and draws new ones) this led to the last frame
drawn on the back buffer to stay visible until stars erased it.

Clearing the back buffer view with the current "sapce color" makes this
much less visible.

Fixes #96.
2014-10-15 09:22:41 +02:00
Adrien Destugues
64bda0cc91 Add missing error check in BMessageFormat
* Avoids a crash when an invalid format pattern is used
* Add tests exercising this with various badly formatted patterns.
2014-10-13 09:07:53 +02:00
Adrien Destugues
26b0a53d12 Add parsing support to BTimeFormat. 2014-10-09 13:35:23 +02:00
Adrien Destugues
961fdd8cc3 BMessageFormat: parse the pattern at construction
* Instead of parsing the pattern everytime Format() is called, parse it
only once when the object is created.
* Adjust all callers to make use of the feature and reuse the instance
as much as possible. This also allows calling B_TRANSLATE only once
instead of everytime the formatting needs to be done. We use either a
static instance (when the message pattern is constant) or a field (when
it is not known to be constant).
* Since the BMessageFormat instances are now reused, add locking to
avoid race conditions (ICU itself is thread safe, but the format pattern
is recreated when the locale is changed)
2014-10-08 15:12:48 +02:00
Adrien Destugues
824cb460ac DateTimeFormat: handle custom 24 hours clock.
The "j" format pattern selects a 12 or 24 hours clock automatically
depending on the locale, but it doesn't work when the format is forced
in the locale preflet or through the BFormattingConventions API. So we
manually pick either K or H depending on that setting.
2014-10-08 11:36:52 +02:00
Adrien Destugues
97d07c8af2 Add API for parsing dates. 2014-10-07 17:40:18 +02:00
Adrien Destugues
090a0d7686 Add an API to get month names. 2014-10-07 16:08:22 +02:00
Adrien Destugues
b16923f79f Add tests for BDateTimeFormat with custom formats. 2014-10-07 13:07:06 +02:00
Adrien Destugues
4a3a474224 Reimplement BDateTimeFormat using ICU support
* Avoid hardcoding the format to "date, time"
* Allows using DateTimePatternGenerator to create custom formats from a
set of fields.
2014-10-07 13:06:40 +02:00
Adrien Destugues
0da7796e6c Add BMessageFormat class.
This can be used to format complex messages properly. It moves the
complexity of handling plural forms, gender, and anything else needed
into the localizable string, rather than hardcoding it in the code.

This moves the difficulty of handling these things properly to people
doing translations, rather than relying on developers to do it.

Fixes #10755, but our localization must now be updated to make use of
the feature.
2014-10-07 08:51:23 +02:00
Adrien Destugues
699ddf447c DateFormatTest: fix after ICU upgrade
* Timezone names have changed. Test the medium time format which doesn't
include them, as we aren't forcing a specific one.
* French date format also changed to use 4 digit year name.
2014-10-07 08:49:45 +02:00
Adrien Destugues
fe86832391 Put liblinprog after libstackandtile
Otherwise some symbols go missing...
2014-10-06 17:43:21 +02:00
Adrien Destugues
a166264bf3 test_app_server: use libstackandtile.
We build a static lib for it, so we may as well use it.
2014-10-06 17:32:53 +02:00
Adrien Destugues
df4a02e0fa Fix initialization of BTimeUnitFormat
* The default constructor must configure it for the default locale
* Fix uptime not showing in AboutSystem
* Add a testcase for this
2014-10-02 10:23:31 +02:00
Adrien Destugues
9581e328bd Move geolocation test to the shared kit tests.
* Fix the build.
2014-10-02 08:27:44 +02:00
Adrien Destugues
9577c31bfe Convert BTimeFormat tests to cppunit. 2014-10-01 18:23:54 +02:00
Adrien Destugues
03b2550ef1 Move time formatting to BTimeformat.
* Harmonize API for all B*Format to take an output BString by reference
as the first parameter,
* Move the FormatTime methods from BLocale to BTimeFormat
* Adjust all callers for BTimeFormat, BTimeUnitFormat and
BDurationFormat.
2014-10-01 18:13:35 +02:00
Adrien Destugues
cedd1e158b Add tests for BDurationFormat and BTimeUnitFormat. 2014-10-01 16:29:13 +02:00
Adrien Destugues
48ea56bf32 Interface Kit tests: add test for BTextControl.
* Only tests very basic functionality, and size of the class, which must
not change for BeOS compatibility.
* Also add "manual" test for disabled and invalid controls (just check
it looks right)
2014-10-01 12:12:14 +02:00
Adrien Destugues
b4a3be8e2f Jamfile missing from previous commit. 2014-09-30 16:09:13 +02:00
Adrien Destugues
afd5ec11d2 Add setters to BDate and BCalendarView
* BDate setters don't perform any validation, use with caution.
* BCalendarView setters do perform validation checks, and will adjust
the day so it fits the requested month or year.
* Add tests for the BCalendarView setters.
2014-09-30 15:38:24 +02:00
Adrien Destugues
dd21b4666e Add tests for BDateFormat. 2014-09-30 09:37:03 +02:00
Adrien Destugues
d7f449e9bc Convert language tests to cppunit. 2014-09-29 18:37:50 +02:00
Adrien Destugues
706f3f5396 Convert collator test to cppunit. 2014-09-29 18:37:49 +02:00
Adrien Destugues
af59f5ca42 Convert BUnicodeChar tests to cppunit. 2014-09-29 18:37:49 +02:00
Adrien Destugues
bd0644183c localeTest: fix corrupted characters.
This file used to hold iso-8859-15 encoded bytes for testing our char
conversion ability. However something went wrong and they all got
replaced by unicode "invalid character" mark. Use \x notation to escape
the actual bytes we want to test.
2014-09-29 18:37:48 +02:00
Adrien Destugues
27a2d2c7ef ICUTest: style and output formatting fixes 2014-09-29 18:37:48 +02:00
Adrien Destugues
9d1cbc67a6 localeTest: fix build. 2014-09-29 18:37:47 +02:00
Adrien Destugues
84e6fa8e2a Geolocation: use test key for tests.
Mozilla provide a test key (with usage restrictions) for testing
purpose. Make use of it in our unit tests.
2014-09-24 19:02:23 +02:00
Adrien Destugues
13f0458896 Add BGeolocation experimental API.
A BGeolocation object can query an online service to get geolocation
and geotagging data:
 * LocateSelf() tries to locate the machine it is running on, by using an
online database of wifi access points
 * Locate() (not yet implemented) searches a BString and converts it to
lat/lon coordinates (reverse geotagging)
 * Name() (not yet implemented) finds a suitable name for the given
coordinates (address, building name, or anything fitting).

The default service used is openbmap.org, which is freely available but
not very accurate. A request has been sent to Mozilla to use MLS
(Mozilla Location Services), which is a bit more accurate but needs an
API key. MLS is used for geolocation on FirefoxOS, for mobile phones
which don't have a GPS, and the data can be contributed by Firefox for
Android or the dedicated MozStumbler app.

Alternatively, Google Maps also provide the service, but wants
people to pay for it. Google Maps data is more accurate as all Android
devices contribute data to it.

All 3 services use the same JSON-based API: we send a list of reachable
Wifi APs (mac address and signal strength), and we get lattitude and
longitude information, and possibly extra data which will currently be
unused.

This can be used to implement HTML5 geolocation with reasonably accurate
results, but it can also be used in other places. For example
FirstBootPrompt could try to guess a list of most likely languages and
keyboard layouts from it (if wifi is working at install time, that is).
2014-09-23 16:37:59 +02:00
Adrien Destugues
ee2985c144 NetworkSetup: list and join wireless networks
* Reuse the logic from the old network preflet for now. Something better
can be done later.
2014-09-19 17:52:11 +02:00
Adrien Destugues
763cd902f6 NetworkSetup: simplify UI layout
* Temporarily disable the non-working Profiles popup
* Remove the currently single-tabbed TabView
* Remove duplicate apply and revert buttons in the interfaces add-on.

The goal here is to remove functionalities not available in the current
network preferences, and finish the other parts, so we can put this new
preferences panel in service now. We can re-add the extra functionality
later.
2014-09-19 17:52:10 +02:00
Adrien Destugues
126a04e6d6 NetworkSetup: put interface settings in main window
* The initial design was probably inspired by Windows network settings,
which are a mess of nested windows and hyperlinks.
* Instead, the settings can be put directly inside the main window, like
it is done inthe media preflet. This makes the information available at
a glance and makes the UI easier to navigate.
* Remove the "configure" button and popup menu item. A single click is
now enough to show the settings for an interface

For this to work properly, complete the move to layout kit (there were a
few BRect-based constructorls left which would mess the layout) and
remove unneeded rectangle computations (layout kit does the job
already).

Further cleanup pending:
* Removal of the duplicate "revert" button
* Removal of the "save" button and switch to applying settings realtime
* Move the disable/enable and renegociate buttons inside the interface
settings
* Remove the top-level tab view (nested tab views are not nice) and
use a hierarchized list with both interfaces and services on the side
(like the Media preflet has audio and video).
2014-09-19 14:13:01 +02:00
Adrien Destugues
5fae0bc1a2 Add some cppunit-based tests for BTextView.
Note that this does not reproduce #8447. I could not get more precise
details from involved people about how to reproduce this, and the patch
was already applied anyway, so I'm stopping my investigation for now.
Feel free to complete this with more test cases.
2014-09-19 09:59:38 +02:00
Adrien Destugues
c98378e51a Add HTTP proxy support.
* Move default context management to BUrlRequest since some code
(including the testsuite) bypass the BUrlProtocolRoster.
* Introduce proxy host and port in BUrlContext
* Have BHttpRequest use the proxy when making requests
2014-09-15 14:24:37 +02:00
Adrien Destugues
ab280d4400 Fix SVGView test build (missing strings.h include) 2014-09-02 10:16:03 +02:00
Colin Günther
ffb0f5db8e FFMPEG Plugin: Automatic detection of audio decoding parameters.
- Kudos to Marcus Overhagen for laying out the general idea of automatic
  detection by sharing some of his dvb code examples with me.
- Automatically detect the audio frame rate, channel count and sample format.
- Share audio sample format conversion code between AVFormatReader and
  AVCodecDecoder.
- Tested with several video and audio files via MediaPlayer.
- Tested also with test case mp3_decoder_test -after- removing the hard coded
  audio decoding parameters. Although the test shows that auto detection is
  working (via stepping through the auto detection code path) the complete test
  is still failing, due to missing implementation of incomplete audio frame
  decoding.
- Add and update the documentation accordingly.
2014-08-24 00:26:52 +02:00
Oliver Tappe
87e8603d9f Merge branch 'gcc_syslibs'
* From now on, the gcc-specific system libraries (libgcc, libsupc++ and
  libstdc++) are provided by separate packages built along with gcc:
  - gcc_syslibs contains the shared libraries (libgcc_s.so, libsupc++.so and
    libstdc++.so)
  - gcc_syslibs_devel contains the static libraries and both c++ and gcc
    headers
  The shared libraries now make proper use of symbol versioning and there
  are version-specific symlinks
* The buildsystem has been adjusted to no longer use the libraries and
  headers from the cross-compiler, but use the ones provided by the
  above-mentioned packages. The only exception is that the 32-bit libraries
  required for the bootloader of the x86_64 architecture are still taken
  from the cross-compiler.
2014-08-13 13:50:29 +02:00
Oliver Tappe
220d040227 Use libstdc++, libsupc++ and libgcc from gcc_syslibs.
* Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so
  from the gcc_syslibs build feature for everything except x86_gcc2.
* Use libgcc_s.so from the gcc_syslibs build feature for everything but
  x86_gcc2 (which still carries libgcc as part of libroot.so).
* Drop filtering of libgcc objects for libroot, as that is no longer
  necessary since we're only using libgcc-as-single-object for libroot
  with x86_gcc2, where the filtered object file doesn't exist. Should
  the objects that used to be filtered cause any problems as part of
  libgcc_s.so, we can always filter them as part of the gcc build.
* Use libsupc++.so from the gcc_syslibs build feature for everything but
  x86_gcc2.
* Adjust all Jamfiles accordingly.
* Deactivate building of faked libstdc++.so for non-x86-gcc2. For
  x86_gcc2, we still build libstdc++.so from the sources in the Haiku
  source tree as part of the Haiku build .
* Put gcc_syslibs package onto the image, when needed.
2014-08-13 13:32:44 +02:00
Colin Günther
a335ec823a FFMPEG Plugin: Implement flushing of video frames from decoder.
- Video frames still contained in the video decoder are now flushed when there
  are no encoded data chunks left (signaled by B_LAST_BUFFER_ERROR).
- New code was successfully tested with mpeg2_decoder_test. The last test image
  is now decoded, too, resulting in a bump of the expected number of decoded
  images.
- Refactor code to support flushing -and- keep the readability at a sane level.
- Remove some uncommented code for the sake of readability.
- Documentation updated accordingly.
2014-08-04 18:38:16 +02:00
Adrien Destugues
f0fbad6aa1 Add tests for data URIs. 2014-08-04 16:56:38 +02:00
Adrien Destugues
417351fceb HttpTest: use BReferenceable APIs for the BUrlContext. 2014-08-04 16:55:19 +02:00
Colin Günther
6a18ef8358 MediaKit: Remove superflous code in mpeg2_decoder_test.
- Thanks to automatic video decoding parameter detection, we no longer need to
  manually hack the correct parameters for this test to succeed, jiha!
2014-08-04 12:25:27 +02:00
Adrien Destugues
1dc356fb06 Test for the "Host" header containing the port.
* Also tests that receiving data using a listener works.
2014-07-28 16:10:05 +02:00
Adrien Destugues
4359643ed4 Test for relative URL with a port in the base URL.
As expected, the port is preserved.
2014-07-28 15:02:16 +02:00
Adrien Destugues
a694f30d6c Add more alpha gradient test cases
* Add a vertical linear gradient. This bypasses AGG and uses a faster
code path, which works.
* Add gradients drawn in a ClipToPicture() context. This uses an
* unpacked scanline rasterizer, which works.

This hints to the problem being the use of a packed scanline rasterizer,
with agg gradients touching the alpha channel.
2014-07-24 12:01:50 +02:00
Adrien Destugues
d1a5f90981 More test cases for gradients with alpha channel
* Swapping the opaque and transparent ends leads to different results,
* Linear gradients are also affected.
2014-07-23 17:59:37 +02:00
Adrien Destugues
5f6a39cabe Add testcase from #2946. 2014-07-23 16:24:08 +02:00
Adrien Destugues
1f3acfaa51 Add a test for radial gradients.
* This shows that the radius is ignored and all gradients are drwan with
a radius of 100.
2014-07-23 10:17:25 +02:00
Adrien Destugues
15db99249a Simple test harness for app_server tests
This was developped for the transformations test, but can be used for
other tests too. Extract the relevant classes to a separate file.
2014-07-23 10:14:35 +02:00
Adrien Destugues
c5ed108884 Fix the test_app_server build. 2014-07-23 10:13:58 +02:00
Adrien Destugues
7cd7f2fbf3 Remove test that can't work.
I didn't mean to commit this. Sorry again.
2014-07-21 10:21:32 +02:00
Adrien Destugues
043178a063 Add WizzNic
* Update sdl_image_x86 to a version that can load PNG files
* Update giflib_x86 to match what's required by the new SDL_image
package
2014-07-21 09:34:52 +02:00
Julian Harnath
604770b313 Adapt kernelland_emu to kernel API changes
* Adapt to changes in kernel synchronization APIs.

* Makes userlandfs work again.
2014-07-12 02:00:08 +02:00
Colin Günther
d65388e7fa Media Kit: Add workaround for #11018 to MP3 audio stream decoder test.
The workaround triggers the loading of all media plugins prior to using
methods of class BMediaFormats. Using the function get_next_encoder()
is used because of two facts

1. It is publicly available and thus can be used by 3rd party apps,
   too.
2. It is already available by including BMediaFormats.h, so there is
   no need to include another header for this workaround.

Signed-off-by: Colin Günther <coling@gmx.de>
(cherry picked from commit a89b0a4e69f18b2b3b2c2f5615450a5ddac838af)
2014-07-09 19:06:27 +02:00
Colin Günther
50b586b9de Media Kit: Add workaround for #11018 to MPEG2 video stream decoder test.
The workaround triggers the loading of all media plugins prior to using
methods of class BMediaFormats. Using the function get_next_encoder()
is used because of two facts

1. It is publicly available and thus can be used by 3rd party apps,
   too.
2. It is already available by including BMediaFormats.h, so there is
   no need to include another header for this workaround.

Signed-off-by: Colin Günther <coling@gmx.de>
(cherry picked from commit 80354716fe8b25c81ec45bd96ae36e171228b8a0)
2014-07-09 19:06:12 +02:00
Colin Günther
7a28891db4 Media Kit: Add MP3 audio stream decoder test.
- This test currently fails and thus showing that there is something wrong in
  the Media Kit.
- This test was first developed and tested on Haiku R1 Alpha 4.1 where
  every thing was hacked together to make this test succeed, thus showing that
  the current Media Kit state of affair has some issues and not this test :)
- The test comes with documentation (@see mp3_decoder_test.cpp).

Signed-off-by: Colin Günther <coling@gmx.de>
2014-07-06 13:51:35 +00:00
Colin Günther
c5954368ed Media Kit: Add MPEG2 video stream decoder test.
- This test currently fails and thus showing that there is something wrong in
  the Media Kit.
- This test was first developed and tested on Haiku R1 Alpha 4.1 where
  every thing was hacked together to make this test succeed, thus showing that
  the current Media Kit state of affair has some issues and not this test :)
- The test comes with documentation (@see mpeg2_decoder.test.cpp).

Signed-off-by: Colin Günther <coling@gmx.de>
2014-07-06 13:51:31 +00:00
Ingo Weinhold
5c8bfe24ea compression_test: Add option for gzip format 2014-07-01 21:54:58 +02:00
Ingo Weinhold
377ecc1e55 Test program for the B[Zlib]CompressionAlgorithm functionality 2014-06-30 21:55:41 +02:00
John Scipione
a30a4a41f9 Style fixes to Storage Kit classes.
No functional changes intended.

* Some variable renaming for clarity and consistency.
* Pointer style fixes.
* Added private method documentation back to cpp files for some methods.
2014-06-18 19:14:19 -04:00
Humdinger
6229115bac More small C++11 tweaks. 2014-06-16 19:34:56 +02:00
Humdinger
991dadd632 Make sure there's a space in front of B_UTF8_ELLIPSIS.
As PulkoMandy said in hrev47388: C++11 safe and reads better.
2014-06-16 17:55:34 +02:00
Adrien Destugues
4f88977f9a Add a first test for BDateTime.
* We need to write more of those.
2014-06-16 08:49:36 +02:00
Adrien Destugues
151ef32f45 Fix more of the cookie test following API changes. 2014-06-11 21:59:04 +02:00
Adrien Destugues
6765a83b15 Fix cookie tests for API changes. 2014-06-11 19:27:33 +02:00
Oliver Tappe
9aec6561a8 More build fixes of unittests, this time for x86_64. 2014-06-11 12:44:39 +02:00
Oliver Tappe
77aa0e2a5e Fix build of unit-tests with gcc4. 2014-06-11 11:43:12 +02:00
Adrien Destugues
0256e7a458 Disable the MIME type test.
* This tests requires some private APIs which have been changed, it
needs to be rewritten.
* I'm also not sure if it's still possible to work on a copy of the MIME
* database to avoid messing with the system one.
2014-06-10 10:10:30 +02:00
Adrien Destugues
182a5f8e53 Disable test for TranslatorResoter::Version
* The method was made private and deprecated, so there is no way to
compile code calling it directly.
2014-06-10 10:09:13 +02:00
Adrien Destugues
64e8975369 ResourcesTest: fix build.
* There are several SetTo methods, specify the one we want to test.
2014-06-10 10:08:34 +02:00
Adrien Destugues
d306340b66 Don't include number_format tests
* The class isn't currently included in Haiku
* Test test only checks that the constructor doesn't crash, which isn't
very helpful anyway
2014-06-09 17:24:28 +02:00
Adrien Destugues
9570413d2a Fix name conflict between two tests
* There is a SimpleTest in AlertTest.cpp, and an UnitTest in
balert/AlertTest.cpp. They ended up with the same grist as they are
built from the same jamfile. Rename one of them to avoid this.
2014-06-09 17:18:13 +02:00
Adrien Destugues
913e376500 Match linked list tests with the current API. 2014-06-09 17:09:23 +02:00
Adrien Destugues
49a6a0ebf3 Fix build of makeudfimage tests.
* The Udf namespace was removed from the headers, but not all the
implementation files
* kernel_cpp.h is not actually used
* TRACE_ERROR can't be set to dprintf when building as part of the test
(and not as a kernel add-on)

First step on the way to get jam -q unittests to work again...
2014-06-09 16:06:00 +02:00
Adrien Destugues
080f5d5f5d ProtocolListener test: fix build.
* I'm not sure what this is supposed to test...
2014-06-09 14:42:22 +02:00
Adrien Destugues
3af9a2cac2 Make HttpRequest tests use the test framework
* Use httpbin.org as a server, rather than a local machine.
* Also add an HTTPS version
2014-06-09 14:11:15 +02:00
Adrien Destugues
f38d4d4510 Rename url directory to "service"
* All "services kit" tests will move there.
2014-06-09 11:18:00 +02:00
Adrien Destugues
744bfa6270 Convert existing cookie test to test framework
* The remaining stress-test is a benchmark, and has no success/failure
result. Leave it this way for now.
2014-06-09 11:08:16 +02:00
Adrien Destugues
cb7d1c5ecd Add some more tests for cookies
Also derived from Opera test suite.
* Fix nbsp instead of space in some tests (I shouldn't have copypasted
these...)
* Add most of the advanced tests from Opera. This exposed several bugs
in the cookie code (all fixed) as well as strptime and strtol (tickets
opened)
* All the cookie2 tests are skipped. I didn't find any use of it on the
internets, so it doesn't seem useful to implement it.
* The last two tests sets are still missing. I'll add them next week.
2014-06-06 18:42:11 +02:00
Adrien Destugues
295a23a4e3 Add some tests for cookies.
* Mostly extracted from Opera cookie testsuite.
* Shows one bug with parsing expiration date of cookies in
ExpirationTest.
2014-06-05 19:29:11 +02:00
Adrien Destugues
3fd76758ed Add some tests derived from Ruby Addressable
They have a very complete testsuite, but not all of it is relevant to
us. Pick some of the interesting tests for now.
2014-06-04 11:36:09 +02:00
Adrien Destugues
0013f47d3f Import tests from http://skew.org/uri/uri%5Ftests.html
This shows there are some problems with BUrl, still.
CppUnit stops at the first failed assert in each test, which doesn't
give a good overview of the number of failures in this case (the first
subtest fails). A possible solution is splitting this into smaller
subsets.
2014-06-03 17:10:29 +02:00
Adrien Destugues
68c13f94fb Convert BUrl tests to the UnitTester framework. 2014-06-03 13:34:35 +02:00
Adrien Destugues
a4a2abe0d9 Test case for pixel alignment on transforms.
Transforming an aligned rectangle shifts it up and left by 0.5 pixels.
2014-05-26 10:06:42 +02:00
Stephan Aßmus
ae4fa7ce39 Transformation test: Refactored duplicated code. 2014-05-23 20:44:51 +02:00
Adrien Destugues
b6c34f4c44 Add a transform test for DrawString with offsets
* The text is not drawn at all when some transforms are used.
2014-05-23 15:07:19 +02:00
Adrien Destugues
569bd922a6 Add a test that shows bitmap being wrongly clipped.
* The bitmap should cover the same area as the rectangle, but it
doesn't.
2014-05-21 17:02:13 +02:00
Adrien Destugues
2f9ac9582d Transformation: add one more test
* Add test for a translation that makes things that are out of view
bounds to become visible
* Fix the "rectangles" test to handle scrolling of the view. It seems
that in some cases some of the rectangles are not drawn.

The gradient and bitmap tests currently have problem with view
scrolling, but I'm not sure why.
2014-05-19 14:18:57 +02:00
Axel Dörfler
0acae24ee7 Added simple Alert test application. 2014-03-29 23:11:44 +01:00
Stephan Aßmus
cb7de03cca test app_server: Fix build & add font spacing test. 2014-02-26 11:51:40 +01:00