Commit Graph

16 Commits

Author SHA1 Message Date
Allan Odgaard
a404daecce Use io::exec() instead of system()
The motivation for this change is that we may enable MallocDebug when running tests, which is done via environment variables that we do not want to be passed on to the shell tools we execute.
2014-03-29 18:58:52 +07:00
Allan Odgaard
5fd188531a Change naming of functions for obtaining variables
These are now all prefixed with what they are obtaining variables for (scope, document, bundle, …) which makes it easier to analyze/refactor the code.

Also change document_t’s settings function to document_settings.
2013-05-09 15:16:32 +07:00
Allan Odgaard
10ebd31ad9 Let SCM tests use same executable as driver
The was previously only done for the svn tests and the code had some flaws, like modifying the PATH environment variable.
2013-02-23 11:24:57 +01:00
Allan Odgaard
b718106ff8 Make semi-internal API private
This was previously public so that we could write tests for it, but since the test runner is linked with the object files, it can access symbols that has visibility set to hidden.
2013-02-23 11:24:56 +01:00
Allan Odgaard
cbb0a7864d Drop ‘ng’ namespace for scm 2013-02-21 17:39:55 +01:00
Allan Odgaard
3f4f09dcd8 Update SCM tests to new API
This is both the new test system and the new (non-blocking) SCM API.
2013-02-21 16:54:00 +01:00
Allan Odgaard
beb7417400 Introduce API for getting “scm variables”
This is both convenience, since we setup the TM_SCM variables in several places, but will also allow to register for changed variables (and thus, fetch branch name in a thread).
2013-01-20 12:49:33 +01:00
Allan Odgaard
c332ae69e6 Allow disabling SCM status from .tm_properties
This is done by adding the following (which can be limited to a folder):

    scmStatus = false
2012-09-02 17:53:50 +02:00
Allan Odgaard
2d2dd62351 Change scm::status::versioned → none
The scm::status::versioned status has now been removed.

The upshot of this is that SCM drivers can leave out files that are “clean” from their status map, and TextMate will assume they have status “none” (clean). This cuts down on the amount of data that needs to be sent (and/or processed) by the SCM drivers.
2012-09-02 17:53:50 +02:00
Allan Odgaard
f3429d8aad Remove code duplication
The SCM status enumeration is now only declared once.

I also introduced an ‘unknown’ status which should be used instead of ‘none’.
2012-09-02 17:53:50 +02:00
Allan Odgaard
5add8042c1 Create test repository with TM’s PATH/TM_SVN
This can still be fooled, as we do not read variables from TextMate’s user defaults, but I think this should solve majority of issues users are reporting.
2012-08-27 22:08:39 +02:00
Jeremy Whitlock
ed534778a7 New svn executable based Subversion scm driver
* Rewrote the Subversion SCM driver to use the svn executable
* Badges work just like Mercurial
* TM_SCM_BRANCH is set to the full repository URL for the working copy

See issue #273.
2012-08-25 02:06:22 +02:00
Allan Odgaard
52b01e0f6e Fix test failure for builds in source tree
The fs::snapsot_t class creates a finger print of a folder. We used the source tree for testing, but if the source tree hosts the build directory, then the fingerprint will (likely) change, since we run simultaneous build jobs.

It now uses the Frameworks folder in the source tree, as it’s unlikely that someone would place their build directory in this location.
2012-08-15 02:41:15 +02:00
Clemens Lang
b08daa7f97 git test: don't fail in unconfigured envs
git commit fails when user.name and user.email aren't set. Unfortunately
using git commit --author='Test Test <test@example.com>' doesn't work.

This could happen in environments where pristine users are used to build
software.

This patch is public domain.
2012-08-12 22:26:59 +02:00
Gerd Knops
7892f5269a git: show modifications in upstream folders 2012-08-10 19:17:35 +02:00
Allan Odgaard
9894969e67 Initial commit 2012-08-09 16:25:56 +02:00