Commit Graph

38 Commits

Author SHA1 Message Date
Anthony Dresser
f22c8a7283 Feature/batch line info (#56)
* inital pipe of line numbers and getting text from workspace services

* tests compile

* Fixed bug regarding tests using connections on mac

* updated tests

* fixed workspace service and fixed tests

* integrated feedback
2016-09-22 17:58:45 -07:00
Benjamin Russell
93a75f1ff4 Format Cell Values (#62)
* WIP for ability to localize cell values

* Changing how DateTimeOffsets are stored, getting unit tests going

* Reworking BufferFileStreamWriter to use dictionary approach

* Plumbing the DbCellValue type the rest of the way through

* Removing unused components to simplify contract

* Cleanup and making sure byte[] appears in parity with SSMS

* CR comments, small tweaks for optimizing LINQ
2016-09-22 12:00:32 -07:00
Benjamin Russell
1f0240dbe0 Fixing bug by changing valid filename check to fail on whitespace (#55)
Fixing a bug from the unit tests on OSX/Unix where attempting to create a file with a name that's all whitespace succeeds when it should fail. This was passing in Windows because File.Open throws an ArgumentException when an all whitespace name is provided. In Unix systems, File.Open does not throw, causing the test to fail.

Solution is to check for whitespace in the sanity check.
2016-09-22 11:12:37 -07:00
Benjamin Russell
8f4caa80c2 Fixing bug with incorrect row count returned (#58) 2016-09-20 21:04:22 -07:00
Benjamin Russell
41198e9357 Adding sr.strings file and removing hard-coded strings (#52)
* Strings sweep for connection service

* String sweep for credentials service

* String sweep for hosting

* String sweep for query execution service

* String sweep for Workspace service

* Renaming utility namespace to match standards

Renaming Microsoft.SqlTools.EditorServices.Utility to
Microsoft.SqlTools.ServiceLayer.Utility to match the naming changes done a
while back. Also renaming them on the files that use them

* Namespace change on reliable connection

* Adding the new resx and designer files

* Final bug fixes for srgen

Fixing flakey moq package name

* Removing todo as per @kevcunnane

* Adding using statements as per @llali's comment

* Fixing issues from broken unit tests

Note: This feature contains changes that will break the contract for
saving as CSV and JSON. On success, null is returned as a message instead
of "Success". Changes will be made to the vscode component to handle this
change.
2016-09-16 16:18:25 -07:00
Sharon Ravindran
55047a0196 Save results to JSON file (#49)
* Save results to JSON file

* Code cleanup

* Code review changes

*  Changed comment
2016-09-14 16:43:10 -07:00
Mitchell Sternke
f2a5654a20 Feature/reliable connection (#44)
* Initial commit of reliable connection port

* Made ReliableSqlConnection inherit from DbConnection instead of IDbConnection

* Cleanup

* Fixed autocomplete service to use reliable connection

* Fix copyright headers

* Renamed ConnectResponse.Server to ServerInfo

* Removed unused using

* Addressing code review feedback
2016-09-13 18:10:26 -07:00
Benjamin Russell
92eb1376c1 Fixing column datatype issues (#48)
This was an issue where non-string types were being read back as strings (ie, int was read back as a string) resulting in the objects coming back being completely unintelligible values. It was a very simple issue where the column datatype wasn't being set correctly in our wrapper type.
2016-09-13 15:48:30 -07:00
Karl Burtram
1671f762bf Autocomplete bug fixes (#43)
Fix-up the autocomplete support to better handle binding timeouts.
Also provide a default keyword suggestion list.
2016-09-13 15:22:57 -07:00
Sharon Ravindran
0bd084d9f1 Feature/save results as csv (#33)
* Code changes to save results as csv

*  changes to save resultset as csv

* removed csvHelper

* Retrieve right resultSet after batch execution]

* code clean up

* encode column names and use string.Join

* code review changes - property fix and rowBuilder removal

* changes to fix execution tests

* Code clean up

* Code clean up

* Test save as CSV

* Fix tests for Mac/Linux

* Add doc comment

* Add doc comments

* Delete file if exception occurs
2016-09-12 17:11:46 -07:00
Benjamin Russell
9e492f19f9 Fixing broken OSX unit test caused by inability to hide files on unix (#41) 2016-09-09 15:02:45 -07:00
Benjamin Russell
8aa3d524fc Feature: Writing Execute Results to Temp File (#35)
* WIP for buffering in temporary file

* Adding support for writing to disk for buffering

* WIP - Adding file reader, factory for reader/writer

* Making long list use generics and implement IEnumerable

* Reading/Writing from file is working

* Removing unused 'skipValue' logic

* More tweaks to file buffer

Adding logic for cleaning up the temp files
Adding fix for empty/null column names

* Adding comments and cleanup

* Unit tests for FileStreamWrapper

* WIP adding more unit tests, and finishing up wiring up the output writers

* Finishing up initial unit tests

* Fixing bugs with long fields

* Squashed commit of the following:

commit df0ffc12a46cb286d801d08689964eac08ad71dd
Author: Benjamin Russell <beruss@microsoft.com>
Date:   Wed Sep 7 14:45:39 2016 -0700

    Removing last bit of async for file writing.

    We're seeing a 8x improvement of file write speeds!

commit 08a4b9f32e825512ca24d5dc03ef5acbf7cc6d94
Author: Benjamin Russell <beruss@microsoft.com>
Date:   Wed Sep 7 11:23:06 2016 -0700

    Removing async wrappers

* Rolling back test code for Program.cs

* Changes as per code review

* Fixing broken unit tests

* More fixes for codereview
2016-09-08 17:55:11 -07:00
Mitchell Sternke
f5e40d7944 Addressing feedback 2016-09-06 17:10:55 -07:00
Mitchell Sternke
93bf2af8bb Fire connection changed event when USE statements are executed 2016-09-02 16:43:32 -07:00
Benjamin Russell
0371e17028 Changes to fix code review comments and bug with handling empty batches 2016-08-24 15:25:13 -07:00
benrr101
51defc1032 Adding correct line numbers for errors 2016-08-22 13:04:12 -07:00
benrr101
91ed9aea59 Cleanup for comments/copyright 2016-08-22 12:04:43 -07:00
benrr101
943c7b9569 Wrapping up batch separation
Adding unit tests
Fixing things that got brought up from the unit tests
2016-08-19 18:24:20 -07:00
benrr101
1360fe7bde Merge branch 'dev' into feature/queryBatchProcessing 2016-08-19 15:31:02 -07:00
benrr101
f72ae9ac07 WIP adding unit tests for batch processing 2016-08-19 15:22:10 -07:00
benrr101
7202a7ed65 WIP update to support batch processing 2016-08-18 17:49:16 -07:00
benrr101
8a8104b4cf Fixing bug where select returns no messages 2016-08-18 15:14:38 -07:00
benrr101
dee490341d Stubbing out query execution settings
Adding a setting for batch separator.
Very small refactor to WorkspaceService that will create the basic
settings upon construction of the object.
2016-08-17 18:24:20 -07:00
benrr101
709123eaaf Final iteration, fixing a couple mistakes for query exceptions 2016-08-16 16:14:27 -07:00
Benjamin Russell
062c40368d Adding support for query cancellation
Query cancellation support is added via CancellationToken mechanisms that
were implemented previously. This change adds a new request type
"query/cancel" that will issue the cancellation token. Unit tests were
also added.
2016-08-15 15:23:07 -07:00
Benjamin Russell
c596a0db7a Small tweaks to query execution
* Adding comments where missing
* Adding "# rows affected" only if there was 0 or more
2016-08-11 17:41:18 -07:00
Benjamin Russell
9890e828bd Adding unit tests to the updated message mechanism 2016-08-11 16:39:33 -07:00
Benjamin Russell
1be4daf41d Adding enhanced support for messages from server
* Adding error flag for Query class
* Adding message capture for messages from server (using SqlConnection
cast)
* Adding better handling of SELECT queries with 0 results
* Adding affected row count message
* Adding SqlError unwrapping (using SqlException cast)
* Removing DbException handling from QueryExecutionService and into Query
class
2016-08-11 15:45:59 -07:00
Benjamin Russell
793ad383c1 Small bug fix for unit tests 2016-08-10 16:54:56 -07:00
Benjamin Russell
68c25f506e Adding changes as requested for code review 2016-08-10 16:40:36 -07:00
Benjamin Russell
8167330e16 Finishing up unit tests 2016-08-10 15:14:56 -07:00
Benjamin Russell
d783fd505b Second batch of unit tests
Making slight changes to RequestContext to make it easier to mock
2016-08-09 11:10:54 -07:00
Benjamin Russell
9f371cd0bc Unit tests, part 1 2016-08-05 18:38:21 -07:00
Benjamin Russell
a5582889bf Forgot to make corresponding changes in other files 2016-08-05 15:11:58 -07:00
Benjamin Russell
a06003c966 Another change for @anthonydresser 2016-08-05 15:08:28 -07:00
Benjamin Russell
0740e81dab Stub files for tests for query execution 2016-08-05 11:11:50 -07:00
Benjamin Russell
05e4c4f3a9 Final changes before V1 testing 2016-08-04 17:20:52 -07:00
Benjamin Russell
3ba22c94ac WIP for QueryExecution, mostly complete 2016-08-04 14:48:58 -07:00