-
-
Notifications
You must be signed in to change notification settings - Fork 193
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Oracle Provider Implementation DONE #68
base: master
Are you sure you want to change the base?
Conversation
Editing Dotmim.Sync namespaces and removing .Core
…me('%Y%m%d%H%M%f', 'now'), '.', '')" More accurate and resolving some issues if 2 syncs are too fast (less than 1 sec) Adding SQLite tests
…cured. This row appeared to be updated for the asker instead of appearing as for insert. Just check if timestamp of insert is after or before last asker timestamp
Adding SyncStage.EnsureDatabase, SyncStage.EnsureConfiguration and SyncStage.EnsureScopes
migrate to netstandard 2.0 final
Allow Computed column (default null on SQLite provider) Better No Primary keys execption
Check MaxLength over 4000 if Unicode Check Unsigned MySqlTypes
Make tests for Reinitialize and ReinitializeWithUpload
Go for v 0.2.0
TODO : Bulk rules for Oracle
Thank you very much for your contribution!
It would be great if we could strip our integrationtests and samples down to use the same database in the near future as I think this would greatly improve readability and overall clarity. Is there any chance you could do that? :-) |
I am responsible for performing the Oracle integration test ASAP ;) |
Hello @LGouellec Once again, thx a lot for your contribution, I really appreciate ! For now, please don't work to hard on tests, since I'm working on a new way to implement the tests for each provider. I will notify you when it will be available. Can't wait to publish a new version of |
Hello, With pleasure, community is there for that :) ! I also implemented the Bulk part on Oracle, but I have disabled it because the stored procedures are not as good as in SQL Server. So I preferred to use the unitary part for now. I will try to do a little bit of unit testing on my part soon. At your disposal for the rest of the events :) |
Hello @LGouellec I spent a lot of time to implement a brand new test project, with a different approach. You should look into it, it should be A LOT easier to implement the Oracle tests. I wrote a Wiki on it. It's a work in progress, so let's continue the discussion here, and please let me know everything you did not understand, and I will update the wiki. Unit tests project: How it works Sebastien |
Wow - this looks cool! In your sample integration test |
You're right, One test could failed potentially for some reasons, bad For instance, the SqlServerFixture is running only on tcp with a sql client, on tcp with a mysql client and on http with sqlite (just an example) : Enable some properties on SqlServerFixture public override bool EnableSqlServerClientOnTcp => true;
public override bool EnableSqlServerClientOnHttp => false;
public override bool EnableMySqlClientOnTcp => true;
public override bool EnableMySqlClientOnHttp => false;
public override bool EnableSqliteClientOnTcp => false;
public override bool EnableSqliteClientOnHttp => true; Eventually my advice is to create your Something like that, I guess: public class OracleFixture : ProviderFixture<CoreProvider>
{
public override string DatabaseName => "OracleAdventureWorks";
public override ProviderType ProviderType => ProviderType.Oracle;
public override bool EnableOracleClientOnTcp => true;
public override bool EnableOracleClientOnHttp => false;
public override bool EnableSqlServerClientOnTcp => false;
public override bool EnableSqlServerClientOnHttp => false;
public override bool EnableMySqlClientOnTcp => false;
public override bool EnableMySqlClientOnHttp => false;
public override bool EnableSqliteClientOnTcp => false;
public override bool EnableSqliteClientOnHttp => false;
public OracleFixture()
{
}
public override CoreProvider NewServerProvider(string connectionString)
{
return new OracleSyncProvider(connectionString);
}
} |
Ok I see... this is not really optimal, but at least writing tests is way more efficient! 👍 |
d93993d
to
8a066c0
Compare
d9cd030
to
472d451
Compare
Hey @Mimetis, Is there any chance that this will be merged? 😅 |
No wayt, this PR is too old ;) |
No description provided.